# Recommendations for a low resource SH1106 OLED Driver

**URL:** <https://forum.arduino.cc/t/recommendations-for-a-low-resource-sh1106-oled-driver/591089>\
**Category:** Displays\
**Created:** [May 11, 2019, 4:47pm UTC](https://forum.arduino.cc/t/recommendations-for-a-low-resource-sh1106-oled-driver/591089 "2019-05-11T16:47:15Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![JohnRob](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/johnrob/32/253560_2.png) [@JohnRob](https://forum.arduino.cc/u/JohnRob)\
**Post date:** [May 11, 2019, 4:47pm UTC](https://forum.arduino.cc/t/recommendations-for-a-low-resource-sh1106-oled-driver/591089/1 "2019-05-11T16:47:15Z")

</div>

I'm looking for a "small" 1.3" OLED driver (SH1106) to display 4 rows of text.

Being a full graphics display I'm not sure it makes a difference but I'm hoping there is a way to reduce the ProMini required resources. I've have the U8gLib running and it requires more µP resources than I would like.

Has anyone run into a lower capability driver for this device?

Thanks  
John

---

<div class="post-metadata">

**Author:** ![bitbank](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/bitbank/32/238889_2.png) [@bitbank](https://forum.arduino.cc/u/bitbank)\
**Post date:** [May 29, 2019, 7:41am UTC](https://forum.arduino.cc/t/recommendations-for-a-low-resource-sh1106-oled-driver/591089/2 "2019-05-29T07:41:54Z")

</div>

> JohnRob:  
> I'm looking for a "small" 1.3" OLED driver (SH1106) to display 4 rows of text.
> 
> Being a full graphics display I'm not sure it makes a difference but I'm hoping there is a way to reduce the ProMini required resources. I've have the U8gLib running and it requires more µP resources than I would like.
> 
> Has anyone run into a lower capability driver for this device?
> 
> Thanks  
> John

You can try my oled\_96 library; on AVR it defaults to not use a back buffer and therefore only needs a few bytes of local vars to draw text. It supports SSD1306 and SH1106. To use a SH1106 display, choose OLED\_132x64 as the display type:  
[Larry's OLED library](https://github.com/bitbank2/oled_96)

---

<div class="post-metadata">

**Author:** ![Buleste](https://avatars.discourse-cdn.com/v4/letter/b/c67d28/32.png) [@Buleste](https://forum.arduino.cc/u/Buleste)\
**Post date:** [May 29, 2019, 7:58pm UTC](https://forum.arduino.cc/t/recommendations-for-a-low-resource-sh1106-oled-driver/591089/3 "2019-05-29T19:58:39Z")

</div>

If it's just text you're after then this library [Basic/OLED\_Functs.ino at master · esp8266/Basic · GitHub](https://github.com/esp8266/Basic/blob/master/ESP8266Basic/OLED_Functs.ino) and also download the fonts.h from there and that is a really small library.

The only difference though is you will need to change this

```cpp
static void setXY(unsigned char row, unsigned char col)
{
  sendcommand(0xb0 + row);              //set page address
  sendcommand(0x00 + (8 * col & 0x0f)); //set low col address
  sendcommand(0x10 + ((8 * col >> 4) & 0x0f)); //set high col address
}

```

to this

```cpp
static void setXY(unsigned char row, unsigned char col)
{
  sendcommand(0xb0 + row);              //set page address
  sendcommand(0x02 + (8 * col & 0x0f)); //set low col address
  sendcommand(0x10 + ((8 * col >> 4) & 0x0f)); //set high col address
}

```

---

<div class="post-metadata">

**Author:** ![olikraus](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/olikraus/32/214084_2.png) [@olikraus](https://forum.arduino.cc/u/olikraus)\
**Post date:** [May 29, 2019, 8:34pm UTC](https://forum.arduino.cc/t/recommendations-for-a-low-resource-sh1106-oled-driver/591089/4 "2019-05-29T20:34:31Z")

</div>

> JohnRob:  
> Being a full graphics display I'm not sure it makes a difference but I'm hoping there is a way to reduce the ProMini required resources. I've have the U8gLib running and it requires more µP resources than I would like.
> 
> Has anyone run into a lower capability driver for this device?

The U8glib successor U8g2 includes a low memory text only interface, called U8x8.

Oliver

---

<div class="post-metadata">

**Author:** ![system](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/system/32/1140315_2.png) [@system](https://forum.arduino.cc/u/system)\
**Post date:** [May 6, 2021, 4:00am UTC](https://forum.arduino.cc/t/recommendations-for-a-low-resource-sh1106-oled-driver/591089/5 "2021-05-06T04:00:54Z")

</div>


