VaComm1 works but VaComm 2 does not

I have a device that receives codes via USB using VaComm2 from TMS ASync.
I can use sscom32E to send “” to the device and I see a double blink on a LED.
The first blink is from Serial.available and the second is from a valid code being received.

My application has two TVaComm components, VaComm1 communicates with a device and it works.

The VaComm2 won't communicate with the second device described above that is confirmed to work by sscom32E.

VaComm1 works so I am using the component correctly.
I have deleted VaComm2 and dropped the component again and configured it.

Vacomm2.GetComPortNames(sl); puts the detected com port into a ComboBox.

VaComm2.Open; and VaComm2.Close; work because they are confirmed in
procedure TForm1.VaComm2Close(Sender: TObject);
and
procedure TForm1.VaComm2Open(Sender: TObject);

VaConfigDialog1 confirms the port parameters are correct.

The codes are sent by variations of
try
VaComm2.WriteChar('<');
VaComm2.WriteChar('B');
VaComm2.WriteChar('V');
VaComm2.WriteChar('>');
except
end;

I have also tried
tStr:='';
form1.VaComm2.WriteText(tStr); // This is what VaComm1 uses for AT codes.

So it seems like the VaComm2 connection should be ok but I don't even see the first LED blink for Serial.available, which means nothing was sent. VaComm2.WriteChar('<'); should blink it.

Can you think of anything that would prevent it from working?

It seems like VaComm will work with an Arduino Nano but not with an Arduino Nano 33 BLE.

We do not have these devices here for testing. It is unclear why one instance of VaComm would work and the other not. Are you 100% sure you did setup the serial port config (baud / parity / stop bits etc...) correct?
Are you 100% sure not other app is using this COM port that you expect VaComm2 to work with?