Cannot enable udisplay in my custom firmware

34 views
Skip to first unread message

Khurram

unread,
May 1, 2024, 5:12:23 AMMay 1
to TasmotaUsers
I have compiled my own binaries for esp32 and version 13.4.0. I have added support for udisplay in user_config_override.h file. I am trying to use an I2C SSH1106 based display. I have assigned the gpios to SDA1 and SCL1, assigned gpio to Option A3 and added display.ini (from SH1106 link) to the filesystem. However, the display remain dark even though i2cscan shows a device at 0x3C. How can I write to the display?

Thanks

Philip Knowles

unread,
May 1, 2024, 5:19:59 AMMay 1
to Khurram, TasmotaUsers
Is it dimmed or turned off?

From: sonof...@googlegroups.com <sonof...@googlegroups.com> on behalf of Khurram <kfha...@gmail.com>
Sent: 01 May 2024 10:12
To: TasmotaUsers <sonof...@googlegroups.com>
Subject: Cannot enable udisplay in my custom firmware
 
I have compiled my own binaries for esp32 and version 13.4.0. I have added support for udisplay in user_config_override.h file. I am trying to use an I2C SSH1106 based display. I have assigned the gpios to SDA1 and SCL1, assigned gpio to Option A3 and added display.ini (from SH1106 link) to the filesystem. However, the display remain dark even though i2cscan shows a device at 0x3C. How can I write to the display?

Thanks

--
You received this message because you are subscribed to the Google Groups "TasmotaUsers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sonoffusers...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/sonoffusers/4d157902-d793-48c9-bb7d-f16143b85161n%40googlegroups.com.

Justin Adie

unread,
May 1, 2024, 5:20:17 AMMay 1
to Khurram, TasmotaUsers
Check whether it shows up in an i2cscan. And also try explicitly setting the display address


I2cscan

Displayaddress 0x3c

If you see the display flashing after setting displayaddress redo the config and then try writing to the screen. 

On Wed, 1 May 2024, 11:12 Khurram, <kfha...@gmail.com> wrote:
I have compiled my own binaries for esp32 and version 13.4.0. I have added support for udisplay in user_config_override.h file. I am trying to use an I2C SSH1106 based display. I have assigned the gpios to SDA1 and SCL1, assigned gpio to Option A3 and added display.ini (from SH1106 link) to the filesystem. However, the display remain dark even though i2cscan shows a device at 0x3C. How can I write to the display?

Thanks

--

Khurram

unread,
May 1, 2024, 5:31:58 AMMay 1
to TasmotaUsers
It is off (not dimmed). The device already shows in i2cscan at 0x3C which is the address used in display.ini.

Justin Adie

unread,
May 1, 2024, 5:55:16 AMMay 1
to Khurram, TasmotaUsers
Have you configured the display model?

Displaymodel 7


Maybe also post your display config.  The output of this command in the terminal

Display



Khurram

unread,
May 1, 2024, 6:07:04 AMMay 1
to TasmotaUsers
Display command gives error "Command: unknown'. Same error for DisplayModel 7.

Philip Knowles

unread,
May 1, 2024, 6:12:45 AMMay 1
to Khurram, TasmotaUsers
Are you using Universal Display Driver or the old system?

Starting with Tasmota v13.4, we are progressibely removing specific display and touch drivers and replacing with Universal Drivers. This is made to simplify future evolutions and shrink the code base, as the number of drivers is increasing fast.

I would try a pre-compiled bin

All tasmota-display.bin, tasmota32-display.bin and tasmota32-lvgl.bin include native support for uDisplay and uTouch. Select the appropriate binary and flash the device.

If it works with that you know it's your compilation

Sent: 01 May 2024 11:07
To: TasmotaUsers <sonof...@googlegroups.com>
Subject: Re: Cannot enable udisplay in my custom firmware
 

Justin Adie

unread,
May 1, 2024, 6:24:07 AMMay 1
to Philip Knowles, Khurram, TasmotaUsers
Ah yes!  Khurram did write they were using udisplay.  Silly me



Khurram

unread,
May 1, 2024, 6:35:45 AMMay 1
to TasmotaUsers
According to the udisplay info, I just need to add #define USE_UNIVERSAL_DISPLAY  to user_config_override.h and that is what I did. I don't think this adds udisplay support to the binary. I have flashed my ESP32 with the lvgl build (as suggested above) and now the display works.
Reply all
Reply to author
Forward
0 new messages