I updated the firmware for my SimpleRTK boards this evening. Below are my notes for the process in case I need to do it again. There was some obscure information I had to hunt down to get things working right, and I’m linking to it here so it will be available in the future after I’ve forgotten.
- Download the latest firmware from the u-Blox website. As of this writing, HPG112 appears to be the latest and greatest. Save it to your computer to a place you can get to it.
- Open up u-Center, u-Blox’s GNSS evaluation software.
- Connect the GNSS module you want to update to your computer via USB cable. Connect to the appropriate COM port within the u-Center software by going to Receiver > Connect.
- Within u-Center, go to Tools > Firmware Update. Navigate to the location of the firmware .bin file and check the boxes as shown below.
The settings I used at the advice of the ArduSimple website. - In the lower left of the Firmware Update Utility window, there should be a green Go button. Click it to update the module.
- Repeat this process for the second ZED-F9P module.
- I reset the configuration files for both modules to the default provided by ArduSimple. You can find those configuration files on their GitHub page. Download both and save them to a location you can get to. I have the LR xBee radios, so I used their srtk2b_rover_FW_HPG112.txt and srtk2b_base_FW_HPG112.txt files.
- To upload a configuration file, go to Tools > Receiver Configuration.
- Before you upload the configuration files, it’s not a bad idea to back up the existing ones. Use the Transfer GNSS > File button to create a backup.
- To upload a new configuration file, select the appropriate configuration file for either the base or rover module you’re connected to and use the Transfer File > GNSS button.
The Receiver Configuration window. Save a back up of your existing configuration, just in case! - I got a warning that said the firmware version of the module didn’t match the configuration file. I took a gamble and ignored this message. Things turned out okay, as of this writing.
- Repeat this process for the second module.
- Unfortunately, after updating the firmware and the configuration files, the xBee radios weren’t working. I found this thread on the ArduSimple website to be helpful. Basically, after you upload a configuration file, you have to save the configuration. It doesn’t do so automatically.
- To save the configuration, you need to go View > Configuration View, and then click on the CFG option in the left panel on the screen.
- There should be a radio button labeled Save Curent Configuration. If it’s not selected, select it. Then click Send in the lower left of the window. This will send a save command to the module.
- Take the modules outside and test them. I connected both to my laptop so I can toggle between the two in u-Center to make sure the base module reports TIME and the rover module reports 3D/GNSS/FIXED in the black window that has the latitude, longitude, and altitude shown.
- If you don’t see TIME on the base, you’re not sending RTCM correction messages to the rover. On the ArduSimple modules, the GPS > XBEE or XBEE > GPS LEDs should blink on both modules if the base reports TIME.
- To make sure corrections are being broadcast form the base and received by the rover, I went to View > Messages View and then click UBX > NAV > RELPOSNED. There should be a length in that window that should roughly match the distance between the antennas.
I also discovered that in order to set the survey in or fixed location of the base, you need to go to View > Generation 9 Configuration View and then select the Advanced Configuration option on the left of the screen. Under the CFG-TMODE option you can set the base behavior.
If you want to set fixed coordinates for the base you need to change CFG-TMODE-MODE to E1 – 2 – FIXED and then plug in either the north, east, down (NED) or latitude, longitude, and height (LLH) values for the base location. u-Center requires you do provide it with LLH in 1e-7 degrees, so 12.3456789° is 123456789 in the value field.
I cannot express enough how frustrating it is that Ardusimple’s documentation is lacking and the fact they expect you to read all the Ublox documentation to figure it out. I spent many hours trying to figure out how to get headings to work. That was last year, I just picked the project up again after 6 months and I was struggling to remember all the details I had learned last year. Your blog post couldn’t be any more timely. The real key to most of the confusion is the steps needed to save the configuration. u_center is a bit of a throwback to utility programs from the 90’s and it daunting to use, even more so for the average drone builder.
I am going to dive in again today and see if I can get these expensive boards to give me some GPS headings….
Thanks so much for the post.
LikeLike