GPS-RTK2 Broken Serial Port

For reference, these are the boards I am referring to: GPS-15136 https://www.sparkfun.com/products/15136

We have recently purchased two of the above GPS-RTK2 boards. Both boards arrived fully functional with no problems. No modifications were performed on either board.

One day I was working with both boards plugged into my laptop’s docking station doing general configuration using u-center. I un-docked my laptop and proceeded to unplug both GPS RTK devices.

The next time I plugged the devices back into the USB ports, I was unable to initialize a serial connection in u-center or any other serial interface (I am using the correct COM port and baud rate of 9600). The device still enumerates and is assigned a COM port. The drivers are correct (USB SERIAL DEVICE). I am still able to send and receive commands via I2C.

After some testing I discovered that if I put my computer to sleep, turn it back on + log in, then I can connect to the device for ~10 seconds. Looking at the package console in u-center, we can see that I am receiving serial data. A snippet of the data looks like this.

18:18:09 R → NMEA GNTXT, Size 37, ‘Text Transmission’

18:18:10 R → NMEA GNRMC, Size 36, ‘Recommended Minimum Specific GNSS Data’

18:18:10 R → NMEA GNVTG, Size 21, ‘Course Over Ground and Ground Speed’

18:18:10 R → NMEA GNGGA, Size 42, ‘Global Positioning System Fix Data’

18:18:10 R → NMEA GNGSA, Size 47, ‘GNSS DOP and Active Satellites’

18:18:10 R → NMEA GNTXT, Size 35, ‘Text Transmission’

18:18:10 R → NMEA GNTXT, Size 37, ‘Text Transmission’

18:18:10 R → NMEA GNTXT, Size 37, ‘Text Transmission’

This led me to believe that the serial port on the ZED F9P was actually functional but the ESD protection IC was damaged. According to the datasheet the PRTR5V0U2F is an ESD protection IC consisting of a network of diodes and a 5.5V Zener diode to clamp the supply voltage to 5.5V.

Measurements were made using a multi-meter in diode mode. The diodes between pins 2 and 6, 1 and 5, 2 and 4, 3 and 5 all behave normally with a forward voltage drop of ~0.7V and an open circuit condition in reverse bias. However the Zener clamping diode, with a reverse breakdown voltage of 5.5V yielded incorrect values. The diode has a forward voltage of 0.57 V (totally fine, but not important in this scenario) and a reverse breakdown voltage of 1 V. This measurement leads me to believe that the protection circuit is interfering with the serial data which would make sense since I can receive broken serial data from the port.

Is there any chance this is covered under warranty? Like I mentioned earlier, we have not modified the boards or performed any rework and the problems arose under normal use conditions.

Thanks in advance!

Hi there,

I’ve also encountered a similar problem with one of my GPS-RTK2 boards being unable to connect to u-center after attempting to update the firmware. Is u-center giving you a specific error?

If I remember correctly, resetting the board to its default configuration seemed to fix the problem. Based on the experiences of Ardusimple simpleRTK2B users, the ZED-F9P can oftentimes become “bricked”, requiring one of the following workarounds:

https://www.ardusimple.com/question/sim … mplertk2b/

https://www.ardusimple.com/simplertk2b-hack-2/

https://www.ardusimple.com/simplertk2b-hack-3/

Cheers,

Adam

Hi Adam, thanks for the response but none of these solutions worked for me.

Since the serial port is broken, I am unable to initialize a serial connection, let alone upload new firmware to the board.

Thanks.

Hi,

You mentioned in your post that:

After some testing I discovered that if I put my computer to sleep, turn it back on + log in, then I can connect to the device for ~10 seconds.

Now that I think about my problem more, I believe what happened is that my GPS-RTK2 board was stuck in a reboot loop. As I had two GPS-RTK2 boards, I discovered that if I connected the working board to u-center, I could quickly hot-swap the USB-C connector to the broken board and I’d be able to see the the packet/binary data flowing over the serial port. This is what allowed me to see the GNTXT messages that provided the information I needed to confirm that it was stuck in a reboot loop.

