I have a Pro Micro I have been trying to hookup to my Ham Radio Transceiver. In order to do this I have used a MAX-3232CES, taken the output from the radio and ran it through the MAX3232. The output from that has been patched into the RX1 pin of the Arduino. The radio sends data enclosed in a header which starts with ‘FF’ ‘FF’.
When the radio starts sending on the Arduino all I do is:
void loop()
{
while(RIG.available() > 0)
{
unsigned int val = RIG.read();
Serial.println(val, HEX);
}
}
As far as I can tell the packets from the radio are the correct length, baud rate set correctly (9600) but the actual output doesn’t match. The above code outputs:
80
80
for the the first two bytes of the header, instead of:
FF
FF
None of the data from the radio seems to match…Anyone have any ideas? The radio works fine when connected to the laptop.
PROBLEM #2:
Connecting the output from the MAX3232 to the TX0 on the Arduino causes the input to stop working.
Check the rest of the async parameters. A lot of radios use 2 stop bits (Kenwood for sure).
Also check to make sure the radio data isn’t logically inverted, ie TTL low for a data bit of 1. I think the Kenwoods were big on this too, at least the older ones.
sorry for the late reply… Work got in the way of fun.
The radio is an IC-7000 and an IC-718. Icom’s are negative biased on the line. Someone else in another forum said the Pro Micro needs TTL inputs, not RS-232 - that would explain something…
mtatro:
Someone else in another forum said the Pro Micro needs TTL inputs, not RS-232 - that would explain something…
Aaaaah yes, pretty much any MCU works only within it's supply voltage. I'll opine most people read your OP as using the MAX3232 to translate EIA-232 signals into TTL serial. That's both a voltage level change and a logic inversion. Why don't you make and post a simple diagram of how you have things connected, that way people won't be guessing and assuming.