SAMD21 Pro Rf LoRa GPIO not working

I have 2 SAMD21 Pro Rf LoRa modules with antennas and the given transmitter receiver sketch is working. I am trying to get a digital on off signal working (specifically D2 on the board) but its not working. The onboard LED on PA13 works but no other (D2, D3, D4, D5, A0, A1, A2, A3, A4) GPIO is working in output mode. I see this problem on both boards so I must be doing something wrong. I am using PlatformIO on VScode but also tried to use Arduino IDE following the sparkfun guide but no luck. Any help is appreciated.

#include <Arduino.h>
#include <SPI.h>
//Radio Head Library:
#include <RH_RF95.h>

// We need to provide the RFM95 module’s chip select and interrupt pins to the
// rf95 instance below.On the SparkFun ProRF those pins are 12 and 6 respectively.
RH_RF95 rf95(12, 6);

int LED = 13; //Status LED is on pin 13

int rs485pin = PIN_PA14;
bool pinState = false;

int packetCounter = 0; //Counts the number of packets sent
long timeSinceLastPacket = 0; //Tracks the time stamp of last packet received

// The broadcast frequency is set to 921.2, but the SADM21 ProRf operates
// anywhere in the range of 902-928MHz in the Americas.
// Europe operates in the frequencies 863-870, center frequency at 868MHz.
// This works but it is unknown how well the radio configures to this frequency:
//float frequency = 864.1;
float frequency = 921.2; //Broadcast frequency

void setup()
{
pinMode(LED, OUTPUT);

pinMode(rs485pin, OUTPUT);
digitalWrite(rs485pin, LOW);
pinState = false;

SerialUSB.begin(9600);
// It may be difficult to read serial messages on startup. The following line
// will wait for serial to be ready before continuing. Comment out if not needed.
while(!SerialUSB);
SerialUSB.println(“RFM Client!”);

//Initialize the Radio.
if (rf95.init() == false){
SerialUSB.println(“Radio Init Failed - Freezing”);
while (1);
}
else{
//An LED inidicator to let us know radio initialization has completed.
SerialUSB.println(“Transmitter up!”);
digitalWrite(LED, HIGH);
delay(500);
digitalWrite(LED, LOW);
delay(500);
}

// Set frequency
rf95.setFrequency(frequency);

// The default transmitter power is 13dBm, using PA_BOOST.
// If you are using RFM95/96/97/98 modules which uses the PA_BOOST transmitter pin, then
// you can set transmitter powers from 5 to 23 dBm:
// Transmitter power can range from 14-20dbm.
rf95.setTxPower(14, false);

}

void loop()
{
SerialUSB.println(“Sending message”);

//Send a message to the other radio
uint8_t toSend = “Hi there!”;
//sprintf(toSend, “Hi, my counter is: %d”, packetCounter++);
rf95.send(toSend, sizeof(toSend));
rf95.waitPacketSent();

// Now wait for a reply
byte buf[RH_RF95_MAX_MESSAGE_LEN];
byte len = sizeof(buf);

if (rf95.waitAvailableTimeout(2000)) {
// Should be a reply message for us now
if (rf95.recv(buf, &len)) {
SerialUSB.print("Got reply: “);
SerialUSB.println((char*)buf);
//SerialUSB.print(” RSSI: ");
//SerialUSB.print(rf95.lastRssi(), DEC);
}
else {
SerialUSB.println(“Receive failed”);
}
}
else {
SerialUSB.println(“No reply, is the receiver running?”);
}
delay(5000);
if (pinState == false) {
pinState = true;
digitalWrite(rs485pin, HIGH);
digitalWrite(LED, HIGH);
}
else {
pinState = false;
digitalWrite(rs485pin, LOW);
digitalWrite(LED, LOW);
}
}

Please post the Arduino code that demonstrates this, and describe how you determined that this is “not working”.

Please use code tags (select code with mouse and use the <> editor button). You can also edit your previous post to add code tags.