Starting a new open source project DashPanel-Arduino. The aim is to develop a low-cost, easy to make gadget to show usable info for trip. It uses Arduino framework on ESP8266 WiFi enabled microcontroller.
The list of components is quite short at the moment,
- 1x ESP8266 ModeMCU compatible DevKit
- 1x GPS module – blox NEO M6
- 2x OLED 0.96″ displays – I2C interface
- 2x DS1820 temperature sensors
The initial version features following data on two OLED displays:
- Current course with compass view with numeric value
- Current speed
- Latitude and longitude
- Number of satellites locked
- Clock with date and weekday
- Altitude
- Cabin & ambient temperatures
Project Setup and Repo
DashPanel-Arduio is developed using VS Code editor with PlatformIO extension for ease of environment setup, programming and deployment.
Before you clone the repo, just install VS Code, add PlatformIO extension to it and you’re all ready to build.
Start VS Code, go into Source Control section and click Clone Repository, paste the link to DashPanel-Arduio repo: https://github.com/chall3ng3r/DashPanel-Arduino
Once clone process is completed, from VS Code’s command palette select “PlatformIO Build” option or use the shortcut keys Ctrl + Alt + B. The first build will take a bit of time as it will download required SDKs and libraries. Give it few minutes. If there are no errors, everything is okay and you are ready to upload build to dev board.
You can setup the components on breadboard like I’ve done, connect NodeMCU with USB of your PC and chose PlatformIO Upload option from command palette or use shortcut keys Ctrl + Alt + U.
NodeMCU GPIO Connections:
- Software Serial for GPS module: 13, 15
- I2C for OLED displays: 4, 5
- OneWire DS1820 Sensors: 2
The project is still work-in-progress, and not yet in final form. The plan is to make a 3D printable enclosure.
Future Plans
The reason for using ESP8266 for this project is to enable WiFi AP on it and have a webserver to serve mobile and PC optimized settings page.
Some of ideas include:
- Setting time zone offset. Currently hard-coded.
- Set destination coordinates and then it will show how far and which direction is the destination.
- Maybe different screen layouts to choose from. Like one for off road trip, another for city trip, etc.
- Feature to record the GPS coordinates in standard GPX format, then upload to cloud service when reaching in range of saved WiFi after a trip.
Why I needed to make this project? Back story is shared on PakWheels forum.
Do share your ideas to improve it further or you can join on GitHub to contribute.
[…] Project details and link to repo is on my blog: https://chall3ng3r.com/blog/2020/04/project-dashpanel-arduino/ […]