So, before I was interrupted by that server hickup, I was about to write about dot-matrix LCD-displays. I have recently ordered a 128×64 LCD display at This is more-or-less a cat-in-the-bag, as there is no datasheet provided, and there is no clear brand/type of the display. However, a possible datasheet might be this. This datasheet mentions a serial mode, but shown no clue how the controlling in serial mode is supposed to happen. The customer reviews are even more confusing as one user mentions it supports I²C and another user mentions SPI.

In the past, I have had some experience with a KS0107-based display. However, I have no guarantee which controller this display uses. However, it is likely to be a ST7920-based display. At least, if I have to believe a thread on how to get the display working in combination with an arduino. I am not familiar with the arduino platform, but the thread gives a few useful hints. The ST7920 datasheet tells about a parallel and a serial mode. The serial mode looks like a synchronous serial connection. I should provide a clock signal and data. Apart from some synchronisation bits, the serial data seems equal to the data which should be provided at the parallel interface. There is also a pin for selecting between serial and parallel mode.

The Arduino related discussions appear to be using the SPI to interface with this display in serial mode. I am not familiar with the SPI protocol, but from what I have read from it, it’s send-a-byte, receive-a-byte, but according to what I’ve read controlling this display in serial mode is just sending data. The use of SPI for this seems like a hack to me, however, if it works on an hardware SPI bus, it’s less CPU intensive then just bitbanging the protocol over GPIO.

As mentioned, I have been using a KS0107-based display before. I have been using this in parallel mode. Therefore, parallel mode would be my preferred mode for using this display as well. It’s simpler and faster, but it requires more GPIO pins, but I believe I am a little short of GPIO pins, and that’s what makes the serial mode preferable. Since my hardware also has an SPI bus, interfacing it over the SPI bus sounds like an option. Looking at the datasheet, the display also supports a 4 bit operation mode. So this is another alternative to interface such a display.

However, I still have not received my display yet, so it’s just some reading ahead what I’ve done. But the plan is to interface such a display with my Raspberry Pi. I might also order a 4×4 keypad to be used in combination with that display. Looking at the picture it has 8 pins.