Facet RTK frozen and can't reboot

I just got a SparkFun Facet RTK Bathylogger version from eBay. It was barely used and seems to be in great condition. It got satellites and I was able to log into it through wifi and start doing my setup. But then I was navigating through the menu using the power button and it froze on “Rover”. I tried holding the power button for 30 seconds and 1 minutes and it won’t restart. I left it plugged in to USB all night to keep it charge so the battery wouldn’t run down to 0, and this morning it’s still stuck on Rover. How can I reboot it?

I Googled and found mention somewhere about an external reset switch through a 2 pin connector, but I don’t have a 2 pin connector. Do I need to open it up and unplug the battery?

Hey jplgis,

Strange behavior indeed. I vaguely remember seeing a similar problem with older firmware version. To start with, we’ve seen some issues related to the SD cards that BathyLogger includes in their kit. If it has an SD card, remove it (bonus points if you insert it into your computer and report back about what’s on it / what format it is! We haven’t been able to get ahold of one to figure out what’s going on.) There is a chance that removing/replacing that SD card will fix all issues.

There are three possible ways to force a reset (I would try them in the order I have listed):

  1. Serial Terminal

  2. Hardware power button

  3. Disconnect battery

Serial Terminal: connect the Facet to your computer via USB, open a serial terminal, and see if you can connect to it that way. If you can get a serial connection, you can force a reboot.

Instructions for how to get a serial terminal running: https://docs.sparkfun.com/SparkFun_RTK_ … nal-window

Hardware power button: It is located inside the housing on the display board, just behind where the power button sits. The electronics inside are robust (you won’t damage the electronics by opening the unit), but the ribbon cables are a bit fragile. All you need is a skinny, long neck Phillips head screwdriver (I think it’s a PH0 or PH1 size, but don’t hold me to that). Gently work the black silicone sock off of the top, remove the four screws, then apply light pulling pressure on the two halves of the clamshell, and it will pivot at the front of the device and open. I’m not sure what else BathyLogger does to these units as far as sealant goes, so there may be extra steps that you can ask them about. Once the unit is open, you’ll see a small brass nub sticking out of the display board towards in interior of the device, in-line with the external power button. Use a finger or something else non-conductive to give it a light press; it should give a little click in response. If this doesn’t have an effect, press and hold for about 6 seconds. If this solves your problem, you likely have a bad power button; if that is the case, reach out to BathyLogger for replacement.

Disconnect battery: As a last resort the battery can be unplugged. This requires disassembling all the big components; I think it took me about 15 minutes the first time I tried it. It is not super difficult, just taking out screws, disconnecting ribbon cables (make sure to flip up the black plastic lock on the backside of the connectors; the ribbon cable will be completely loose when those are flipped up), and setting components aside as you disassemble (there is no need to remove the screen or display board, just disconnect the black ribbon cable going to it). Excluding the battery disconnect, nothing should take much force. The last thing you’ll have access to is the battery connection to the receiver board. That connector takes more muscle to remove than anything else (by design!). I’d recommend some serrated needle nose pliers; pinch the male end of the connector going to the battery, gently wiggle it while pulling, it’ll come loose after a second or two.

Pictures and documentation about what each thing is, how it connects, etc, can be found here: https://learn.sparkfun.com/tutorials/sp … e-assembly

Thank you! The brass button worked. A quick press and a 6 second press didn’t reset it, but I tried about 30 seconds and that worked.

Then when I started it up again, it said “Charge battery” so apparently while frozen it doesn’t charge. The SD card didn’t come with it, I just used a regular Sandisk high speed microSD. There is a 261 kilobyte UBX file and I tried opening it in Emlid Studio but it won’t open. I’ll try RTKLib and see what it contains and whether it was logging while frozen

That’s awesome! Hmm that does indicate that the membrane button may be bad, but doesn’t explain why it was frozen. I will say that microcontrollers do weird things when they aren’t being supplied with enough voltage; they can get stuck in boot loops, or “brown out” when trying to toggle peripherals. It’s possible that it was right at that threshold. Please get it fully charged up, and let us know if you run into any other quirks! I highly recommend a firmware update as well; it may have been quite a while since that unit got an upgrade, and we’ve continued to improve the firmware over time.

The UBX file is created by the Facet; it contains a lot of binary data generated by the ublox ZED-F9P GNSS receiver chip on-board. You can view those files in UCenter: https://www.u-blox.com/en/product/u-center

Very interested in hearing about the frozen logs!

I’ve locked up the MCU many times while smoke testing the RTK Firmware on my bench.

The SparkFun RTK Firmware Uploader tool has always been a quick recovery for me, by using “RESET ESP32”.

https://github.com/sparkfun/SparkFun_RT … e_Uploader.

Just thought I’d mention it here… a really handy tool all around.

rftop:
I’ve locked up the MCU many times while smoke testing the RTK Firmware on my bench.

The SparkFun RTK Firmware Uploader tool has always been a quick recovery for me, by using “RESET ESP32”.

https://github.com/sparkfun/SparkFun_RT … e_Uploader.

Just thought I’d mention it here… a really handy tool all around.

Thanks, so you’re saying this will force it to reboot even though it’s frozen?

Yes, It’s worked for me many times. I assume it’s the same/similar as using a Serial Terminal.

It’s a clean GUI for uploading FW also :slight_smile: