F9P and Arduino Uno/Mega Issues with Serial Monitor

Q&A forumCategory: QuestionsF9P and Arduino Uno/Mega Issues with Serial Monitor
Ben Harrington asked 7 months ago
Hi,

I’ve been working with ArduSimple’s RTK2B boards for the last month an a half now. For some reason, I cannot figure out how to get the GNSS data to be sent to my Arduino.

I have tried the boards as shields and also by connecting jumpers between the boards. I’ve used three different RTK boards and three different arduinos (one uno, two megas). I am confident this isn’t a hardware issue. I can connect the ardusimple boards to my computer and get GPS data in u-center. They update every second, like they should, but I can’t seem to figure out how to get the data to my arduino.

-I have tried using SoftwareSerial on both the Uno and Megas.
-Tried plugging the TX/RX on the ardusimple into various Serials on the Megas.
-I made sure in CFG-PRTS UART1 baudrate matches my arduino baudrate.
-In CFG-MSG, I have UART1 on for various messages. 
-Connected and disconnected by XBee radios.
-Tried many tutorial codes. Right now I am going simple and am doing a if(Serial1.available()) Serial.write(Serial1.read());

-Serial communication works between the two Megas. They can talk to each other.
-There’s nothing showing up on the serial monitor. No boxes or weird characters. Just silence.
-The ardusimple boards are getting a GPS fix. The LED flashes every second and u-center is getting a signal from ~30 satellites.
-Run through the Q&A forum and read the majority of the questions and answers.

I’m pretty lost at the moment. Not really sure where to go from here. I’m just looking for the data to be sent to the arduino, then the arduino will package that up with some other sensor data and send it to another device.

Any pointers and discussion is greatly appreciated.

Thank you.

root
Staff replied 7 months ago

Did you connect IOREF pin to 3V3_OUT?
If not do it, otherwise the board will not output anything on the UART pins.

1 Answers
clive1 answered 7 months ago
Make sure IOREF is connected otherwise the RX/TX pins will have no signals.
I’m from the 3.3V ARM side of the tracks, I’ve used these boards with DUEs, AdaFruit Grand Central M4, assorted MKR and Nano boards, and RPi Pico.
>>if(Serial1.available()) Serial.write(Serial1.read());
In all honestly I don’t think the byte at a time method has sufficient bandwidth, and Software Serial is not something I’d waste a lot of time one.
 
Simple Forwarding
https://github.com/cturvey/RandomNinjaChef/blob/main/NANOIOT33_ArduSimpleRTK2B.ino
 
Simple NMEA
https://github.com/cturvey/RandomNinjaChef/blob/main/NANOIOT33_ArduSimpleRTK2B_NMEA.ino
Ben Harrington
replied 7 months ago

Good grief man, you’re amazing. This is great. I had the IOREF connected to 3.3V, so as you said, a byte at a time must not have been fast enough.

Thank you.

For future folks, I fiddled with the baudrate a little. Found my Ardusimple baudrate in the Message View -> UBX – CFG – PRT, Target 1 – UART1. I used Clive’s Simple Forwarding and it worked perfectly.

When using the Ardusimple in shield mode, I needed to connect a wire from Ardusimple TX1 to RX1 on my mega. When the shield is off, Ardusimple IOREF needs to be connected to 3.3V as well as the TX1 to RX1 on the mega.

Want to learn more about GPS/RTK?

1. Our engineering team will contact you to solve any questions
2. We will keep you updated about promotions and new product releases
3.You will only hear from us when we have important news, we won’t spam your email