A fully autonomous GPS tracker powered by solar energy and built around an Arduino Nano. It provides real-time GPS data, battery monitoring, and UTM coordinate conversion โ perfect for pairing with IGN hiking maps in France.
Developed as a personal project to combine embedded systems, energy autonomy, and high-precision geolocation.
- Real-time GPS: latitude, longitude, speed, altitude, and signal quality
- Converts GPS coordinates to UTM format using custom C++ matrix transformations
- OLED screen with 3 dynamic display pages
- Battery level monitor with voltage divider + 4-bar display
- Solar-powered with TP4056 charging circuit
- Built-in power switches (main & solar charge control)
- Two physical buttons: toggle battery status / switch display pages
- Arduino Nano (ATmega328p)
- GPS Module (Quectel L80-R or NEO-6M)
- OLED Display (SSD1306, 128x64 IยฒC)
- TP4056 LiPo Charging Module
- 3.7V LiPo Battery (500โ1000mAh)
- 5V Solar Panel (1W min recommended)
- Main ON/OFF switch (power to Nano)
- Solar ON/OFF switch (to TP4056)
- 2x Tactile buttons (toggle & page-switch)
- Voltage Divider (e.g. 100kฮฉ / 10kฮฉ)
- Schottky diode (1N5819 or similar)
See schematic.md for the full pinout and wiring diagram.
- Language: C++ (Arduino)
- Libraries:
TinyGPS++Adafruit_SSD1306Adafruit_GFX
- Custom UTM conversion implementation
- Power-efficient display update & memory optimization (F(), PROGMEM, no
String)
- Install Arduino IDE
- Clone this repo
- Install required libraries via Library Manager
- Connect the Arduino Nano via USB
- Upload
main.ino(orsrc/main.cpp)
This project was born from my passion for hiking. I needed an offline, battery-independent GPS tracker that would work in remote areas and map precisely to UTM coordinates used in French IGN topo maps. This is a personal engineering tool โ and my first complete embedded product!
MIT ยฉ Alexy Roman