Voltage Meter


In this project we are going to measure the voltage with the help of Arduino and this project has a interface for the displaying voltage on it and it has done with the help of STONE-HMI display, It also has a DMM(Digital Multi Meter) connected to it, which gives the value as same as display showing. Here potentiometer playing main role to change in the value of voltage but we can also measure a external voltage using this technique but it should be in the range of 5 volt other wise we have to connect an external circuit to measure the higher voltage value. But in this project we are dealing with 5 volt only. let’s move further to know more about this project.

Stone Technologies is a professional Manufacturer of HMI Intelligent TFT LCD modules.  Depending on the application the Stone Technologies offers Industrial Type, Advanced type, and Civil Type Intelligent TFT LCD modules available in different sizes. Visit Here.

Component List

[1] STONE-HMI 5 Inch Display

[2] Arduino

[3] TTL to USB converter

[4] 10k potentiometer

[5] Jumper Wires

GUI Designing

The HMI intelligent TFT LCD Module is provided with all the necessary documents explaining the basic connection, Development Software, GUI individual Design, and operation. But for further description and knowledge please find the below explanation and ( Note :- the details of the products used in the project is given in the procedure).

STON-HMI Display

The product manual gives you an overview of the Communication and Operation, Basic functions, working principle, GUI Design Software, Information about the Industrial type, Advanced Type, and Civil Type HMI TFT LCD Modules.

Below is the procedure that we have to follow to build this project :-


Firstly for the design download the GUI software provided in the link given below. Then further proceeding step would be to click on “file->New” the same can be seen in the video itself. Now further select the screen size would be 800 X 480 for a 5 inch display.

Click here to download the GUI design software


After the first steps have been completed then select and add the image and icon of GUI design for the display. The same can be found in the below article. Refer the above video to follow the step by step procedure for any difficulty in the procedure. After that add a button so that you can switch from screen “0” to screen “1” .


The next step is for adding a rotating icon for voltage indication ,for this select rotate icon from upper bar and drag it on screen where you want to put it ,after that select address 0096 (But in Arduino 0x96) as per the Arduino code, you can choose another address also but according to that you have to change in the code also. This rotate function required an icon for indication of variation in voltages so for this we have selected an icon and in next step you will get idea about how to use this icon as rotation icon.


Follow these steps “Tool -> Icon Generation Tool -> Choose image path -> Generate icon”. Follow these steps to make a rotating icon after converted you will get an option of preview check that image is it proper or not ,then proceed further. After done with this, select the center of that icon and put it in right place according to the GUI design. For rotation of icon here we have selected some initial angle and termination angle to cover entire Analog voltage meter ,and these angle values you can find in above GUI-design video.


After done with all four steps upload the project file in the Pen-Drive by clicking upload button which is given at the upper bar, after this step take this Pen-Drive and connect with display after connecting you have to turn it OFF and then turn ON by this procedure data will copy in the display and by this you have completed with all GUI design.

Follow the for a detailed explanation on the GUI design. The video explains step by step and in simple and lucid manner.

Note:- You can find all the images ,Arduino code and circuit by click here


As shown in the above circuit connect the all three wires from the potentiometer to your Arduino board, here center terminal of potentiometer give the output voltage and this pin connected with A0 of Arduino. This voltage is the analog voltage that Arduino reading as an input.

The Arduino board has a circuit inside called an analog-to-digital converter or ADC that reads this changing voltage and converts it to a number between 0 and 1023.

Arduino Code
#include <SoftwareSerial.h>
SoftwareSerial screenserial(2, 3); // RX, TX

#define ta 0x96
unsigned char ta_send[8]= {0xA5, 0x5A, 0x05, 0x82, 0x00, ta, 0x00, 0x00};

int x=0;
int y=0;

void setup()
void loop()



 Serial.print("value :- ");

When the shaft is turned all the way in one direction, there are 0 volts going to the pin, and the input value is 0. When the shaft is turned all the way in the opposite direction, there are 5 volts going to the pin and the input value is 1023.

This voltage reading done by the function of Arduino as analogRead() ,you can see in the Arduino code ,value of this function stored in the integer x and after this mapping is done according to the value of start-angle and termination-angle ,which we have given in the GUI Design according to the rotation of icon/needle of volt meter. After successfully reading the value of voltage from potentiometer we have sent the value to the display with the help of SoftwareSerial library as shown in the code .

If you have any doubt regarding this project please write your query in the comment box ,we will try to answer as soon as possible.

Output video

Leave a Reply

Your email address will not be published. Required fields are marked *