I'm having a problem with my CC430f5137 where under certain conditions I appear to miss the first two bytes of the message.
My RF code currently works by waiting for a sync word and then reading interrupting every time the fifo fills with 4 bytes, retrieving the 4 bytes and processing them and then continuing until the full message has been received. Once the message is received the receiver turns off processes the request and then starts again, the turn around time is in the order of around 70us. This works fine under most circumstances.
However when the other end changes the rate it sends messages from once every 2.5 seconds to once every second. My end fails to decode the message correctly, break pointing in the code has reveled that the first 4 bytes downloaded from the RXFIFO are actually bytes 3-6 meaning that bytes 1 and 2 have gone missing.
The data rate is exactly the same and even the contents of the messages are almost identical (there is a one bit difference).
This bug is very repeatable but I can't figure out why changing the rate I receive messages would cause the receiver to miss 2 bytes. If any one has any suggestions it would be appreciated.
edited for clarity