Skip to content

daslearning-org/navigation-indicator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧭 Automatic Navigation Indicator

Show automatic navigation indications like left / right turn indicator, U-turn indicator using your Android phone. Along with that, we can manually display some more indications like no overtake, allow overtake etc. using the buttons on our android app.

📽️ Demo

You can click on the below Image or this Youtube Link to see the demo. Please let me know in the comments, how do you feel about this App.
VisionAI

💡 How it works

The flow in simple words:

  1. We are capturing the navigation notification from a navigation app like OsmAnd using either Termux or MacroDriod app. Then it sends the data (notification texts) to our open-source dlNav app
  2. Our dlNav app processes the data & sends indicator signals to ESP32 microcontroller to display that on a WS2812B 8x8 LED Matrix.
  3. The app also has all manual controls to display the indicator symbols.

Flow Diagram

🧑‍💻 Quickstart Guide

Follow this Quick Guide to setup your DIY navigation indicator (automatic or manual). If wish to get the purchase links & more details, check the official blog

🦾 ESP32 Setup

We can leverage Classic Bluetooth or BLE (low energy) to communicate from android device to ESP32.

Note: Still working on BLE (not implemented yet)

🖧 ESP32 WROOM Connection

  1. All you need is to connect the GPIO-4 of ESP32 with the IN port of the WS2812 LED Matrix and rest all are power connections.
    Circuit Diagram

ᛒ Classic Bluetooth

Connect your ESP32 board to your computer with a USB cable & upload this sketch. If you want to learn about setting up your ESP32 environment in Arduino IDE, you may follow this fantastic guide.

📱 The Android App

  1. Download the latest apk and install.
  2. Open the app & grant necessary permissions as prompted. If you want to use this in Auto Mode, you need to grant Notification read permission for our dlNav app from Setting > Apps > Special app access.
  3. Turn on bluetooth & pair NavIndiESP (which is from the ESP32) device from phone settings or notification panel.
  4. Use the app to list all paired devices, choose the same bluetooth name & connect it from the app. Then proceed. You may manually enter the MAC address of your ESP too.
  5. Voila, you have now got the complete manual control of your DIY indicator device. You can press any switch to turn on/off the indicators.
  6. Our app can read Notifications from apps like OsmAnd, Offline Map Navigation from VirtualMaze and show the automatic indicator lights. Just start the Auto Mode. (Notification read permission needed).
  7. To use the automatic indicator controls from MacroDroid or Termux, click on Start Server & proceed with next steps as below. (Then our app doesn't need notification or location access)

Note: Android Play Protect may block this app as it requires the special permission (notification read), if you do not wish to proceed, you can download the older version 0.0.3 which works with Macrodroid or Termux as shown below (our app doesn't read notification). Rest assured, we do not collect any data from our app and the app code is open-source.

🧠 Automatic Navigation via Termux or Macrodroid

You can choose either the macrodroid or termux way. Which will read the notifications from your navigation app & trigger an API (local) call to our android app.

Note: Google maps or many other maps do not provide text based turn details like turn left or make a u-turn etc. You may choose such app which provides text based turn notifications, such as OsmAnd.

🤖 Macrodroid way

This app is now technically a paid app (7 days trial or increase the days by viewing Ads). If you are a nerd, you may follow the Termux way.

  1. Install Macrodroid App from playstore. Grant necessary permissions. Also you need to grant Notification read permissions from Settings > Apps > Special app access > Notification read > allow for Macrodroid.

  2. Then you can import this macro & enable it. Now you are all set for automatic indicators as per navigation.

>_ Termux way

You need to follow this termux guide which will start the automatic notification reading & calling the api of our app.

Note: The navigation app may have some delay in showing the notifications (app may show the correct navigation) which will also delay in indictor changes.

🤝 Contributing to this project

I would really love to get more contributors on this project.
I know many improvements can be done & also limitations can be minimized.

About

Automatic vehicle indicator on/off using map navigation app. The app will run on a smartphone & will communicate with ESP32 to control the indicator lights.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors