About: A mechanical Engineer, currently working in dubai as Design Engineer. I am a big fan of mechanics, electronics, programming. I believe that There is no knowledge that is not power

This is my first instructable so please feel free if I missed something.

This is a gadget for sending messages (voice to text/ pre set ,messages ) to other drivers on the road while driving ,through your Android mobile phone using esp8266 development board (nodeMCU). Messages will appear on 04 8x8 Dot Matrices.

Requirements:- MITappinventor account (free)

NodeMCU esp8266 (20AED)

8x8 LED matrix (20AED)

Your Android mobile phone(existing)

Mobile car charger to convert 12 volts to 5 volts.

Future plans:- This is first prototype, in future, inshAllah I will include message selection through a handheld bluetooth (HC-06 )device, which will be attached to steering wheel so that it will be safer and less distracting for messaging while driving.

Disclaimer: This may not be legal in some countries so please be careful and use it at your own risk.

Step 1: Setting Up NodeMCU

First you need to have a working nodeMCU(Wimos D1, Wimos Mini, Esp8266 in any form can be used, just need to find out the output pins). NodeMcu is quite cheap and and can be be bought from Ebay. As soon as you receive your NodeMCU, you need to flash it with firmware using ESPlorer. (below link which I followed)

Noticeably, there are only two steps:-

1) Go to file>Preferences and type " in additional board manager

2) Go to go to Tools > Boards > Boards Manager and type esp8266 and click install.

Step 2: Uploading Program

In this step you need to upload program using Arduino IDE(I am using old stable IDE version 1.6.8 as I couldn't find the way to install additional boards in the latest version). You will have to install additional board in order to upload the program using Arduino IDE as below:

Now upload below code:-

Don't forget to place the libraries in Arduino/libraries/ folder:-

Step 3: Connecting 8x8 Matrix and Testing

Now connect 8x8 matrices in series (cascade) as shown in image. Maximum 8 and minimum 1 8x8 matrix can be

used (I tested only 4) as described in max7219 library.

Connect pins as below:-

D5 to CLK (clock)

D7 to DATA (Data in )

D8 to CS (chip select)

Gnd to Ground

VU to Vcc of matrix (its a 5volt supply in nodeMCU. Besides that 8x8 matrix can work with 3.3 volts also but brightness will be less. If you are using bare Esp8266, it works on 3.3volts so you have to find a separate 5V supply for Matrix.)

Note: I used generic 8x8 matrix but in the market there are many different kinds are available. If you get FC-16 type of 8x8 Matrix, then you will experience your text flowing in very weird direction. No need to worry just the correct library has to be used. I tested MD_MAX7219 works fine with FC-16 type matrices.

Step 4: Installing Android Application

That was the most fun part of the whole project. I am very thankful to MITappinventor team for giving such a nice option to make your own app very quickly. It hardly took 30 minutes to make the complete app. I have attached .aia file (project file) also if someone wants to modify and add more options so feel freely to do so. Otherwise, just install .apk file in your mobile (you may need to grant access as some mobiles do not allow installation of any app outside app store by default).

After successful installation, connect mobile to nodeMcu's wifi which will come by the name of "inaya" and now you are ready to send messages to screen.

Note: I observed that voice to text input was taking a very long time in lenovo mobiles. Whereas, same was very fast in Galaxy series mobiles.

Internet of Things Contest 2017

Participated in the
Internet of Things Contest 2017