While beeing outside and having a map with the current area right at your hands is great, most of the time we aren't outisde looking for the right track. So that is why we explored alternative uses for the IndiaNavi Device.
One quite obvious usecase is enabling Wifi during Charging. Connected to the internet the ESP32 on the Board is able to get information about pretty much anything. First usecase:
Take the last known GPS Coordinate and get weather data
A great place to get informatio about weather on any place on eath is https://openweathermap.org/. You can get a free API Key that allows you to update your IndiaNavi 1,000,000 times a month!
The display shows a temperature of 5.6°C
Show this weeks calendar from Google Calendar
Google Calendar allows you to export your calendar for public access. This URL contains a secret key that allows access. For a similar project you can have a look here https://github.com/kristiantm/eink-family-calendar-esp32
Display the train arrival table from your local Bahnhof
Have an inspirational Track in your area displayed
I the future we can provide a splash screen image for every track converted on our server. This screen will show information like the Name of the track, the area and a picture of the whole course. The button can then be used to download the track to the device. But to come to this we still have a lot to do and much more devices to build. If you are interested in the technology or want to talk a bout future plans: Drop us a line navi@platinenmacher.tech
I was busy creating a mobile App for interfacing with our map generation server. Map tiles are prerendered on a webserver. Base for the tiles is open street map. The map data is colored in a specific way that makes use of the colors available in the dispaly.
To get a map exerpt that contains the area you want to hike in, is quite easy. You plan a route of your hike with an app like Komoot or on gpx.studio. After that you can upload the gpx trail to the map rendering server. Or you can use the app to do the uploading for you. It also tracks the progress of the data generation.
After the data generation is finished the app will let you download a zip file with all the files needed on the SD card. The link to the zip file can also be shared to your pc to download it. The next big change will be to have the IndiaNavi to download the map files directly. For this reason we have that huge ID tag. It coresponds to the ID the device gives Itself based on the ESP32 Chip MAC and a Device Name that is customizable.
Going from left to right we have the first Prototype with STM32 Microcontroller. Moving on to a solution without the STM32 and only the ESP32. Prototype 2 does have a battery and works. GPS reception was not the best so we fixed the antenna position in Prototype 3. This prototype is also wraped with a leather cover to make it more "adventurous"
Hardware Version 3 is done and it looks gorgeous. Next step is a nice, narrow case that protects the screen before we can remove the protective film and get a "real" view of the screen.
If you are interested in getting one get in touch with us. You can find us here: IndiaNavi Forum
Ok, we are finaly done with the hardware design and it looks gorgeous! The design was done by The Brutzler.
With this hardware we are going to build a small prototype run. If you want to be involved wih the project, you can donate to either my or The Brutzlers paypal moneypool:
Today i implemented OTA firmware download. It takes around 10 seconds to download a new application. So updating the Screen does not really make sense since this takes around 12 Seconds
I also improved the GUI by showing WiFi connection state
I improved the converter a little bit more so it matches more coluors. For that I built a script that generates a picture to review the patterns on screen before generating new map tiles with it.
The long strip is dynamically generated based on the colours in the palette. Using these mixed colours on the screen gives more available colours to chose from.
looking at the colour orange gives a strange effect. This needs to be investigated further
We found that the issue with the strange colours is probably because of a broken connection inside the flat flex cable of the screen. I did fold the display quit a lot during initial bring-up. So we will continue with a new Display and try not to move it around so much.
Chris, my partner in crime, is going over the hardware issues we found during bring-up. You can check out his progress on the GitHub for the PCB. Now with all the functions running I can concentrate on bringing a more advanced Firmware to the device.
First step will be to enable OTA Firmware download to the ESP32 and hopefully get it to flash without removing the SD-Card. This is currently necessary since the card detect messes with the strapping during POR boot. Causing the Downloader to go into UART Mode, but not UART Download mode.
On the Server side of the project I improved the Converter a bit. Now the Converter can run a function to map a colour at a specific position. This will enable us to use patterns of colours for mapping more than 7 colours to the screen. The last version just looked at the closest colour and used this to replace the original in the PNG.
Original Image from MapNikRiver colour got mapped to black because it is closer to black than blueNew function maps blue and black in a dotted grid
How the new style looks on the screen and what else we can improve is going to be in the next log.