Update of Micro

I try to flash my simpleRTK2B Micro it starts and ends with error. I orderd two and one is working and the other wont flash. Flashing with version 1.13

Here is the log from the flashing:

The packet its failing from is not the same, new packet every time.

Using a AiO 4.1 board to connect to the micro. Tried both spots on 2 boards. Controlled the voltages before i connected the GPS module.

Is one of my micro’s broken, or can i do something?

  1. The modules ship with 1.13 firmware, so you don’t need to change the firmware. 1.13 is the best firmware for AOG.

  2. I have 5 micro F9P’s and two of them also had problems with flashing firmware when using an AIO board. I had similar symptoms that you did, where the update seems to start but the process fails, in a different spot each time. I was eventually able to resolve this issue on both and they have updated firmware fine ever since.

  3. Please don’t bother ArduSimple with this until we’ve exhausted all troubleshooting options. They allow us group buy rates because they do not expect to support each customer individually.

Some things to try/be aware of:

  • The AIO board is designed to work from a 12v power source which powers all aspects of the board. Connecting a USB plug to the Teensy may back-feed some components if you have not cut the trace on the Teensy, don’t rely on that power. Cut the Teensy trace. Power the board from 12v.
  • Try a different USB cord, try a different USB plug, remove any in-between USB hubs.
  • The AIO USB plugs aren’t great.

Solution 1
One of the Micro F9Ps I was able to eventually update using the AIO board with USB plug. It took a bunch of attempts. I tried different baud rates and a lower baud rate setting in UCenter eventually worked.

Solution 2
The F9P IC has USB connection pins and UART serial connection pins. The firmware and settings can be uploaded/downloaded through either USB or serial, but the AIO board uses the USB connection. If you search online you will find that this firmware update over USB problem is common for the F9P (not just the ArduSimple Micro F9P, but the UBLOX F9P IC itself) and that a solution is to update over the serial connection instead. This solution worked for me.

But how to make a serial connection between your computer and the F9P? There are many different ways.

Serial Solution 1
The Teensy 4.1 is able to act as a USB-Serial interface. The AIO board connects the F9P serial pins to the Teensy serial pins. So you’ve got all the hardware you need and you don’t need to wire anything, you just need a little bit of code.

  • In the Arduino IDE go to File->Examples->Teensy->USB_Serial->USBtoSerial
  • Change the HWSERIAL and the baud rate. User Serial2 for the Left position and use Serial7 for the right position. I used a baudrate of 115200, but my F9P wasn’t fresh out of the box. You might have to use a serial rate of 460800 for an F9P that’s fresh out of the box, I’m not really sure. Then upload the sketch to the teensy
  • With the USB plug plugged into the Teensy, you should now be able to select the COM port in UCenter and connect to the F9P, with the Teensy acting as a USB-Serial bridge.

Serial Solution 2
Use an Xbee USB adapter board like this: MiniUSB Carrier Board for XBee Plugins for XBee radios - ArduSimple
This board contains an FTDI chip which interface USB to serial. The pinout of the Xbee is the same as the pinout for the F9P for power and serial.

Serial Solution 3
Use a USB-FTDI converter like this: https://www.aliexpress.com/item/1005002400911128.html
These are a few dollars online and common at electronics stores. Make sure that you use the 3.3v setting, 5v will damage the F9P.

Other
In my case I have random circuits laying around that give me more options.

This board has a better USB connector and makes it possible to stick the micro F9P on a breadboard to make a breadboard serial connection. Its also a neat little board for troubleshooting and for using as a mobile GNSS receiver: GitHub - WildBuckwheat/SimpleRTK2B-Micro-breakout-board: A small break out board for the ArduSimple SimpleRTK2B Micro

With this board (my base station), I am able to connect to the Micro F9P’s serial port with the Pi acting as an ethernet-serial bridge using the Linux socat function. I can update my firmware from desk while the F9P stays on the chimney: GitHub - WildBuckwheat/simpleRTK2B-Micro-Hat-for-Raspi: Connect your ArduSimple simpleRTK2B Micro F9P to a Raspberry Pi using this small adapter PCB

Thanks for tips. I got it upgraded with a USB-FTDI.

1 Like

That’s great to hear. May I ask what the baud rate was?

The reason for my question is: not everyone has a USB-FTDI. If I know the baud rate then next time I could direct someone to use the Teensy as a USB-Serial interface.

For anyone that landed here from a search in the future and has tried everything and is still stuck, there is one more thing to try: safeboot. You’ll have to read the UBLOX documentation on how to use it. There’s a test pad marked ‘SFB’ on the micro.

1 Like

I selected 115200 in U-Center and it woked. But i guess it started on 9600 because it was in the commandline for the flashing.

 -p STDIO -b 9600:9600:115200 --no-fis 1 -s 0 -t 0 -v 1 "C:\Users\Bullhill\Downloads\UBX_F9_100_HPG_113_ZED_F9P.7e6e899c5597acddf2f5f2f70fdf5fbe.bin"
1 Like