edit

Grove - OLED Yellow&Blue Display 0.96(SSD1315) - SPI/IIC -3.3V/5V

The Grove - OLED Yellow&Blue Display 0.96 (SSD1315) is a blue and yellow two-colour display with 128*64 resolution. Compared with LCDs, there are many advantages on OLED(Organic Light Emitting Diode) like self-emission, high contrast ratio, slim/thin outline, wide viewing angle and low power consumption. The display works on both 3.3V and 5V supply voltage. You can use either I2C or SPI interface to light up the display with your microcontroller to display words, images, and whatever you want.

Feature

  • 3.3V/5V power supply compatible
  • Changeable I2C address
  • SPI available
  • Low power consumption
  • Yellow and Blue two-colour 128×64 pixels
  • High contrast, high brightness
  • Wide operating temperature range: -40℃ ~ +85 ℃

Specification

Parameter Value
Input voltage 3.3V / 5V
Output Voltage 0 ~ 2.3V
Pixels 128 x 64
Temperature Range -40℃ ~ +85 ℃
Interface I2C/SPI

Platforms Supported

Arduino Raspberry Pi

Getting Started

Play With Arduino

Materials required

Seeeduino V4.2 Base Shield Grove - OLED Yellow&Blue Display 0.96"
enter image description here enter image description here enter image description here
Get ONE Now Get ONE Now Get ONE Now

In addition, you can consider our new Seeeduino Lotus M0+, which is equivalent to the combination of Seeeduino V4.2 and Baseshield.

Hardware Connection (I2C)

  • Step 1. Plug Grove - OLED Yellow&Blue Display 0.96" to I2C port of Grove - Base Shield using Grove cable.

  • Step 2. Plug Grove - Base Shield into Seeeduino.

  • Step 3. Connect Seeeduino to a PC via a USB cable.

Software (I2C)

Attention

If this is the first time you work with Arduino, we strongly recommend you to see Getting Started with Arduino before the start.

  • Step 1. Navigate to Sketch -> Include Library -> Manage Libraries... and Search and Install U8g2 library in the Library Manager.

  • Step 2. Open the Arduino IDE and create a new file, then copy the following code into the new file.

#include <Arduino.h>
#include <U8g2lib.h>

#ifdef U8X8_HAVE_HW_SPI
#include <SPI.h>
#endif
#ifdef U8X8_HAVE_HW_I2C
#include <Wire.h>
#endif

U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE);    //Software I2C

void setup(void) {
  u8g2.begin();
}

void loop(void) {
  u8g2.clearBuffer();                   // clear the internal memory
  u8g2.setFont(u8g2_font_luBIS08_tf);   // choose a suitable font
  u8g2.drawStr(0,10,"Hello Seeed!");    // write something to the internal memory
  u8g2.drawStr(0,30,"Hello Studio!");    // write something to the internal memory
  u8g2.drawStr(0,50,"Hello World!");    // write something to the internal memory
  u8g2.sendBuffer();                    // transfer internal memory to the display
  delay(100);  
}
  • Step 3. Upload the demo. If you do not know how to upload the code, please check How to upload code.

  • Step 4. The OLED Display should look like this:

Hardware Connection (SPI)

  • Step 1. Soldering male header and connect the wires.

  • Step 2. Please follow the YELLOW line to cut down the wire on the board and follow the WHITE line to solder the SPI pannels and the middle pannels one by one.

Caution

Please be careful to cut the wires one by one by following the YELLOW lines, otherwise you will damage all the display. We recommand you to cut the wires under magnifying glass.

Caution: This is the wrong method to cut wires!

  • Step 3. Follow the picture to connect the display and Seeeduino with wires.

  • Step 4. Connect Seeeduino to a PC via a USB cable.

Software (SPI)

Attention

If this is the first time you work with Arduino, we strongly recommend you to see Getting Started with Arduino before the start.

  • Step 1. Navigate to Sketch -> Include Library -> Manage Libraries... and Search and Install U8g2 library in the Library Manager.

  • Step 2. Open the Arduino IDE and create a new file, then copy the following code into the new file.

#include <Arduino.h>
#include <U8g2lib.h>

#ifdef U8X8_HAVE_HW_SPI
#include <SPI.h>
#endif
#ifdef U8X8_HAVE_HW_I2C
#include <Wire.h>
#endif

U8G2_SSD1306_128X64_NONAME_F_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ 12, /* data=*/ 11, /* cs=*/ 10, /* dc=*/ 9, /* reset=*/ 8); // Software SPI
void setup(void) {
  u8g2.begin();
}

void loop(void) {
  u8g2.clearBuffer();                   // clear the internal memory
  u8g2.setFont(u8g2_font_luBIS08_tf);   // choose a suitable font
  u8g2.drawStr(0,10,"Hello Seeed!");    // write something to the internal memory
  u8g2.drawStr(0,30,"Hello Studio!");    // write something to the internal memory
  u8g2.drawStr(0,50,"Hello World!");    // write something to the internal memory
  u8g2.sendBuffer();                    // transfer internal memory to the display
  delay(100);  
}
  • Step 3. Upload the demo. If you do not know how to upload the code, please check How to upload code.

  • Step 4. The OLED Display should look like this:

Play With RaspberryPi

Materials required

Raspberry pi Grove Base Hat for Raspberry Pi Grove - OLED Yellow&Blue Display 0.96"
enter image description here enter image description here enter image description here
Get One Now Get ONE Now Get ONE Now

Hardware Connection(I2C)

  • Step 1. Plug OLED Yellow&Blue Display 0.96" to I2C port of Grove - Base Hat.

  • Step 2. Plug Grove - Base Hat into RaspberryPi.

  • Step 3. Connect RaspberryPi to a PC via Serial or SSH.

Software

  • Step 1. Enable I2C on RaspberryPi
sudo apt-get install -y python-smbus
sudo apt-get install -y i2c-tools
sudo raspi-config

Follow the pictures to enable I2C on your RaspberryPi.

And then reboot your RaspberryPi

sudo reboot
  • Step 2. Install necessary libraries
sudo apt-get install git
sudo apt-get install python-pip python3-pip
sudo apt-get install python-pil python3-pil
sudo pip install Adafruit-BBIO
sudo pip3 install Adafruit-BBIO
sudo pip install Adafruit-SSD1306
sudo pip3 install Adafruit-SSD1306

Then clone the Seeed_Python_SSD1315 from GitHub

git clone https://github.com/IcingTomato/Seeed_Python_SSD1315.git

We can use stats.py for demo.

cd ~/Adafruit_Python_SSD1306/example/
sudo python stats.py

U8g2 Library Introduction

U8g2 is a monochrome graphics library for embedded devices. U8g2 supports monochrome OLEDs and LCDs, which include our chip SSD1315.

The Arduino library U8g2 can be installed from the library manager of the Arduino IDE. U8g2 also includes U8x8 library:

U8g2

  • Includes all graphics procedures (line/box/circle draw).
  • Supports many fonts. (Almost) no restriction on the font height.
  • Requires some memory in the microcontroller to render the display.

U8x8

  • Text output only (character) device.
  • Only fonts allowed with fit into a 8x8 pixel grid.
  • Writes directly to the display. No buffer in the microcontroller required.

Here provides the U8g2 Library wiki as well as the U8g2 API Reference page.

FAQ

Q1# Example not working with other boards?

A1: The U8g2 has different modes while initialising, instead of hardware I2C, it could also use software I2C. If not working, please try to use Software I2C. For more information please visit u8g2. Some examples and brief introductions are also provided here.

Schematic Online Viewer

Resources

Tech Support

Please submit any technical issue into our forum