The code should be simple to fix, I looked at this when it was first raised in pluto.
When 5a is received it signals that event data is waiting in the incomming buffer. A solution would be to make two modifications. The first is to poll the CM11A on a regular basis and check for the byte 5a, if found then call a receive event and pass the results to dcerouter. The second modification is to modify the send routine to also call the receive event routine if the checksum fails and the returned checksum is 5a.
If I get a development environment setup on LMCE then I will see what I can do as the modifications should not take too much effort.
NOS