UPDATED: 2-15-2015 > Read through, with updates on the bottom
Although my GPS unit worked out of the box, I did want to connect to it and poke around, as well as see if I should configure it as suggested by CleanFlight.
I don’t own (yet) a USB to Serial converter (one is one the way), so I needed to use the Naze32 as my connection to the UBLOX.
I followed the CleanFlight instructions here to connect to my UBLOX. I am sharing my experience because sometimes Hydra can be a little cryptic with his instructions, particularly because he has so many different combinations of hardware and we are mere mortals.
- Unplug your Naze32 from your computer and connect the flight battery
- Once the Naze32 has initialized, connect your Naze32 with CleanFlight as you normally do
- Note your Com Port and and your Baud Rate setting
- My USB port connected to the Naze32 is COM 3 @ 115,200 Baud (this is important later).
- Here’s how my board is setup (SoftSerial) as prescribed by the instructions: https://github.com/cleanflight/cleanflight/blob/master/docs/Serial.md
- Note: In my previous post I am using the standard UART configuration (no SoftSerial). Since the GPS remains on port 3 and 4 this reference remains relevant even though it is using SoftSerial.
PPM RX, GPS and FrSky TELEMETRY via SoftSerial
MSP, CLI, GPS PASSTHROUGH on UART1
GPS on UART2
- Rx (yellow) on GPS to Tx on Naze32 Port 3 (top)
- Tx (blue) on GPS to Rx on Naze32 Port 4 (underneath)
TELEMETRY on SOFTSERIAL1
feature -RX_PARALLEL_PWM feature RX_PPM feature TELEMETRY feature GPS feature SOFTSERIAL set serial_port_1_scenario = 5 set serial_port_2_scenario = 2 set serial_port_3_scenario = 4 save
Follow the instructions on using the Naze32 as a passthrough:
- Open the CLI and type ‘gpspassthrough’. No save needed.
- You will a lot of “garbage” coming through the CLI. CleanFlight may seem to have locked up.
- You will also notice that the red GPS light is now rapidly flashing blue.
- Click “Disconnect” in CleanFlight. This might take a couple of minutes > be patient as the command is waiting in a queue, along with all the GPS data streaming in
- Open U-Center > Select COM 3 (that is what my particular port is). The default baud rate is 9,600. Select 115,200 Baud. All other baud rates failed to work on my computer
- You should see the graphical map on the right begin to light up with satellites, etc. (I am on the top floor of an apartment building – you may need to move your unit near a window to get access to the sky). In this picture I added additional graphical elements available and made them full screen.
- Note: I did not change any configurations as mine is working out of the box. It is possible that it is not an optimal configuration. I will look into these configurations at a later time.
Had any experience with this configuration or any questions? Please comment below!
I was re-reading this article with Dominic Clifton and wanted to take another look at my GPS unit and had an idea. I would set GPS_PASSTHROUGH baud rate to 57600, then connect to U-Center. I did this (make sure to set U-Center to communicate at 57600, down from 115200). It is completely subjective, but it seems that U-Center is much happier, updating more rapidly and is reporting 3D fix, etc. Last night was cloudy, so that could be it. The thought I had was that the baud rate is set too high, unnecessarily, at least for doing configuration using the Naze32 as the USB to Serial Converter.
Notables about the article compared to my config:
- my setting: gps_auto_config = 1. It looks like the autoconfig worked as these are settings from the Ublox:
- NAV Mode = set to Pedestrian, as per spec in the GPS reference docs for CleanFlight
- PRT = Baud rate = 57600 (equals what I set my baud rate to in Naze32 – note that gps_baudrate and gps_passthrough_baudrate are two different things. The former is used exclusively as the baud rate between the Naze32 and the GPS unit. The latter, gps_passthrough_baudrate, is only relevant when you are using your Naze32 as the serial port converter (I think I said this before).
- SBAS = set to WAAS (North America), as I manually configured it in CleanFlight