Skip to content

Usage & Benchmarking

Gleb edited this page Jun 3, 2023 · 23 revisions

This library was originally designed to work only on:

  • 128x64 OLED displays driven by the SSD1306 chipset
  • I2C interface
  • Raspberry Pi
  • Debian Linux

As the library has evolved, a number of people have helped to make it work on a variety of different devices. Please refer to the below list to see the documented working cases, and add your own.

I2C

I2C devices should be tested with an I2C baudrate of 400KHz by altering /boot/config.txt to include:

dtparam=i2c_arm=on,i2c_baudrate=400000

0.96" I2C OLED

Date Working Tested by Tested on Linux / Python version FPS Command
2016-12-10 YES @rm-hull OrangePi Zero, 4-core 1.2GHz 256Mb Armbian Jessie / Python 2 55.09 perfloop.py -d ssd1306 -i i2c --i2c-port=0
2016-12-10 YES @rm-hull Rasberry Pi, model B 1-core 700MHz 512Mb Raspbian Jessie / Python 2 26.35 perfloop.py -d ssd1306 -i i2c
2016-12-07 YES @thijstriemstra Raspberry Pi 3B Raspbian Jessie / Python 3.4.2 57.62 perfloop.py -d ssd1306 -i i2c
06.08.2017 YES @BiTinerary NanoPi Neo Air Armbian Jessie / Python 2.7 21.58 perfloop.py -d ssd1306 -i i2c --i2c-port=0
2017-06-11 YES @MicUurloon Raspberry Pi Zero W Raspbian Jessie Lite / Python 2.7.9 19.20 perfloop.py -d ssd1306 -i i2c

0.91" I2C OLED

Date Working Tested by Tested on Linux / Python version FPS Command
2016-12-07 YES @thijstriemstra Raspberry Pi 3B Raspbian Jessie / Python 3.4.2 102.77 perfloop.py -d ssd1306 -i i2c

SPI

0.96" SPI OLED - SSD1306

Date Working Tested by Tested on Linux / Python version FPS Command
2016-12-07 YES @thijstriemstra Raspberry Pi 3B Raspbian Jessie / Python 3.4.2 68.23 perfloop.py -d ssd1306 -i spi

0.96" SPI OLED - SH1106

  • Dimensions: 128 X 64
Date Working Tested by Tested on Linux / Python version FPS Command
2017-01-09 YES @bjerrep Raspberry Pi 3B Arch Linux / Python 3.4.2 66 perfloop.py -d sh1106 -i spi
2017-01-09 YES @bjerrep Raspberry Pi 3B Arch Linux / Python 2.7.13 93 perfloop.py -d sh1106 -i spi

1.5" SPI OLED - SSD1327

Date Working Tested by Tested on Linux / Python version FPS Command
2021-01-01 YES @ntnlabs Raspberry Pi 4B 2GB Raspbian 10 (buster) / Python 3.7.3 1630
python3 perfloop.py --height 128 --width /
128 --interface spi --display ssd1327

1.5" SPI OLED - SSD1351

Date Working Tested by Tested on Linux / Python version FPS Command
2022-04-18 MOSTLY (Red & Blue Colours have swapped) @yuniq-neko Raspberry Pi 4B 4GB Raspbian 11 Bullseye / Python 3.9.2 1960? perfloop.py -d ssd1351 -i spi --width 128 --height 128

2.42" SPI OLED - SSD1309

Date Working Tested by Tested on Linux / Python version FPS Command
2022-10-04 Yes @fox34 Raspberry Pi 4B 4GB Raspbian 11 Bullseye / Python 3.9.2 302 perfloop.py -d ssd1309 -i spi

2.7" SPI OLED - SSD1325

Date Working Tested by Tested on Linux / Python version FPS Command
2022-10-13 Yes @fox34 Raspberry Pi 4B 4GB Raspbian 11 Bullseye / Python 3.9.2 3085 perfloop.py -d ssd1325 -i spi

3.2" SPI OLED - SSD1322

Date Working Tested by Tested on Linux / Python version FPS Command
2023-04-07 Yes @davwheat Raspberry Pi 4B 2GB Ubuntu Server 22.04 / Python 3.10.6 2190 perfloop.py -d ssd1322 -i spi --width 256 --height 64
2023-06-03 Yes @maeb0r0wski Raspberry Pi 3B v1.2 1GB Raspbian GNU/Linux 11 / Python 3.9.2 370 perfloop.py -d ssd1322 -i spi --width 256 --height 64