Corrupt serial characters when OFF programming cable


I have an odd problem with corrupt characters being read from the serial port
(using serCgetC() from RS232.LIB).

When running the program attached to DC via the programming cable, all
characters are 100% ok. However, then run with the cable disconnected, I get a corrupt character right in the middle of a specific string (actually when
receiving the sending telephone number of an SMS message).

The odd thing is that the same character is always corrupt, every time. I
thought it may be a memory hardware issue, but I have tried this on a completely different board/cpu/modem and the problem is the same.

Any help would be appreciated in trying to track this down.

Tech Details:
Rabbit 2020
DC 8.3
Device connected to serial line, Telit modem


All I can really think of is that your serial buffer overflows. You can attempt to service it faster/more regularly, or try increasing the serial buffer size.

I will check the buffer size, but I believe it is sufficient. The SMS message coming in is approx 200 bytes where the buffer is set to 512 bytes.

What I can’t understand is why it works with the programming cable attached and does not work without it. Something to do with the DC debugging interrupts perhaps.

Another thread has suggested grounding between the modem and rabbit. Again I am pretty sure the grounding is good.

Will get back to you once the buffer size have been checked/varied