1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU0059)

LCD, TFT, OLED, LED modules
admin
Site Admin
Posts: 865
Joined: Sun Aug 05, 2012 4:02 pm

1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU0059)

Post by admin » Fri Apr 17, 2015 4:25 pm

Image



Image

A larger 1.3" version of our ultra low power tiny uOLED display module. This display has the same 128 x 64 pixel resolution of the smaller 0.96" module but has a significantly larger screen. The module also uses the SH1106 driver which provides a configurable serial interface. For communication the display uses a standard serial SPI interface compatible with most microcontroller including Arduinos. To get you up and running quickly we have also written an extensive Arduino library which will not only work with both sizes of display but will also allow you to drive multiple displays from one Arduino board. The display requires 5 digital pins with only 3 extra pins per additional display (two if individual resetting of the modules isn't required).

Available in white pixel: HCMODU0058 or blue pixel: HCMODU0059


Shop links:

1.3" White: http://hobbycomponents.com/displays/621 ... dule-white
1.3" Blue: http://hobbycomponents.com/displays/622 ... dule-white



Image

Module size: 35.5x33.3mm
High pixel density
Resolution: 128X64
Super wide viewing angle: more than 160°
Ultra-low power consumption: normal display 0.06W (far below the TFT display)
Wide supply range: DC 3V-5V (without any changes, directly compatible with common 3.3V and 5V power supply system)
Industrial grade: Operating temperature range -30 C ~ 70 C
Ultra-small size
Chip select CS signal allows for multiple SPI devices on the same bus.
Compatible tolerant interface.
OLED screen, internal driver chip: SH1106
Pixel Colour: White (HCMODU0058), Blue (HCMODU0059)



Image

Please note that some version shipped have different screen print labeling for the two data pins (D0 = SCK & D1 = SDA). See pin out below for more information.

1....GND............(Power ground)
2....VCC.............(3.3V or 5V power supply)
3....D0 / SCK......(CLK Clock)
4....D1 / SDA......(MOSI data)
5....RST.............(Reset)
6....DC..............(Data / command)
7....CS..............(Chip select signal)



Image

Image


Connecting multiple displays:

Image

Note that when using the HCuOLED library, if you don't require the option of resetting multiple displays individually you can connect the reset pins on each module together and drive them from one digital pin on your Arduino. Therefore you will only require an additional 2 digital pins per display.


Image

  1. #include "HCDisplay.h"
  2.  
  3. // Default pins
  4. #define CS_PIN     4
  5. #define DC_PIN      3
  6. #define RST_PIN     2
  7.  
  8. HCDisplay HCDisplay;    //Creates an instance of the HCDisplay library
  9.  
  10. unsigned int MaxX, MaxY;
  11. boolean FGColour = 1;
  12.  
  13.  
  14.  
  15. void setup()
  16. {
  17.   // Initialise the display
  18.   HCDisplay.Init(CS_PIN, DC_PIN, RST_PIN);   //Initialise the display
  19.  
  20.   /* Get the screens X & Y resolution */
  21.   MaxX = HCDisplay.ResX() - 1;
  22.   MaxY = HCDisplay.ResY() - 1;
  23.  
  24.   /* Draw a boarder */
  25.   HCDisplay.Rect(0 , 0, MaxX, MaxY, OUTLINE, 1);
  26.   HCDisplay.Rect(0 + 3 , 0 + 3, MaxX - 3, MaxY - 3, OUTLINE, 1);
  27.  
  28.   /* Print some text */
  29.   HCDisplay.Pos(44,8);
  30.   HCDisplay.Print("Hobby");
  31.   HCDisplay.Pos(24,18);
  32.   HCDisplay.Print("Components");
  33.  
  34.   HCDisplay.Pos(14,30);
  35.   HCDisplay.Print("1.3\" I2C OLED");
  36.  
  37.   /* Change the font */
  38.   HCDisplay.SetFont(MedProp_12ptFont);
  39. }
  40.  
  41.  
  42. void loop()
  43. {
  44.   /* Make some text flash by swapping the texts foreground and background colours */
  45.   HCDisplay.SetFG(FGColour);
  46.   HCDisplay.SetBG(!FGColour);
  47.   HCDisplay.Pos(10,42);
  48.   HCDisplay.Print("HCMODU0158");
  49.  
  50.   FGColour = !FGColour;
  51.  
  52.   delay(200);
  53. }



Image

HCDisplay Arduino library for above sketch is available for download from the software section of our support forum here:

viewtopic.php?f=58&t=2827



SH1106 Datasheet:
SH1106.pdf
SH1106 command table showing the command number, the hex commands and the POR values. Thanks to nigelmercier for creating this.
SH1106 Command Table.pdf

1.3" OLED display datasheet:
GMO13002-4PIN(1_3) SERIES Spec.pdf

Schematics:
1.3-4-SPI.pdf


FAQ:

Does this module support I2C?

By default this module uses an SPI interface. The module can be modified to support I2C but this requires removal and linking surface mount components and pads. Which pads will require linking or unlinking will depend greatly on the version of display shipped but will normally be shown in screenprint on the rear of the display.

Connections to the display via I2C are as follows:

MICRO.......DISPLAY
GND.........GND
3.3V........VDD
SCK.........SCK
SDA.........SDA
DIO.........RES

The DC pin will set the I2C address where DC low = 0x3C & DC high = 0x3D.

The HCuOLED library does not support these displays in I2C mode but they are supported via the U8GLIB library. You will need to uncomment the following constructor:

U8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_NO_ACK); // Display which does not send ACK

