Hello all,
I have been working hard to get my Piksi integrated with my Arduino Due. I am interested in reading the pseudo-absolute Latitude and Longitude of my rover Piksi over UART. I have been able to read in and print a stream of bytes with the code posted by Sven, however, I only ever receive one full message. By which I mean that I see many 0x55 preamble bytes followed by 2 bytes (almost always 0 then 1) and then two more bytes and then what should be a length indicator byte, and then another 0x55!
Shouldn't there be a payload of the length indicated by the 6th byte and a CRC before the next 0x55? Sometimes it sends even less (examples in the attached spreadsheet). Also the message types are almost always 0 and then 1, and 0x0001 isn't listed as a message type in the SBP documentation. Even when I do receive a complete message (with Sven's code) it's message type is a 5 and then a 2, and 0x0502 isn't defined either.
When trying the code posted by Matthias, I was optimistic about it having just the features I needed, but when attempting to print the incoming bytes, I get jibberish with lots of little squares. It also doesn't print anything for the specific messages (NED, LatLon, etc.) even when I remove the line to print all incoming bytes.
My hardware setup is just my laptop connected to the Arduino Due which has its TX2 and RX2 connected to a
SparkFun logic level converter on the low voltage side. On the high voltage side it connects to the Piksi. The Piksi is powered by and communicates with the same laptop so I can view the status. The base Piksi is standard (Piksi, antenna, radio, power supply).
Any help is much appreciated!