While it’s unfortunate if the zener diode was faulty, I’m curious to know, did the GNTXT messages you received provide any other error information?

Cheers,

Adam

The packet console in U-center provided no further information other than ‘Text Transmission’ but if I open the serial connection through PuTTY I can see that the text transmission is actually an error message “GNTXT,01,01,01,NMEA unknown msg*46”. I googled the error message and came to the conclusion that the serial port was shorted out causing garbled data.

I am able to conenct to the board using the UART1 Rx/Tx pins (shared with SPI pins) as well as through I2C so I doubt that there is any physical damage to the ZED F9P. I may try replacing the ESD protection circuitry on the USB port.

Thanks for your reply,

Good to know for future users that may encounter this problem. Here’s hoping SparkFun can provide some assistance and/or a replacement!

Cheers,

Adam

Thank you for your help Adam. Hopefully I can get an RMA since this damage occurred under normal operating conditions. In case that fails, the replacement parts are available from Digikey for a relatively low cost :smiley:

Same here. How did you solve your problem? This is what my unit outputs on each boot:

??:??:?? $GNTXT,01,01,00,ldr slv baud*50

??:??:?? $GNTXT,01,01,02,u-blox AG - www.u-blox.com*4E

??:??:?? $GNTXT,01,01,02,HW UBX 9 00190000*12

??:??:?? $GNTXT,01,01,02,EXT CORE 1.00 (61b2dd)*68

??:??:?? $GNTXT,01,01,02,ROM BASE 0x118B2060*20

??:??:?? $GNTXT,01,01,02,FWVER=HPG 1.12*5D

??:??:?? $GNTXT,01,01,02,PROTVER=27.11*1D

??:??:?? $GNTXT,01,01,02,MOD=ZED-F9P*71

??:??:?? $GNTXT,01,01,02,GPS;GLO;GAL;BDS*77

??:??:?? $GNTXT,01,01,02,QZSS*58

??:??:?? $GNTXT,01,01,02,ANTSUPERV=*22

??:??:?? $GNTXT,01,01,02,ANTSTATUS=DONTKNOW*2D

??:??:?? $GNTXT,01,01,02,PF=FFF79*30

??:??:?? $GNTXT,01,01,01,exception 0x00130905 has occurred*20

??:??:?? $GNTXT,01,01,02,Starting GNSS*5A

??:??:?? $GNRMC,V,N,V*37

??:??:?? $GNVTG,N*2E

??:??:?? $GNGGA,0,00,99.99,*56

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,1*33

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,2*30

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,3*31

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,4*36

??:??:?? $GPGSV,1,1,00,1*64

??:??:?? $GPGSV,1,1,00,6*63

??:??:?? $GLGSV,1,1,00,1*78

??:??:?? $GLGSV,1,1,00,3*7A

??:??:?? $GAGSV,1,1,00,7*73

??:??:?? $GAGSV,1,1,00,2*76

??:??:?? $GBGSV,1,1,00,1*76

??:??:?? $GBGSV,1,1,00,3*74

??:??:?? $GNGLL,V,N*7A

??:??:?? $GNRMC,V,N,V*37

??:??:?? $GNVTG,N*2E

??:??:?? $GNGGA,0,00,99.99,*56

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,1*33

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,2*30

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,3*31

??:??:?? $GNGSA,A,1,99.99,99.99,99.99,4*36

??:??:?? $GPGSV,1,1,03,02,33,24,39,25,37,1*6A

??:??:?? $GPGSV,1,1,00,6*63

??:??:?? $GLGSV,1,1,01,44,1*79

??:??:?? $GLGSV,1,1,00,3*7A

??:??:?? $GAGSV,1,1,00,7*73

??:??:?? $GAGSV,1,1,00,2*76

??:??:?? $GBGSV,1,1,00,1*76

??:??:?? $GBGSV,1,1,00,3*74

??:??:?? $GNGLL,V,N*7A

Hello 3DT_BW,

Can you provide more details on your setup conditions? Are you using U-Center or with a microcontroller using the Arduino IDE? Are you operating inside a building or outside/near a large window for sufficient line of sight?