HP9150VFD Display Module Information

The VFD (vacuum fluorescent display) module from the discontinued HP z500 Series Digital Entertainment Center media PCs are a conveniently sized, bright display capable of displaying 2 rows of 16 character wide text and a number of A/V system icons. This page provides additional hardware details. See also the HpDecVfd library page.

Pinout

Pin

Description

1

Clear rectangle LED A

2

Clear rectangle LED B

3

IR receiver A

4

Red LED

5

RST on VFD controller

6

SCK on VFD controller

7

MOSI on VFD controller

8

MISO on VFD controller

9

LDR signal out

10

IR Receiver C

11

+5V

12

GND

Notes:

+5v current requirement measured at 450ma

The VFD controller is an Atmel AT89S52 microcontroller with custom markings

The 4 connections to the VFD microcontroller can be used to access the in circuit programming interface

RST (pin 5) should normally be left unconnected as the board already has the necessary reset timing circuitry. If this pin is tied directly high or low the microcontroller will not start correctly

From examining the circuit, it appears that the LDR circuit simply outputs 0 or 5V depending on amount of light hitting the LDR

The red LED is turned on when pin 4 is driven by 5V. The LED circuit includes a 1K current limiting resistor

Communication Protocol

The following information was determined through experimentation and is most certainly incomplete and perhaps even inaccurate.

Each byte of data is serially clocked into the display using pin 6 (SCK) for clock and pin 7 (MOSI) for data. Data is latched on the high to low transition of the clock line. The minimum clock period is 56 microseconds which translates to approximately 0.5 milliseconds to transmit a complete byte.

Communication consists of distinct commands consisting of one or more byte of data. The command bytes are send to the display, then after having received no further data for a period of time, the display will process the command. This delay between commands is mandatory. Experimentation found the delay needed is at least 3 milliseconds. The HP DEC PC is using delays of 15 milliseconds.

The known commands are as follows:

0x00 0x00 - Clear the text from the display and home the cursor. Note that the cursor homes to the first character on the bottom line of the display. The HpDecVfd library hides this oddity and will home the cursor to the top character on the first line.

0x00 0x08 - Blank the display output

0x00 0x0C - Unblank the display output

0x00 0b1nnnnnnn - Sets the cursor position to the address specified by nnnnnnn in the second byte. Note that each line is 64 characters long with only the first 16 bytes normally visible. Note also that addressing starts on the bottom line and wraps onto the top line. The HpDecVfd library hides this oddity

0x20 0xnn 0xnn .... - Draws the ASCII text character following the first byte to the display. The cursor is advanced forward by one position, even if more than one character is drawn

0x40 0xnn 0xnn 0xnn - Sets or unsets the display icons. Each bit in the second through third bytes is assigned to one of the icons, starting it the top left corner of the display. See the enum Icon declaration in HpDecVfd for more specifics

0xAn - Sets display brightness to the value specified by n, where 0 is the dimmest and F is the brightest. The default appears to be approximately C

0xFA - Resets the display. The display will not respond to commands for approximately 65ms after this command