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.
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.

The flow in simple words:
- 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
- Our
dlNavapp processes the data & sends indicator signals toESP32microcontroller to display that on aWS2812B8x8 LED Matrix. - The app also has all manual controls to display the indicator symbols.
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
We can leverage Classic Bluetooth or BLE (low energy) to communicate from android device to ESP32.
Note: Still working on BLE (not implemented yet)
- All you need is to connect the
GPIO-4ofESP32with theINport of theWS2812 LED Matrixand rest all are power connections.

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.
- Download the latest apk and install.
- Open the app & grant necessary permissions as prompted. If you want to use this in
Auto Mode, you need to grantNotification readpermission for ourdlNavapp fromSetting>Apps>Special app access. - Turn on bluetooth & pair
NavIndiESP(which is from the ESP32) device from phone settings or notification panel. - 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
MACaddress of your ESP too. - 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.
- Our app can read
Notificationsfrom apps likeOsmAnd,Offline Map Navigationfrom VirtualMaze and show the automatic indicator lights. Just start theAuto Mode. (Notification read permission needed). - To use the automatic indicator controls from
MacroDroidorTermux, click onStart 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.3which 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.
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-turnetc. You may choose such app which provides text based turn notifications, such asOsmAnd.
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.
-
Install Macrodroid App from playstore. Grant necessary permissions. Also you need to grant
Notification readpermissions from Settings > Apps > Special app access > Notification read > allow for Macrodroid. -
Then you can import this macro & enable it. Now you are all set for automatic indicators as per navigation.
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.
I would really love to get more contributors on this project.
I know many improvements can be done & also limitations can be minimized.
