Tag Archives: LCD

Raspberry Pi LCD Touchscreen Calibration

Circuit Basics @ youtube writes:

In this video, I go through the process of calibrating an LCD touchscreen on the Raspberry Pi. Calibrating the LCD touchscreen should be done after installing it to make it more responsive and accurate.

Raspberry Pi LCD Touchscreen Calibration [Link]

Temperature alarm for boiling milk


Domen Ipavec shares his temperature alarm for boiling milk. Temperature alarm uses an Atmel attiny841 microcontroller, DS18B20 high temperature waterproof temperature sensor from adafruit, 2×16 HD44780 LCD and a buzzer to do its job.

Anyone who has ever boiled milk on the stove knows, that it has a nasty habit of overflowing. That is why I created the temperature alarm for boiling milk to be used my mother. It continuously measures the temperature of the milk and sounds an alarm when the temperature is over the preset alarm value.

Temperature alarm for boiling milk – [Link]

Dual Screen Netatmo Weather Station

Netatmo Weather Station is a module that measures your indoor comfort by providing vital information such as temperature, humidity, air quality, and CO2, alerting you when you need to air out your home to bring down its pollution levels.


One of the Netatmo limitations is that you need to use a smartphone to view the collected information by the station. To solve this, Barzok had developed an Arduino-based screen to display the weather data remotely, and published a full guide to build it in this instructable.

Barzok’s first attempt was a stand-alone device inside weather station using an Arduino UNO, a real time clock, a temperature and pressure sensor, and a 2.8” screen. It displays the time, pressure history over the past 6 days, and temperature as digits and as a gauge bar.


The next experiment was connecting the Arduino UNO with Netatmo API through an Ethernet shield and displaying the data on the screen. The connection was the difficult part as the Arduino was not powerful enough to establish an HTTPS connection and receive valuable information from Netatmo servers.

The solution uses a PHP client on a web server, which connects with Netatmo servers, and then the Arduino retrieves the data using the standard HTTP.


The final version of the station consists of an Arduino Mega, two 2.8” inches screens, and an ESP8266 Wifi module. There is no limit of the Arduino type and screen size, you can use your model with minor changes of the code. Barzok also made a custom circuit that transforms the 9V input voltage into a 5V to power the Arduino and 3.3V to power the ESP8266.


The diagram presents the process, the Netatmo module gathers the weather information and uploads them to the Netatmo servers. Then a PHP application runs on remote server and retrieves the information from the Netatmo servers and turns it into simple text data. Finally the Arduino receives the simple texts with the ESP8266 module and displays them on the two screens.

The two screens displays different information, the left one provides the real time data received from the Netatmo sensors about temperature, pressure, humidity, rain and CO2. The other screen shows the time and date, pressure history, and 3 days weather forecast.



You can find more instructions to build this project with detailed description about the code, schematics, box design at the project page.

Introducing Autodesk Circuits Simulator For Beginner

Circuits.io is an online platform created by Autodesk for hardware hackers. It provides a browser-based application for designing, simulating electronic circuits and creating PCB boards. Autodesk circuits simulator can simulate Arduino-based projects for testing designs and programs before creating them in real life.


The simulator allows you to learn electronics using a virtual Arduino board and breadboard without blowing up capacitors or burning yourself with solder on your work table. It is free to use, but more features are available with premium accounts. To start using circuits.io just go to the website, create an account, and start building your circuit.

This instructable guides you to get familiar using the simulator through three different projects. You will only need a computer with internet access, and you can build these projects in real if you have the components.

In this tutorial you will work with these parts:

  • Arduino Board, the brain of your circuits.
  • Breadboard, the board where you will connect the elements.
  • Breadboard wires.
  • Resistors.
  • LEDs.
  • Potentiometer.
  • LCD.
  • DC motor.

The first project is simple and easy, it is about making a LED turn on and off continuously. The circuit consists of only one resistor and one LED connected with the Arduino, which will turn the LED on and off for a period of time defined in the code.


Another simple project is based on the LCD (Liquid Crystal Display) which receives information from Arduino and displays it. You can program the Arduino to display a message you want, control its location, make it blink, or move the message on the screen. You will also use a resistor and a potentiometer to control the brightness of the backlight.


In the third project you will control DC motor speed and its spins in Autodesk Circuits. The motor must be fed by an external power source, and the Arduino will control the current flow to the motor through the TIP120 transistor.


The full instructions and guides are available in this instructable. When you finish making these projects you can explore the simulator features and components, and start building your own projects.

DIY Home Energy Meter

