I am trying to read the output stream from a Reach RTK to be read by a microcontroller.
I have set up two streams, one to my phone over bluetooth and another to the mictrocontroller over UART.
Both methods output data but the UART stream is unreadable.
The UART parameters on the microcontroller are:
baudrate = 57600 (also tried 115200)
bits= 8
parity = None
stop bits = 1
I have tried reading in NMEA, ERB and LLH streams all with similar results. I believe my UART parameters are incorrect as I do get glimpses of the odd sensible string from the stream on very rare occasions.
Rover and Base Firmware: v2.21.2
P.S. ERB is not decoded by the bluetooth receiver correctly either? I presume this would require a custom decoder to solve?
Addendum: I am aware this question has already been asked here but I’m not interested in the ‘easy’ options
Ok, solved it. I have re-learned two lessons from this.
RTFM! (I eventaully read the RTKLIB manual)
UART is a 3 wire connection i.e. Connect the grounds!!
Ok, after that embarrasment, I have one questions left.
Does the Reack RTK expect an ACK over UART? If so, what is are the bytes it expects?
I ask because in Reach View the ‘Stream is off’ despite perfect comms.
There was a bug with incorrect stream status on this firmware version. May I ask you to update your device to the latest stable v2.22.0 and check if it works?
Reach doesn’t expect anything from the devices connected to UART, it’s just continuously streaming the data to this port.
I am now update to v2.23.2 and now have the opposite problem!
Reach is now showing “Connected to /dev/ttyMFD2” which is great but I’m not getting any reading through the UART. BT streaming works fine. The ‘connected’ indicator doesn’t go away even if I unplug the entire df13 connector (using for UART only, no power in). Is this default behaviour?
I’m worried that I have have damaged something with all my messing about (the device has seen some use over the years). Is there anything I could be missing? Thanks