I'm working on a cool little project and it's going quite smoothly and I've managed to integrate the other 3-4 devices into the Pi however there is one part of this project I am stuck on

I'm unsure how to go about programming this 3.2" Green on Black OLED screen.

There is also this demo program however it is unfortunately utilizing a 8bit interface

I've been searching around for months now with some sort of detailed break down on what is needed and how to go about programming such a device.. If anyone could point me in the correct direction or spread some knowledge on me I would be eternally grateful

  • It may be far quicker to buy another screen with known driver support. These devices are quite hard to get working. Virtually every part of the initialisation sequence must be correct to get anything on the screen at all. The initialisation sequence depends on the driver chip and screen. Good luck.
    – joan
    Jan 8, 2015 at 11:59

2 Answers 2


That display seams to use SSD1322 chip, which can be interfaced as mentioned in this topic. Your link also has C code for accessing display from 8051 microcontroller. It can be adapted for PI if you want slower access through GPIO instead of faster SPI interface.


Have a look at https://github.com/notro/fbtft/wiki where you will find framebuffer drivers for the Raspberry Pi. A huge list of displays are supported, and you may be lucky and find one driver that is compatible with your display. If not, there is also a “generic driver” which can be configured to support displays not on the list.

If you manage to configure your display using one of the Notro framebuffer drivers, the framebuffer will be available as a device, /dev/fb1, which you can map to memory and then write to.

There are a lot of options for drawing to the display. The Pygame library can be used, and Adafruit has an excellent tutorial explaining how.

Edit: If your display is based on SSD1322, you're in luck, as support for it is going to be included in FBTFT: https://github.com/notro/fbtft/issues/199

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.