- Notifications
You must be signed in to change notification settings - Fork0
gotzl/gps-tracker
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is a small R&D project intendet to familiarize myself with programming of Mircoprocessors in the Arduino environment.The goal is to create a GPS tracker and LapTimer that records laps performed at a race track and shows the delta time to the fastest lap.The code is currently very messy and might get some cleanup at a later point.
- define start/finish line
- detect start/finish crossing to start/end a lap
- show laptime, lap number and various other information
- show delta time to reference lap (with number and a red/green bar)
- save completed laps to SD card in a structured manner
- connect to WiFi and offer WebServer to retrieve recorded laps from the tracker
- analyse recorded laps in python on PC
- OTA update over wifi
- navigation via touchscreen through a menu to allow
- loading a specific reference from SD
- loading a predefined start/finish line location (associated to a certain track 'track')
- setting up the WiFi connection
- record analog inputs (ie for break/gas pedal)
- get a proper GPS antenna
A commercial product would be egthis one.
The GPS module might not be accurate enough to realy calculate accurate delta times, but its cheap and its enough for early testing.Later, following modules might be interesting (suggested inthis article):http://www.unicorecomm.com/en/product/content_1611.htmlhttps://www.ardusimple.com/product/simplertk2b/
The idea is to split work on two devices:
- ESP32s takes care of the GPS tracking and corresponding calculations as well as handling SD card data
- Leonardo to work the display
The two devices communicate via a very simple binary protocol over Serial port.
- ESP32 -> GPS (Serial)
- ESP32 -> SD (SPI)
- ESP32 -> Leonardo (Serial)
- Leonardo -> Display/Touch (SPI + I2C?)
Eclipse IDE with the following platforms/libraries
- arduino
- esp32
- FFat, FS, SD, SPI, EEPROM
- Update, WebServer, WiFi (needsthis fix)
- Adafruit FT6206
- Adafruit GFX
- Adafruit GPS
- Adafruit ILI9441
- NeoGPS
Note: To be able to flash the Leonardo from within Eclipse, one neeedsavrdude_autoreset_wrapper.