A new tutorial by The DIY Life is for building a home energy meter that provides information about power consumption and cost estimates for the month.

Using Arduino and some other components you can build your own energy meter that measure the supply current to your home through a CT (current transformer), current, power, maximum power and kilowatt hours consumed. The cost of electricity used to date can be added and displayed easily.


Electronics you need to build this project:

  • Arduino Uno
  • LCD Shield / LCD Screen
  • CT – Talema AC1030
  • 56Ω Burden Resistor
  • 10µF Capacitor
  • 2 x 100K Divider Resistors

If you are not familiar with Arduino or LCDs you can check these articles by The DIY Life to learn more: getting started with Arduino, connect an LCD screen

First you have to build the current sensor by connecting the CT to the Arduino and setting a right voltage reference due to the Arduino 0-5V input range. As shown below, this is the way you should connect the CT to the Arduino.


This code should be uploaded to your Arduino to run the project. It already has a scaling factor that can be adjusted due to the components you choose in your circuit.If you don’t want to use or don’t have an LCD screen, you can also modify the sketch to output to the Arduino IDE’s serial window as described in this code.

For more information on how to choose different components, how to calibrate them, and to learn more details about wiring and coding, you should check this tutorial out.

The first number displayed is the instantaneous current followed by the instantaneous power. On the bottom line, the kilowatt hours used since reset and then the maximum recorded power since reset. Check the meter in action:

2.8″ TFT LCD Touch Screen ILI9325 with Arduino Uno and Mega

educ8s.tv uploaded a new video. This is a 2.8” Arduino Touch Screen Tutorial with the ILI9325 driver. Nick writes:

Hey guys, I am Nick and welcome to educ8s.tv a channel that is all about DIY electronics projects with Arduino, Raspberry Pi, ESP8266 and other popular boards. Today we are going to take a look at this 2.8” touch screen designed for Arduino. As you can see, I have loaded a demo program that displays a button on the screen. When I press the button with my finger, the program displays a message. As demonstrated the touch screen is working fine! Finally we can start building projects with a touch screen which are much more interesting and easier to use.

2.8″ TFT LCD Touch Screen ILI9325 with Arduino Uno and Mega [Link]

Web Controlled IoT Notice Board Using Raspberry Pi 3

The concept of web controlled notice board is getting more popular day by day for its wide range of applications in the practical field. As an IoT project, simple web controlled notice board can be made using a Raspberry Pi. Saddam at CircuitDigest designed the project where you can send the notice message through web browsers and it will be displayed on a 16×2 LCD display connected to the Pi.

In this Web Controlled Notice Board, we have created a local web server for demonstration, this can be a global server over the internet. At the Raspberry Pi, we have used 16×2 LCD to display message and Flask for receiving the message over the network. Whenever Raspberry receives any wireless message from a Web browser, it displays on the LCD.

Web Controlled IoT Notice Board : How It Works
Web Controlled IoT Notice Board : How It Works

Parts List:

  1. Raspberry Pi 3 (any model)
  2. Wi-Fi USB adapter (if you’re not using Raspberry Pi 3)
  3. 16×2 LCD
  4. Bread Board
  5. Power cable for Raspberry Pi
  6. Jumper wires
  7. 10K Pot

Circuit Diagram:

The circuit is very easy to make and uses Raspberry Pi as the brain. Few external components are used. You just need to connect the display to Raspberry Pi as per following instructions:

RS, RW and EN pins of LCD are directly connected to pin 18, GND and 23. Data pins of LCD D4, D5, D6, D7 are directly connected to Raspberry Pi’s GPIO 24, 16, 20, 21. A 10K pot is used to control the brightness of LCD.

Circuit Diagram of Web Controlled Notice Board Using Raspberry Pi 3
Circuit Diagram of Web Controlled IoT Notice Board Using Raspberry Pi 3

NOTE: If you are not using Raspberry Pi 3, you must use a USB to Wi-Fi adapter for lower versions of Raspberry Pi as they don’t have inbuilt Wi-Fi like Raspberry Pi 3.

The Coding Part:

Coding is the most important part of this project. Here you need only two codes:

  1. One is an HTML code to create the web page.
  2. Another one is a Python script, that uses Flask as mentioned earlier.

In the HTML code, a simple text box and a submit button are created so that you can enter a Notice Message in TextBox and then submit it to the server by clicking on Submit button.

The Python script is used to send data to the server (Raspberry Pi) and show the data i.e Notice Message on the LCD display. One thing to keep in mind, you should install Flask first using the command:

$ pip install Flask

Now install required libraries for Flask, and define display ports:

