Rustic Engineering

My Mind working on…

OLED 0.96″ Breakout Board (SH1101A Driver)

with 19 comments

Some mounts ago I’ve bought a PIC24F Starter Kit. It’s a very nice development kit from Microchip for who wants know about USB OTG, Capacitive Touch Sensor and more. But I really like is the OLED display it comes.

The OLED is very small but with a good resolution (128×64 pixel). It’s monochrome black and white and, believe or not, very bright but without backlight! Well, I’m very impressed and obviously imagine what I can do if I have a small OLED like that.

So I’ve started to find the manufacture of OLED. I find some information at Microchip driver code and with some Google research:

  • It’s use a Sino Wealth SH1101A controller;
  • Parallel  or SPI interface. Very nice feature for a display;
  • The controller logics operates with 2.4V – 3.5V, but OLED requires 7.0V – 16V. It’s have a internal simple DC/DC Booster for that;
  • The display is constructed with COG  (Chip-On-Glass) technology;
  • There’s a version where 128×16 pixels being yellow OLED, and 128×48 pixels as blue OLED;
  • Crystalfontz sells this Yellow/Blue with code CFAL12864N-A-B1;
  • Univision has the Black/White and Yellow/Blue version;

After that, I’ve started design a board to this OLED. Oh, if you don’t know what OLED means visit Wikipedia page.  My design concentrates in a breadboard friendly board. The circuit is little variation of the circuit founded in Microchip PIC24F Starter Kit schematics. I’ve substituted some components for more flat and foundable items. Basically I change the inductor, the N-Channel MOSFET and the diode. You can see the design bellow:

Eagle cad board

Design goods:

  • 0.1″ pin space and breadboard friendly;
  • It comes with SPI interface preseted. If you want use 8080 parallel interface, simply pull-up “P/S” pin;
  • Very flat design with only SMD parts;
  • Clear pin identification;
  • Small size (don’t increase OLED size too much);
  • Can be hand soldered (whitout hot-bar or even hot-air station);

That’s my board finished:

My board and OLED

Circuit and solder

First test...

Breadboard friendly

Low profile

I really like this board because it’s work at first time, and it’s not so common in electronics word with your first board design. After some tests, I’ve learning some useful information about the OLED displays in general:

Most of OLED displays have SPI interface. But most of them don’t let you read the display RAM data with SPI interface, because it’s a SPI 3-Wire interface. When you cannot read  display RAM, should be impossible make functions that read display RAM and alter only one pixel (for example). So, some simple functions (like line creation) became very complex if you like to use it without modify some graphics already displayed. Example: if you have a picture and draw a line, you will change some blocks of RAM, don’t only the line pixels. I’m working on that problem.

If you like this board, email-me at lubiana@gmail.com. I’ve five empty boards and five OLED yet.

Bye.

Written by forrequi

May 10, 2010 at 16:33

Posted in electronic, engineering, LCD, OLED, pcb, projects

Tagged with , , , ,

19 Responses

Subscribe to comments with RSS.

  1. Dear Friend,

    Congratulations for your achievement !

    Did you use a PIC on this sample ?

    Is your source code for this project public or will you sell it ?

    Thank you

    Regards,

    Sérgio

    Sergio

    June 22, 2010 at 13:17

    • I’m using a PIC18LF2620, but others will work too. If you need the code I’ll send to you without any charge. But if you need to use more advanced features, I also recommends the Microchip Graphics Library. They have support for OLED controller (SH1101A) with Graphics Objects Layer for easy development. And the best… is free. Email-me if need my code.

      forrequi

      June 22, 2010 at 20:48

  2. Grat job,

    I’m also trying to handle this OLED part with the PIC18F4X family chips.

    Your idea to have this board simplify the prototype job.

    I would appreciate if you can share the Eagle PCB files.

    Regards
    Javier

    Javier Gonzalez

    July 4, 2010 at 20:04

  3. Nice work.Very neat design
    ..Would appreciate if you can send the schematic and PCB files to me.

    sans

    July 30, 2010 at 17:48

  4. Many thanks forreky, i’ve seen and downloaded your Eagle PCB files. Great!

    Javier Gonzalez

    August 7, 2010 at 20:22

  5. Olá Colega,

    depois de um longo período sem poder mecher em nenhum dos meus projetos, eu voltei a tentar fazer esse display funcionar.
    Eu estou finalizando a “tradução” do seu fonte para a o compilador Swordfish basic.
    Mas, antes que eu “frite” o meu display, eu decidi te perguntar o seguinte : Vi nas suas fotos que você está usando um 18LF, que opera em 3.3V, que é a mesma tensão do display.
    Isso é mandatório, ou eu posso usar um pic em 5Volts, como o 18F2550 ?

    Obrigado e um abraço.

    Sèrgio Pinheiro

    Sergio

    September 27, 2010 at 17:52

    • Bom dia Sergio,

      Infelizmente deve-se respeitar o limite de 3.5V nas interfaces do OLED, pois seu controlador, o CI SH1101A é bem chato quanto a isso. O que você pode fazer é migrar para a linha LF da Microchip (que trás várias vantagens) ou usar artifícios como “level shifters”. Particularmente optar por trabalhar em 3.3V é muito mais vantajoso, pois hoje em dia existem muito mais sensores e dispositivos nesta faixa (mais baratos). Para ter idéia estou pensando em migrar para 2.5V!

      Abraços.

      forrequi

      September 27, 2010 at 20:32

  6. Obrigado !!!!

    Sergio

    September 27, 2010 at 23:56

  7. Hi

    Just one information: Did you monitor the power consumption with the entire circuit? Can you give me how many milli-Amps this circuit consume?
    Also, I would like to do mine, can be possible to know which is the components you use?

    Many thanks,
    Placido

    Placido

    September 30, 2010 at 09:24

  8. Fantastic! Is there any chance I could get a copy of your code? I’m working with a dsPIC but the basics will be the same (hopefully). I’ve had this OLED for a while and have been wondering how to mount it on a test board – I downloaded your eagle files, very useful! Thanks in advance – AndyK

    AndyK

    October 21, 2010 at 17:21

  9. Hi, I am working on a project using this small OLED display. What are the requirements for the external DC-DC converter components? (Power ratings on the resistors, Max current on the inductor and MOSFET). I didn’t see that defined on the datasheet. Do you have a bill of materials? Thanks!!

    Gabriel Anzzianiq

    October 22, 2010 at 18:25

    • Hi Gabriel,

      The power requirements on external DC-DC converter is very low. The max current is about 900uA, so you can design with very small packages. My bill of materials is:

      Exported from OLED_096_SH1101A_main.sch at 10/22/10 9:56 PM

      EAGLE Version 5.9.0 Copyright (c) 1988-2010 CadSoft

      Part Value Device Package Library Sheet

      C1 1~4.7UF C-EUC0805 C0805 rcl 1
      C2 4.7~6.8uF C-EUC0805 C0805 rcl 1
      C3 1uF C-EUC0805 C0805 rcl 1
      C4 1uF C-EUC0805 C0805 rcl 1
      C5 1nF C-EUC0805 C0805 rcl 1
      C6 1uF C-EUC0805 C0805 rcl 1
      D1 BAT42WS DIODESOD SOD-323 Forrequi 1
      L1 10uH LPO4812 LPO4812 Forrequi 1
      Q1 SI2302 MOSFET-NCHANNELSMD SOT23-3 Forrequi 1
      R1 820K R-US_R0805 R0805 rcl 1
      R2 82K R-US_R0805 R0805 rcl 1
      R3 820K R-US_R0805 R0805 rcl 1
      R4 0.12R 1% R-US_M1206 M1206 rcl 1
      R5 10K R-US_R0805 R0805 rcl 1
      U$2 OLED-128X64-096 OLED-128X64-096 UG-2864AMBAG01 Forrequi 1

      Thank’s

      forrequi

      October 22, 2010 at 23:58

    • Gabriel,

      Not sure where you live, but the only component I could not find on the Digikey website was the SMD inductor. I went to http://www.coilcraft.com and was able to order some samples. They will ship free to the US but you may have to pay for shipping elsewhere. The other components are nothing special. Hope this helps!

      AndyK

      AndyK

      October 25, 2010 at 12:24

      • I will not use the same inductor. Since the inductor doesn’t need to handle much current, I will use a simple 10uH inductor in an 0805 package.

        Gabriel Anzziani

        October 27, 2010 at 05:19

  10. Olá Gabriel,

    antes de mais nada, muito obrigado, mais uma vez pelo código-fonte que você me passou. Funcionou muito bem ! Obrigado mesmo.
    Tenho mais uma pergunta : você me autoriza a compartilhar o código-fonte com alguns amigos ?

    Abraços.

    Sérgio

    Sergio

    October 28, 2010 at 22:34

    • Desculpe Rodrigo… errei seu nome. Estava lendo o post de cima quando escrevia amensagem acima. Desculpa.

      Sergio

      October 28, 2010 at 23:17

      • Ah sim, agora entendi. Pode sim passar o código, não tem nada demais. Bom proveito.

        forrequi

        October 29, 2010 at 01:11

  11. Obrigado mais uma vez Rodrigo !

    Sergio

    October 29, 2010 at 02:08


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: