Close
0%
0%

IceNav

ESP32 Based GPS Navigator with OSM offline maps.

Public Chat
Similar projects worth following
This is a personal project that started a long time ago. The idea is to have a device for recreational use where you can view maps of the current GPS position, record routes, navigate to waypoints, and more.

Currently based on an ESP32, it is still in the development phase. The limited available time and certain "programming skills" are causing this project to remain in development.

History:

This project began more than 10 years ago when I decided to try out a GPS module along with an Atmega328, to understand how it works and to start learning about the world of GPS.

The first setup was very simple, consisting of a GPS, an Atmega328, and a small graphical display.

Step by step, I gained more knowledge in both hardware and programming, and I started adding features such as a graphical display, waypoint navigation, offline maps, and more.

I replaced the Atmega328 with an Atmega644, added an SD card, a compass, and a few other things, and everything was programmed from scratch. The initial project was evolving.

Time went by, but one year this project was left in a drawer and forgotten.

Currently

About a year ago, while talking with some friends, the topic of this project came up, which had been abandoned.

It was the moment to decide to return to it. I had gained more knowledge, and the hardware had evolved significantly over the past 10 years. The emergence of other microcontrollers, like the ESP32 (which I was already using in other projects), presented a new challenge for me.

With this, I rewrote all the code from scratch, and feeling motivated, I decided to publish the progress on GitHub.

The result today is what you can see on GitHub and on the current screenshots.

Currently, IceNav has the following hardware specifications:

  • ESP32 / ESP32S3 (better with PSRAM)
  • 320x480 or 320x240 TFT Colour with touch support (SPI / 16Bit Mode)
  • Compass
  • SD Card

There is still much to develop and features to add, as everything had to be programmed from scratch and the previous work was not usable.

This project is in constant development, with new features being added gradually. The new platform, ESP, allows for many new capabilities, being both efficient and practical.

The project, being in constant development, may have some bugs, etc., which are resolved as they are detected.

This project is sponsored by PCBWay that is always your great choice.



Please , visit GitHub Repository for updates

  • 1 × ESP32S3 N16R8
  • 1 × Compass Module (HMC5883L , QMC5883, ...)
  • 1 × ILI9488 320x480 TFT with touch (I2C or SPI)
  • 1 × Any GPS Module (For example AT6558D)
  • 1 × BME280

  • Web file server finished!

    Jordi Gauchía3 days ago 0 comments

    Well, finally after some tests, etc... web file server is finished!

  • Web file server

    Jordi Gauchía4 days ago 0 comments

    Taking advantage of some code I had from other projects for a web file server that allows uploading, downloading, etc., of files from an SD card, I’ve made a few modifications to the web page template (adding a logo, etc.) and I'm implementing it into the project.

    I still need to review and optimize the code a bit (it's not 100% reliable yet), but I hope to have it ready soon.

    Stay tuned!

  • Navigation feature

    Jordi Gauchía6 days ago 0 comments

    In the development branch, a simple navigation functionality to a waypoint stored on the SD card is implemented.

    You can see screenshots etc on Github

  • Elecrow ESP32 Terminal 3.5" full support

    Jordi Gauchía09/07/2024 at 14:00 0 comments

    Finally, Elecrow ESP32 Terminal is full supported by IceNav.

    https://github.com/jgauchia/IceNav-v3/tree/devel

    For the moment it's implemented at devel branch.

  • Supporting boards

    Jordi Gauchía09/05/2024 at 13:37 0 comments

    Although it is true that IceNav has its own board, etc... the firmware can be used on existing models.

    In this case, support will soon be given to the Elecrow ESP32 3.5" Terminal board.

    The idea is to give the maximum possible support to existing boards and not limit people's possible knowledge of electronics, etc.

    Step by step I will try, if necessary, to give support to these boards... that is, as long as I can test them myself or someone offers help with it.

  • Testing Navigation Screen

    Jordi Gauchía09/05/2024 at 06:13 0 comments

    While waiting to continue with the hardware part and support for other boards, I have prepared a new simple navigation screen.

    Basically, once a previously stored waypoint has been selected, a screen appears indicating the distance as well as the course towards the destination.

    It still needs to be finished properly, but it is already a start and a sign that the project is moving forward quite quickly.

    (the branch on the project's GitHub will be updated shortly)

    Here you can see a short video of how it works, although it is true that there is still a long way to go.

    More project updates coming soon, stay tuned!

  • Provide support for existing boards

    Jordi Gauchía09/02/2024 at 06:46 0 comments

    If you find this project interesting and want me to try to support any of the existing boards on the market, feel free to mention it or even create an issue on the project's GitHub, and I'll do my best to make it happen.

    Thank you!

  • PCB Prototype testing and workaround

    Jordi Gauchía08/29/2024 at 09:51 0 comments

    Finally the prototype was assembled but I've some issues that I'll fix before publish in GitHub schematic, gerbers, etc.

    There are:

    • Add pull-up resistors to SPI bus
    • Route Vbus from USB connector to battery charge module
    • Review thermal pad for LDO's (AMS1117-5 and AMS1117-33)

  • Prototype Assembled

    Jordi Gauchía08/28/2024 at 20:31 0 comments

    After a little fix, The prototype is assembled. Now it's time to test it!


    Thank you @PCBWay for the excellent PCB

  • Little Mistake

    Jordi Gauchía08/28/2024 at 16:23 0 comments

    Well i've found a little mistake in my PCB design, there are a track that isn't connected. It isn't serious, in next PCB revision I'll fix it

View all 19 project logs

  • 1
    Project Build

    Read README.MD from GithHub Repository. It explains how maps are generated, build information, and more.

View all instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates