Community Forum
    • Blog
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    New Adafruit generic OLED display driver for Raspberry PI

    Scheduled Pinned Locked Moved Blog articles comments
    driver1.30.96i2ciic
    53 Posts 20 Posters 40.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B Offline
      boik
      last edited by

      Hi Charles. I am trying to use your library to drive a 128x64 SPI OLED display I got from the internet. It is advertised as being SSD1106 (which I assume means SH1106). I have hacked the CS detect line of your code to force it to use SPI instead of the default I2C (this display has no CS pin). I am getting something on the display, but quite garbled.

      Here is a video of it running your OLED_demo. https://youtu.be/bETtabNliYc

      Are these symptoms familiar to you. Any ideas of what might need tweaking.

      Many thanks

      Graham

      1 Reply Last reply Reply Quote
      • CharlesC Offline
        Charles
        last edited by

        @boik,
        Strange, first time I see SPI oled without CS line, would you mind post a picture of the back ?

        You're right I forgot to add SPI option for SH1106 in oled_demo.

        1 Reply Last reply Reply Quote
        • B Offline
          boik
          last edited by

          Hi Charles,

          [IMG]http://i68.tinypic.com/6zwsjl.jpg[/IMG]

          Heres a pic of it running the circle, square, triangle cross demo. Just displays the bottom 8 lines of the image but at the top of the OLED.

          [IMG]http://i64.tinypic.com/2mhbn7k.jpg[/IMG]

          Not sure if this forum accepts IMG tags?

          Graham

          1 Reply Last reply Reply Quote
          • D Offline
            Deennoo
            last edited by

            Hello Charles

            I got a freebox server out of ordre.

            There is a ssd1327 screen on it.

            If i send you the pcb pictures can you help me to find the good pin to plug it to my PI ?

            M 1 Reply Last reply Reply Quote
            • CharlesC Offline
              Charles
              last edited by

              @Deennoo
              you can post the picture on the forum, may be some other will know, because I'm not sure I will.

              1 Reply Last reply Reply Quote
              • M Offline
                Matthieu Laborie @Deennoo
                last edited by

                @Deennoo

                Hi, did you succeed getting the freebox server Oled Display work with a raspberry or Arduino? Did you find any wiring schema, or source code. I would like to reuse the whole SSD1327 and CAP1066 pad of the freebox.

                Regards

                1 Reply Last reply Reply Quote
                • A Offline
                  akdracom
                  last edited by

                  I followed your procedures and up to the part of :

                  git clone https://github.com/hallard/ArduiPi_OLED

                  and received the following error message and can't go further :

                  fatal: could not create work tree dir 'ArduiPi_OLED'.: No space left on device

                  I am using a 8GB SD card and I think I have enough space - don't I ?

                  I then issued df -Bm command to check space with following :

                  Filesystem 1M-blocks Used Available Use% Mounted on
                  /dev/root 4196M 4087M 0M 100% /
                  devtmpfs 483M 0M 483M 0% /dev
                  tmpfs 487M 0M 487M 0% /dev/shm
                  tmpfs 487M 7M 481M 2% /run
                  tmpfs 5M 1M 5M 1% /run/lock
                  tmpfs 487M 0M 487M 0% /sys/fs/cgroup
                  /dev/mmcblk0p6 63M 20M 44M 31% /boot
                  tmpfs 98M 0M 98M 0% /run/user/1000

                  Am I running out of memory or what, please advise - thanks

                  1 Reply Last reply Reply Quote
                  • A Offline
                    akdracom
                    last edited by

                    I forget to mention that in my SD card - I also have installed a media player OS (OpenElec) in addition to the Raspian OS

                    1 Reply Last reply Reply Quote
                    • CharlesC Offline
                      Charles
                      last edited by

                      @akdracom
                      your're missing space on SD card 100% on /dev/root, you're SD seems to be formatted to 4GB

                      May be trying raspiconfig and select the menu to expand filesystem to use full SD Size (8GB) will help

                      1 Reply Last reply Reply Quote
                      • D Offline
                        donde
                        last edited by

                        Screen Never Lights
                        New to OLED. Waiting for SSH1306 1.3" display like on Adafruit website. Sent for SH1106 display instead. Pinouts are left to right: VDD VSS SCK SDA D/C CS1 FS0 CS2
                        Using Pi Zero. Went through tutorial OK I think. 2 problems:

                        root@raspberrypi:~# ls /dev/i2c*
                        /dev/i2c-0
                        root@raspberrypi:~# ls /dev/spi*
                        /dev/spidev0.0 /dev/spidev0.1

                        The first check returned /dev/i2c-1 instead of /dev/i2c-0
                        The second response was OK.
                        Now I wasn't at root when I did commands, but at user.
                        Other problem I had to supply sudo for
                        ./oled_demo --verbose --oled 6
                        I received this:

                        pi@raspberrypi:~/ArduiPi_OLED/examples $ ./oled_demo --verbose --oled 6
                        oled_demo v1.1
                        -- OLED params --
                        Oled is : SH1106 I2C 128x64
                        -- Other Stuff --
                        verbose is : yes

                        bcm2835_init: Unable to open /dev/mem: Permission denied
                        pi@raspberrypi:~/ArduiPi_OLED/examples $ sudo ./oled_demo --verbose --oled 6
                        oled_demo v1.1
                        -- OLED params --
                        Oled is : SH1106 I2C 128x64
                        -- Other Stuff --
                        verbose is : yes

                        x: 9y: 0dy: 3
                        x: 30y: 0dy: 2
                        x: 111y: 0dy: 2
                        x: 81y: 0dy: 4
                        x: 41y: 0dy: 2
                        x: 85y: 0dy: 5
                        x: 7y: 0dy: 5
                        x: 76y: 0dy: 2
                        x: 72y: 0dy: 3
                        x: 76y: 0dy: 4

                        Nothing on screen!
                        I wired it this way from Pi Zero
                        Pi 5 volts to Vdd
                        Pi GND to Display VSS
                        Pi SCL to Display SCK
                        Pi SDA to Display SDA
                        IO25 to Display FSO

                        No ID on Display, just this description:

                        Features

                        Self-luminous display for backlight
                        High resolution: 128 x 64
                        Viewing angle: >160 degree
                        Supports many control chip: Fully compatible with Arduino, 51 Series, MSP430 Series, STM32 / 2, CSR IC, etc.
                        Ultra-low power consumption: full screen lit 0.08W
                        Voltage: 3V ~ 5V DC
                        Working Temperature: -30 oC ~ 70 oC
                        Module Size: 32.0mm x 35.50mm x 4.1mm
                        SPI Interface, need 4 IO only.
                        Driver IC: SH1106
                        

                        Package Includes

                        1 x 1.3" SPI Serial 128X64 OLED LCD LED Display Module for Arduino UNO R3
                        

                        Not sure what try next. What turns on screen to see at least something?
                        Thanks ... donde

                        1 Reply Last reply Reply Quote
                        • D Offline
                          donde
                          last edited by

                          I looked closer at box the display came and it said it is for SPI mode. I tried i2C and didn't light up. Then, tried SPI and still no success. Doesn't seem to be a RST pin. I see no pictures of the same pin arrangement on the Net. Looks to be a special display no one knows about. Guess I'll return it and hopefully the SSH1306 will be available soon, Sorry to take up so much room here is this comments section. Moderator, you can delete all I said on first post. donde

                          1 Reply Last reply Reply Quote
                          • fiveseven808F Offline
                            fiveseven808
                            last edited by

                            I'm wondering if anyone can help me here... so using I2C, this driver works flawlessly! However, using SPI, I can't get my display to do anything (using the pinouts on the site). I know the display sort of works because the adafruit python library displays something (i think something is wrong with my screen). However, there is zero response with SPI.

                            Any ideas?

                            1 Reply Last reply Reply Quote
                            • S Offline
                              shiftleftplusone
                              last edited by

                              hello,
                              can you please provide compile/build parameter settings and examples hw to use this lib with Geany, providing system-wide paths to #include the libs from each proprietary source code program located in any different directory?

                              1 Reply Last reply Reply Quote
                              • S Offline
                                shiftleftplusone
                                last edited by

                                hello,
                                you specified the following types:
                                0 Adafruit SPI 128x32
                                1 Adafruit SPI 128x64
                                2 Adafruit I2C 128x32
                                3 Adafruit I2C 128x64
                                4 Seeed I2C 128x64
                                5 Seeed I2C 96x96
                                6 SH1106 I2C 128x64

                                the chip of the 6th is obvious, but which chip types are especially 1,3, and 4?
                                what about the i2c dev addresses of these OLEDs, and how to change them in the code if needed?

                                1 Reply Last reply Reply Quote
                                • S Offline
                                  shiftleftplusone
                                  last edited by

                                  another question:
                                  you wrote
                                  " Added millis() function"

                                  But millis() is already provided by Gordon Henderson's WiringPi lib which I always use - I'm afraid that will cause interferences and problems. How can one fix that problem?

                                  1 Reply Last reply Reply Quote
                                  • S Offline
                                    shiftleftplusone
                                    last edited by

                                    and 3rd,
                                    how to optionally the OLEDson i2c-1 or/and on i2c-0 ?

                                    1 Reply Last reply Reply Quote
                                    • S Offline
                                      shiftleftplusone
                                      last edited by

                                      sorry, typos:
                                      and 3rd,
                                      how to optionally drive the OLEDs on i2c-1 or/and on i2c-0 ?

                                      1 Reply Last reply Reply Quote
                                      • T Offline
                                        tito
                                        last edited by

                                        now I'm running into the same issues as the former user:
                                        examples are running as sudo from console, but if I load the example source oled_demo.cpp into Geany, it compies, but buils does not work.
                                        which are the exact parameters for the library to link to?
                                        -I/ArduiPi_OLED ??
                                        -L/ArduiPi_OLED ??

                                        1 Reply Last reply Reply Quote
                                        • CharlesC Offline
                                          Charles
                                          last edited by

                                          It's L of "Library" but in lower case

                                          so but I do not know if Geany requires the -l switch before or not so you can try
                                          -lArduiPi_OLED or ArduiPi_OLED

                                          1 Reply Last reply Reply Quote
                                          • T Offline
                                            tito
                                            last edited by

                                            oh yes, a lowercase l (L) seems to work, and no -L is required as it seems, and now it also runs started out of different folders, thank you!

                                            • Tim
                                            1 Reply Last reply Reply Quote
                                            • First post
                                              Last post

                                            7

                                            Online

                                            5.7k

                                            Users

                                            534

                                            Topics

                                            5.0k

                                            Posts

                                            Top Topics

                                            • Denky 4 - Domoticz - Triphasé -
                                              Nicolas BernaertsN
                                              Nicolas Bernaerts
                                              0
                                              7
                                              241

                                            • Denky D4 et Linky Standard TInfo Rx Non Configuré
                                              CharlesC
                                              Charles
                                              0
                                              5
                                              280

                                            • CC1101
                                              CharlesC
                                              Charles
                                              0
                                              2
                                              116

                                            Popular Tags

                                            teleinfo
                                            24 topics
                                            arduino
                                            19 topics
                                            remora
                                            16 topics
                                            esp8266
                                            10 topics
                                            arduipi
                                            10 topics
                                            wifinfo
                                            7 topics
                                            raspberry
                                            7 topics
                                            broadcast
                                            7 topics
                                            Copyright © 2022 Charles-Henri Hallard | Return to blog page | Powered by NodeBB