Message Pump using PIC16F687 microcontroller


The Message Pump A.K.A. the USB to LCD Backpack is a device that allows you to connect a LCD display directly to your computer. It uses a PIC micro-controller, to drive the LCD and a FTDI USB to serial chip to connect to your computer.

The great thing about the FTDI chip is that it’s drivers are available for Macintosh, Windows, and Linux! The FTDI chip works by creating a VCP (virtual com port) and you may already have these drivers on your computer if you use an Ardunio Diecimila. If not, no worries they are free and and easy install.

What does it do?

Once a VCP is opened to the Message Pump any ASCII serial data sent to it is displayed on the LCD display.

This means that if you have software on your computer that can access a serial port you can display messages on the Message Pump!

The possibilities are endless, imagine using AppleScript, Processing, Basic or whatever your preferred programming / scripting language is, you could display messages like;

Message Pump

  1. BulletHow many e-mails you have
  2. BulletThe current date and time
  3. BulletCPU temperature
  4. BulletRSS feeds
  5. BulletHits on your web page
  6. Bullet ….

How to use it-Basics:

The easiest way to use the Message Pump is to open Hyper-terminal or an other terminal software, select and open the COM port for the Message Pump, then just start typing. What you type is displayed directly onto the LCD display. If you are using other software you will have to check how to open a serial port in that software.

To get you started I’ve made a simple Processing example. It is called MessagePumpDemo.pde and uses the Serial Library included with Processing.

The way MessagePumpDemo works; first it lets you select a serial port, then it opens that port at the default baud rate of 9600 bps and prints pumps out a message. It also lets you send keystrokes to the display. It’s a building block for you to examine and make better.


How to use it-Advanced:

The Message Pump also accepts instructions to control settings and formatting. These are used to change things such as the size of display, for example 1×16 to a 4×20 character display, baud rate etc. You can also jump to a specific space on the display. The instructions also include the ability to pass though, Hitachi commands right into the display. For example; clear display, shift left etc.


An instruction is always three bytes long and it always starts with the hex value of 0x80. The next value is the instruction and the third is the value of the instruction.


For more detail: Message Pump using PIC16F687 microcontroller

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us: