The Teseo-LIV3 GPS module (as used in shabaz ' GPS / Galileo / BeiDou / GLONASS receiver) talks UART and I2C. I developed an OO driver and parser for it.
The Raspberry Pico port of that library is now ready for release 7.0.
GitHub 7.0 release with binaries
Main changes:
- library dependencies: git repository strategy change from submodules to CMake FetchContent.
- remove need for recursive git clone
- adapt to latest TESEO, NMEA and callbackmanager library versions
- extensive unit testing added: 42 tests
Check the release notes via the link above, for a full list of changes
This version of the project requires Pico SDK 2, CMake 3.28, GCC 14.2.1 and a build system that can manage modules. Ninja works.
Summary of Pico connections
Pico resources used only if you use I2C:
- I2C0
- SDA: GP16 (Pico I2C0 SDA)
- SCL: GP17 (Pico I2C0 SCL)
- baud: 100 * 1000
for I2C, SDA connects to SDA and SCL to SCL. The PCB that I use has the pull-ups for I2C.
Pico resources used only if you use UART:
- UART1
- TX: GP4 (Pico UART1 RX)
- RX: GP5 (Pico UART1 Tx)
- baud: 9600
- UART1 RX interrupt
for UART, RX connects to TX and vice versa
Pico common resources:
- RESET: GP18 (optional)
- 5V: VBUS
- 0V: GND
image: how to hook up the Teseo PCB to a Pico.
Test health
visit the github repository (git clone https://github.com/jancumps/pico_gps_teseo.git)
view the online documentation
Link to all posts.