Skip to content
OrangeBaronPublic

About

Display e-ink turn-by-turn basato su ESP32 che riceve indicazioni stradali dallo smartphone tramite Bluetooth (BLE).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

e-ink Maps

Cos'è

È un progetto basato su microcontrollore (ottimizzato per ESP32-S3) che trasforma un piccolo schermo e-paper da 1.54" in un display secondario per la navigazione turn-by-turn. Progettato per essere compatto, leggibile sotto la luce diretta del sole e a bassissimo consumo energetico, il dispositivo funge da "ripetitore" delle indicazioni stradali, ricevendo i dati in tempo reale da uno smartphone tramite connessione Bluetooth Low Energy (BLE). Il progetto è stato pensato per interfacciarsi con app di automazione Android, come Tasker.

Come si usa

Il codice sorgente è concepito per essere compilato e flashato su un modulo Waveshare ESP32-S3-ePaper-1.54 utilizzando Arduino IDE.

Sul telefono sono necessarie le seguenti app: Tasker, AutoNotification e BLE Tasker Plugin. Importare in Tasker il profilo Android_Moto.prf.xml che si occupa di intercettare le notifiche di Google Maps e di trasmetterle al display nel formato corretto.

Cosa fa

Il sistema agisce come un Server BLE in attesa di connessione. Una volta collegato allo smartphone, esegue le seguenti funzioni:

  • Ricezione dati in tempo reale: Riceve pacchetti di dati via Bluetooth contenenti le istruzioni di navigazione (strutturati nel formato distanza|indicazione testuale|codice icona|info viaggio).
  • Interfaccia di guida e stato: Interpreta il payload ricevuto e lo disegna sul display e-ink, mostrando all'utente:
    • L'icona grafica della manovra da eseguire (svolte, rotonde, uscite, arrivo a destinazione, ecc.).
    • La distanza esatta dalla prossima manovra.
    • L'indicazione testuale (es. il nome della via o la direzione).
    • Informazioni generali sul viaggio in corso (es. tempo di arrivo stimato).
    • Lo stato del dispositivo nelle fasi di attesa o disconnessione (indirizzo MAC per facilitare l'associazione BLE e percentuale residua della batteria).
  • Gestione intelligente del display: Per garantire reattività durante la guida ed evitare il fastidioso effetto "ghosting" tipico degli schermi e-ink, il software alterna aggiornamenti parziali (velocissimi, per i dati che cambiano spesso come la distanza) ad aggiornamenti totali periodici dello schermo.
  • Gestione del Risparmio Energetico: Il sistema monitora costantemente l'alimentazione. Se il dispositivo perde la connessione Bluetooth per più di un minuto, interrompe fisicamente l'alimentazione spegnendosi del tutto (o entra automaticamente in modalità Hibernate / Deep Sleep se collegato via cavo), mostrando prima un'icona di splash per massimizzare la durata della batteria.
  • Multitasking nativo: Sfrutta le capacità FreeRTOS dell'ESP32 separando la logica di ricezione Bluetooth dall'aggiornamento grafico del display su core e task differenti, evitando blocchi e garantendo una ricezione fluida dei dati.

About

Display e-ink turn-by-turn basato su ESP32 che riceve indicazioni stradali dallo smartphone tramite Bluetooth (BLE).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages