Arduino library for 4D Systems OLED displays

Hi there, I would like to share here a new little library i wrote for the micro-OLED displays from 4D Systems. It is initialy for the 4Display-Shield boards for Arduino but since all these displays works with serial commands to draw full color graphics, it will works too on the following single displays:

  • uOLED-96
  • uOLED-128
  • uOLED-160
  • uLCD-144

The display must use the SGC (Serial Graphic Commands) firmware to work. The library is called DisplayShield4d and can be downloaded from Google code here:

Of course is open source and licenced under the GNU GPL v3 license. You can use, share, modify and contribute as well! :)

This new library is tested on the Arduino 0021 and works well even if they don't have all the functions yet, you can draw full colored lines, circles, rectangles, triangles and text. I will add more functions soon. A demo sketch is available too on the repository.

Also i've do a little demo video (yes, in spanish!) to let you see how is done:

Hope this little library help and any comments will be very apreciated!

Regards, Oscar Gonzalez

Hello Oscar

I've not had any luck with your library... I have the 160G1 display and I have it working using a different library but i would like to try yours. I'm using Arduino 21 with the 4d shield and a UNO.

The display is blank with your demo program. BTW I notice you don't try to power down the display in the demo but I think you have a powerdown in your library.


Has anyone besides Oscar got this library to work? I'm using an uno and the 160 sized oled display.


You must keep in mind that these display shield do not come allways with the right firmware. You will need the latest SGC firmware in order the work with the library. It succefully worked on the 96 and 128 shields for me. If your display have GFX firmware, the library will not work. 4D Systems allways recomend to update the firmware prior to use the display.
Also the powerdown function is not used for now and the library is allmost under development.

In the next days i will place a new update of the library (currently the r6 version) with some improvments from many guys who contact me about the lib. Of course, feel free to contribute on the Google code repository, just ask me :slight_smile:

Best regards,
Oscar Gonzalez

Thanks very much for your reply and your hard work. I will try the update.

Take care, Kevin