from flask import Flask
from flask import render_template, request
import RPi.GPIO as gpio
import os, time

app = Flask(__name__)

RS =18
EN =23
D4 =24
D5 =16
D6 =20
D7 =21
... ......
..... ......

NOTE: You need to copy-paste the HTML code in some text editor and save the file with .HTML extension. Then put this HTML file in the same folder where you have put your interpreted Python Code file.

So this is how you can send a message from your computer or smartphone to the Raspberry Pi LCD and make an IoT-based Wireless Notice Board controlled over The Web.

12$ 30MHz signal generator using Arduino

A signal generator is an electronic device that generates electronic signals and waveforms. These electronic signals are either repeating or non-repeating as per the requirements and field of applications. It is generally used in designing, testing, troubleshooting and repairing electronic devices. A signal generator can generate various kinds of waveforms. Most common are the sine wave, square wave, sawtooth wave and triangular wave.

This instructable shows a full guide on how to make a 30 MHz signal generator for 12$, using an Arduino and an AD9850 DDS synthesizer module. The circuit is pretty simple and small enough to fit in your pocket. Kedar Nimbalkar, the author of the instructable, says:

A precession signal generator is very easy and affordable to make using an Arduino and DDS synthesizer (ad9850) . It’s World’s first smallest portable signal generator.

You can make decent 0 -30 MHZ frequency Signal generator only in 12$ .

30 MHz signal generator using Arduino
30 MHz signal generator using Arduino

Parts List:

1. Arduino Pro mini
2.AD9850 (DDS Synthesizer)
3.16×2 LCD Display ( Hitachi HD 44780 )
4.Rotary Encoder
5. CP2102 (or any USB to serial converter)

I think you are familiar with all of the above items except the AD9850 (DDS Synthesizer). First of all, you need to know what does DDS stand for.

Direct Digital Synthesizer Block Diagram
Direct Digital Synthesizer Block Diagram


Direct digital synthesizer (DDS) is a type of frequency synthesizer used for creating arbitrary waveforms from a single, fixed-frequency reference clock. A basic Direct Digital Synthesizer consists of a frequency reference, a numerically controlled oscillator (NCO) and a digital-to-analog converter (DAC).


AD9850 (DDS Synthesizer):

The AD9850 is a highly integrated device that uses advanced DDS technology coupled with an internal high-speed, high-performance D/A converter and comparator to form a digitally programmable frequency synthesizer and clock generator function. When referenced to an accurate clock source, the AD9850 generates a spectrally pure, analog output sine wave. In a nutshell, AD9850 works on DDS (direct digital synthesis ) which can generate analog waveforms with digital input.
Read the datasheet to learn more.
The AD9850 DDS Module signal generator
The AD9850 DDS Module

Circuit Diagram of Signal Generator:

The circuit diagram is very simple. You can make it on a breadboard, or just solder components end to end to make it more compact.

Signal Generator Circuit Diagram
Arduino Based Signal Generator Circuit Diagram

The Arduino sends digital signals to AD9850 and the module generates analog output Sine wave. The display, which is connected to Arduino, shows output frequency and step increment/decrement value. The rotary encoder is for changing frequency. Though the AD9850 module can generate up to 40 MHz frequency, but after 30 MHz the output frequency becomes unstable. So in this circuit, the maximum frequency is limited to 30 MHz.

You can make a decent 0-30 MHz frequency signal generator for only 12$ . If you are pro “overclocker”, then 40 MHz in same price .

The signal generator runs on 5 Volt power supply and current should not exceed 270mA.

Arduino Sketch:

The Arduino code is HERE.


Output Response of Arduino Based Signal Generator
Output Response of Arduino Based Signal Generator

Watch the video which demonstrates the 12$ signal generator.

Etch a Sketch featuring gen4-uLCD-50DT

Etch a Sketch featuring gen4-uLCD-50DT [Link]

PIC16F 28-pin Development Board with LCD


This development board offers various important add-ons which we considered are important to a developer of Microcontroller based project from Microchip.


  • This board can be used with any of the 16F / 28 Pin PIC ICs compatible with 16F73 MCU. This kit is supplied with a PIC 16F73 MCU for development purposes.
  • The Clock frequency to the MCU is a 4 Mhz Crystal
  • This Development Board offers a ICSP connector for easy download of your code onto the MCU. Resistor R1 and Diode D1 Offer protection of Programming voltage interfering with the Supply voltage.
  • A 16×2 Backlight LCD helps as a displays of data in your project. PR1 controls the Contrast of the LCD.

PIC16F 28-pin Development Board with LCD – [Link]