liamhays / ublox

Flipper Zero u-blox GPS app
GNU General Public License v3.0
15 stars 2 forks source link

ublox

Flipper Zero connected to a u-blox GPS, running the u-blox app

Flipper Zero app to read from a u-blox GPS over I2C. This app can display data, log a path to a KML file, and sync the Flipper's time to GPS time. Get the app and see more info on the Flipper app hub!

For feature requests or bug reports, open an issue on this repository.

Usage

This app is compatible with GPSes that follow the UBX protocol version 15, so it is definitely compatible with 8-series GPSes, and probably 9 and 10-series too. I've only tested the app with a u-blox SAM-M8Q module from SparkFun.

Wiring

Connect your GPS to the 3V3, GND, and I2C pins on the Flipper. If you have a Qwiic GPS and a cable, these are the colors:

Qwiic color Flipper pin
Red 3V3
Black GND
Blue C1 (SDA)
Yellow C0 (SCL)

Tested GPS models

Features

Handheld data display

This app offers two forms of data display: handheld and car. The handheld displays more info:

u-blox app handheld data display

All fields that can be localized will be converted to imperial or metric units, depending on what you've set in Flipper's Settings.

The log button (accessed by the right-hand button on the d-pad) indicates the logging state.

Car data display

u-blox app car data display

The car data display only displays 3 fields, in big numbers. You could in theory use it while you're driving (but place it on the dashboard or something, don't let the Flipper become a hazard).

Data display config

Press the left button on the data display to open the configuration panel.

Logging

Press the right button on the data display to start logging. You'll be prompted to input a filename, and then logging will start. Files are saved to apps_data/ublox on the SD card. The app logs to KML format, and you can view them with a tool like this one. Press the right button again to stop logging.

You cannot configure the GPS during logging, and leaving the data display will also stop logging. If the GPS disconnects or becomes unreachable, logging will stop and all data will be saved. The log file is flushed every 16 writes in case a disk problem arises.

Data points are only added to the KML file if the GPS has a fix, including a dead reckoning fix.

Time synchronization

u-blox app time synchronization display

This will synchronize the Flipper's time to the GPS's time. This doesn't touch the hour, so that your timezone is preserved, but syncs the minute and second. The Flipper's clock will be up to one second off, because there's no pulse-per-second signal.