Thingy53 - Unable to get a SSD1306 OLED display to work with I2C Stemma/Qwiic

Hello,

I've been trying to get a SSD1306 128x64 OLED display to work with a Thingy53 using the I2C Stemma/Qwiic connector. I've used the SSD1306 display many times with nRF52840 and numerous other ARM devices under Zephyr RTOS without any issues.

I have read several related devzone issues but cannot see how to get a simple SSD1306 OLED to work with the Thingy53 nRF5340. Exactly the same code works on nRF52840 with its overlay for the SSD1306 display. The only difference seems to be that Thingy53 nRF5340 uses compatible "nordic, nrf-twim" vs. "nordic, nrf-twi".

What am I missing? I would appreciate your assistance to determine why the overlay below isn't working and needs to be connected. Thank you.


I have a thingy53_nrf5340_cpuapp.overlay, as below

I get the following errors:

00> rtt:~$ [00:00:00.051,788] <err> i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 1
00> rtt:~$ [00:00:00.051,788] <err> ssd1306: Failed to initialize device!
00> rtt:~$ *** Booting nRF Connect SDK v2.5.0 ***
00> rtt:~$ rtt:~$ [00:00:05.002,105] <inf> main: main_thread
00> rtt:~$ [00:00:05.002,166] <inf> main: Zephyr RTOS: 3.4.99

00> rtt:~$ Could not finalize framebuffer (err -19)
00> rtt:~$ Could not finalize framebuffer (err -19)
00> rtt:~$ Could not finalize framebuffer (err -19)
00> rtt:~$ Could not finalize framebuffer (err -19)



Best Regards.

Parents Reply
  • Hi Helmut,

    Thank you for looking at the issue. Much appreciated.

    Unfortunately, I get the same error below with your suggested change. In fact, I also tried using a buffer size of 4096 previously and it made no difference.

    I also tried using "arduino_i2c: &i2c0" to match what the share link has but it made no difference as well.


    00> rtt:~$ [00:00:00.047,454] <err> i2c_nrfx_twim: Error 0x0BAE0001 occurred for message 1
    00> rtt:~$ [00:00:00.047,454] <err> ssd1306: Failed to initialize device!


    All very odd.

Children
Related