Also note that at time of writing, the U8GLIB library does not support automatic resetting of the display so you will need to connect the modules RES (reset) pin to a spare DIO pin on your Arduino and manually reset the display by pulsing the pin low before the U8GLIB is initialised. Alternatively you can connect the RES pin to the reset pin of your Arduino so that the display is reset when your Arduino is reset.

**PLEASE NOTE** These modules are sold as SPI displays and as they require a hardware modification to work in I2C we do not support them in this configuration. We cannot replace displays that have been damaged due to improper modification. The information above is only given for customers that are comfortable making this modification. We provide no guarantees or warranty as to its accuracy.



Libraries, example code, and diagrams are provided as an additional free service by Hobby Components and are not sold as part of this product. We do no provide any guarantees or warranties as to their accuracy or fitness for purpose.

Descriptions and diagrams on this page are copyright Hobby Components Ltd and may not be reproduced without permission.
You do not have the required permissions to view the files attached to this post.

Psycho_Moggie
Posts: 2
Joined: Thu Aug 20, 2015 5:00 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by Psycho_Moggie » Sun Aug 30, 2015 11:37 am

I've got one of these working with an Espruino Pico, which is itself a very nice piece of kit. I'm about to write some documentation, and then try to send everything to the Espruino Github repository. I'll post again when I succeed...

Psycho_Moggie
Posts: 2
Joined: Thu Aug 20, 2015 5:00 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by Psycho_Moggie » Thu Sep 10, 2015 8:37 pm

There is now an Espruino module for this display here:
http://www.espruino.com/SH1106
For more details also look here:
http://www.espruino.com/SSD1306

nigelmercier
Posts: 14
Joined: Sun Jan 05, 2014 12:40 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by nigelmercier » Wed Jan 06, 2016 11:34 pm

I've got an existing library that I wrote for a Nokia 5110 LCD. Is it feasible to convert it for use with this device?

andrew
Site Admin
Posts: 1374
Joined: Sun Aug 05, 2012 4:15 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by andrew » Thu Jan 07, 2016 12:48 pm

It would probably need a lot of modification. The 5110 uses a different driver and interface to the SH1106. It may be possible to write a wrapper or modify the low level functions that write to the display but because the screens are also different resolutions you would probably have to modify other functions in the library too. Depending on how the library is written it will probably be less work to modify your program to work with an existing library. I.e. our HCuOLED library.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.

nigelmercier
Posts: 14
Joined: Sun Jan 05, 2014 12:40 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by nigelmercier » Thu Jan 07, 2016 1:39 pm

Thanks for your reply. The only problem is that I'm using a PIC, so have a lot of code to convert if I use your library. My only output requirements are text with a 5x8 font, and text with a font that spans 5 rows; the latter is done by sending each row as a partial glyph of the large character. I don't have any need for drawing or scrolling etc.

The main functions I need to "borrow" are the initialisation sequence, and the code that does the actual SDI output. At present I do this with bit-banging, although I could use the SDI port in a later revision of my PCB.

Also, is there a more current datasheet for this?
[EDIT] Found this:[LINK REMOVED BY ADMIN]

andrew
Site Admin
Posts: 1374
Joined: Sun Aug 05, 2012 4:15 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by andrew » Thu Jan 07, 2016 4:43 pm

I've updated the datasheet in the first post.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.

nigelmercier
Posts: 14
Joined: Sun Jan 05, 2014 12:40 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by nigelmercier » Thu Jan 07, 2016 10:21 pm

Also found this [LINK REMOVED BY ADMIN - See section 5.2 of forum terms and conditions]

nigelmercier
Posts: 14
Joined: Sun Jan 05, 2014 12:40 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by nigelmercier » Sat Jan 09, 2016 8:59 am

Sorry, just trying to be helpful!

Do you have an ETA for these to be in stock?

andrew
Site Admin
Posts: 1374
Joined: Sun Aug 05, 2012 4:15 pm

Re: 1.3" SH1106 uOLED Display Module (HCMODU0058 & HCMODU005

Post by andrew » Sat Jan 09, 2016 9:50 am

Do you have an ETA for these to be in stock?
Not at the moment I'm afraid. I'm told that some robotic toy manufacturer bought out most of the market in the second half of last year and the shortage has caused the price of them to shoot up. We're waiting for the price to fall again before buying new stock. The price of the 0.96" displays has now fallen so hopefully the price of the 1.3" ones will drop soon too.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.

Post Reply

Return to “Display”