User Tools

Site Tools


What this project requires


This project has three main hardware components.

  1. The Raspberry Pi
  2. The LCD
  3. The Driver Board

These are all very easily available, and the cost of each unit is around £50 (because the LCDs are from in house stocks).

The Raspberry Pi

The <Raspberry Pi> in this project is the RPi 3 Model B. Now this will work with a model 2 or 1 (the driver board will not fit the one, so you would have to create a new design). This project also works with the RPi Zero.

All of the Raspberry Pi Models have enough power to run the web server, which does very little work, and to runt he LCD, which only refreshes once a second.

The Raspberry LCD

The LCD is a HD44780 compatible display. The LCD is two line and has 40 characters per line. This LCD was used because we have many of these at Ericsson, because this LCD has been used in recent receiver models.

The LCD is very simple to operate, in this project our LCD will be running in 4bit mode. There are other LCDs that run using I2C, these require much less wiring, but the libraries can be harder to obtain.

The LCD has a very simple DC backlight, some other LCDs have backlights that require PWM to operate, which means more circuitry.

The Driver Board

The LCD Driver Board is just a convenient way to connect the 16 Way Male Header of the LCD to the 40 Way Male GPIO connector on the Raspberry Pi.

The Driver Board has two Potentiometers (10K or 20K are fine) for adjusting backlight and LCD contrast. The 40 Way header for connecting to the Raspberry Pi and a 16 Way ribbon cable that goes to the LCD.

There is also a 10K resistor that is not currently in use. This is a pull up resistor for three of the GPIO pins on the Raspberry Pi, this is to allow the addition of buttons at a later date. My plan is to be able to switch the lines of the LCD on and off with the buttons (to allow for 'reveals' during demonstrations).

The Driver board Wiring is as follows:

The PCB layouts were done in house and the circuit boards produced in China (PCBGoGo)


This project has the following software components.

  1. Linux OS for the Raspberry Pi (Raspbian or Noobs)
  2. PHP Libraries (on the Master Pi only)
  3. Apache Web Server (on the Master Pi only)
  4. Python

The Linux is a specific arm compiled version that runs on the Raspberry Pi. You can run this project in headless mode (no GUI required on the Pi) which helps keep boot times up and resource use down.

The master Pi requires PHP and Apache Web Server, this is just for the hosting of the page that you configure the LCD messages on.

Python is the software that understands the code in the Python script that runs the LCD, this is preinstalled on Raspbian distros.

what_this_project_requires.txt · Last modified: 2023/03/09 22:35 by