Skip to content

lvgl with monocrome display not working #24376

@1Gootch1

Description

@1Gootch1

PROBLEM DESCRIPTION

When switching from 15.1.0 to 15.2.0 my monochrome SH1106 display is not working anymore.

Displaying Text via the Console works. But using berry lvgl doesn't.

I used the same configuration option in both version also switching back again to 15.1.0 to make sure hardware is ok. It seems there was a major rework of the uDisplay driver therefore I also compiled my own image (15.2.0) with the uDisplay lib from 15.1.0 and it worked. So the issue seems to be the uDisplay rework between 15.2.0 and 15.1.0

REQUESTED INFORMATION

Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!

  • Read the Contributing Guide and Policy and the Code of Conduct
  • Searched the problem in issues
  • Searched the problem in discussions
  • Searched the problem in the docs
  • Searched the problem in the chat
    Same problem with ST7735S and 15.02.0
  • Problem is not scripter related, in this case open a discussion and tag gemu2015
  • Device used (e.g., Sonoff Basic): WS32 ETH01
  • Tasmota binary firmware version number used: 15.02.0
    • Pre-compiled
    • Self-compiled
  • Flashing tools used: web installer
  • Provide the output of command: Backlog Template; Module; GPIO 255:
  Configuration output here:
09:05:13.464 RSL: RESULT = {"NAME":"WT32_ETH01","GPIO":[1,1,1,1,1,1,0,0,1,0,1,1,3840,576,5600,0,0,0,0,5568,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0,1],"FLAG":0,"BASE":1}
09:05:13.671 RSL: RESULT = {"Module":{"0":"WT32_ETH01"}}
09:05:13.876 RSL: RESULT = {"GPIO0":{"Option A3":6210},"GPIO1":{"None":0},"GPIO2":{"None":0},"GPIO3":{"None":0},"GPIO4":{"I2C SDA1":640},"GPIO5":{"None":0},"GPIO6":{"None":0},"GPIO7":{"None":0},"GPIO8":{"None":0},"GPIO9":{"None":0},"GPIO10":{"None":0},"GPIO11":{"None":0},"GPIO12":{"None":0},"GPIO13":{"None":0},"GPIO14":{"I2C SCL1":608},"GPIO15":{"None":0},"GPIO16":{"Output Hi":3840},"GPIO17":{"LedLink_i":576},"GPIO18":{"ETH MDIO":5600},"GPIO19":{"None":0},"GPIO20":{"None":0},"GPIO21":{"None":0},"GPIO22":{"None":0},"GPIO23":{"ETH MDC":5568},"GPIO24":{"None":0},"GPIO25":{"None":0},"GPIO26":{"None":0},"GPIO27":{"None":0},"GPIO32":{"None":0},"GPIO33":{"None":0},"GPIO34":{"None":0},"GPIO35":{"None":0},"GPIO36":{"None":0},"GPIO37":{"None":0},"GPIO38":{"None":0},"GPIO39":{"None":0}}
  • If using rules, provide the output of this command: Backlog Rule1; Rule2; Rule3:
  Rules output here:

  • Provide the output of this command: Status 0:
  STATUS 0 output here:
09:10:19.335 CMD: Status 0
09:10:19.337 RSL: STATUS = {"Status":{"Module":0,"DeviceName":"Tasmota","FriendlyName":["Tasmota"],"Topic":"tasmota_693328","ButtonTopic":"0","Power":"1","PowerLock":"0","PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0,"InfoRetain":0,"StateRetain":0,"StatusRetain":0}}
09:10:19.371 RSL: STATUS1 = {"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota32/release/tasmota32-lvgl.bin","RestartReason":"Vbat power on reset","Uptime":"0T00:00:07","StartupUTC":"2026-01-21T08:10:12","Sleep":50,"CfgHolder":4617,"BootCount":11,"BCResetTime":"2026-01-20T20:18:51","SaveCount":21}}
09:10:19.403 RSL: STATUS2 = {"StatusFWR":{"Version":"15.2.0(release-lvgl-haspmota)","BuildDateTime":"2025-12-12T10:58:08","Core":"3.3.4","SDK":"5.3.4.251205","CpuFrequency":240,"Hardware":"ESP32-D0WD v1.0","CR":"403/699"}}
09:10:19.426 RSL: STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":2,"MqttLog":0,"FileLog":0,"SysLog":0,"LogHost":"","LogPort":514,"SSId":["Porterhouse Steak",""],"TelePeriod":300,"Resolution":"558180C0","SetOption":["00008009","2805C80001000600003C5A0A192800000000","00000080","00006000","00004000","00000000"]}}
09:10:20.576 RSL: STATUS4 = {"StatusMEM":{"ProgramSize":2608,"Free":271,"Heap":108,"StackLowMark":18,"PsrMax":0,"PsrFree":0,"ProgramFlashSize":4096,"FlashSize":4096,"FlashChipId":"16405E","FlashFrequency":80,"FlashMode":"DIO","Features":["0809","8FAAC7DF","00048021","000006CF","010013C0","40000981","40004080","00200000","5400003D","800200A0","00000004"],"Drivers":"1,2,!3,!4,!5,!8,9,10,12,13,!16,!20,!24,26,!27,29,38,50,52,54,55,!56,62,!67,!68,82,!88,!121","Sensors":"1,2,3,5,6,8,9,85,127","I2CDriver":"7,9,10,58,59,77"}}
09:10:20.621 RSL: STATUS5 = {"StatusNET":{"Hostname":"tasmota-693328-4904","IPAddress":"192.168.25.167","Gateway":"192.168.25.1","Subnetmask":"255.255.255.0","DNSServer1":"192.168.25.1","DNSServer2":"0.0.0.0","Mac":"40:F5:20:69:33:28","IP6Global":"","IP6Local":"fe80::42f5:20ff:fe69:3328%st1","Ethernet":{"Hostname":"tasmota-693328-4904-eth","IPAddress":"0.0.0.0","Gateway":"0.0.0.0","Subnetmask":"0.0.0.0","DNSServer1":"192.168.25.1","DNSServer2":"0.0.0.0","Mac":"00:00:00:00:00:00","IP6Global":"","IP6Local":""},"Webserver":2,"HTTP_API":1,"WifiConfig":4,"WifiPower":16.0}}
09:10:20.664 RSL: STATUS6 = {"StatusMQT":{"MqttHost":"","MqttPort":1883,"MqttClientMask":"DVES_%06X","MqttClient":"DVES_693328","MqttUser":"DVES_USER","MqttCount":0,"MqttTLS":0,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30,"SOCKET_TIMEOUT":4}}
09:10:20.686 RSL: STATUS7 = {"StatusTIM":{"UTC":"2026-01-21T08:10:20Z","Local":"2026-01-21T09:10:20","StartDST":"2026-03-29T02:00:00","EndDST":"2026-10-25T03:00:00","Timezone":"+01:00","Sunrise":"08:33","Sunset":"17:29"}}
09:10:20.710 RSL: STATUS10 = {"StatusSNS":{"Time":"2026-01-21T09:10:20"}}
09:10:20.716 RSL: STATUS11 = {"StatusSTS":{"Time":"2026-01-21T09:10:20","Uptime":"0T00:00:08","UptimeSec":8,"Heap":106,"SleepMode":"Dynamic","Sleep":10,"LoadAvg":99,"MqttCount":0,"Berry":{"HeapUsed":5,"Objects":61},"POWER":"ON","Wifi":{"AP":1,"SSId":"Porterhouse Steak","BSSId":"FC:EC:DA:1A:C0:6E","Channel":6,"Mode":"HT40","RSSI":50,"Signal":-75,"LinkCount":1,"Downtime":"0T00:00:03"},"Hostname":"tasmota-693328-4904","IPAddress":"192.168.25.167"}}

  • Set weblog to 4 and then, when you experience your issue, provide the output of the Console log:
  Console output here:
00:00:00.001 HDW: ESP32-D0WD v1.0 
00:00:00.028 UFS: FlashFS mounted with 304 kB free
00:00:00.037 CFG: Loaded from File, Count 23
00:00:00.043 QPC: Count 1
00:00:00.043 CFG: CR 403/699, Busy 0
00:00:00.046 I2C: Bus1 using GPIO14(SCL) and GPIO04(SDA)
00:00:00.050 TFS: File 'mcp23x.dat' not found
00:00:00.050 MCP: Invalid template
00:00:00.050 TYA: Active=0
00:00:00.053 ROT: Mode 1
00:00:00.059 BRY: GC from 3794 to 3594 bytes, objects freed 4/22 (in 0 ms) - slots from 38/61 to 30/61
00:00:00.079 CFG: No '*.autoconf' file found
00:00:00.088 BRY: GC from 6870 to 5187 bytes, objects freed 9/48 (in 1 ms) - slots from 73/91 to 50/91
00:00:00.088 BRY: Berry initialized, RAM used 5187 bytes
00:00:00.096 BRY: No 'preinit.be'
00:00:00.115 DSP: File descriptor used
00:00:00.115 I2C: SH1106 found at 0x3c
00:00:00.243 DSP: SH1106 initialized
00:00:00.248 SRC: Restart
00:00:00.252 Project tasmota - Tasmota Version 15.2.0(release-lvgl-haspmota)-3.3.4(2025-12-12T10:58:08)
00:00:00.255 LVG: Allocating buffer1 10 KB in main memory (flushlines 40)
00:00:00.262 LVG: LVGL initialized
00:00:00.646 ETH: Bad EthType 0 or init error
00:00:00.674 BRY: No 'autoexec.be'
00:00:00.936 WIF: Checking connection...
00:00:00.937 WIF: Attempting connection...
00:00:01.255 WIF: Connecting to AP1 Porterhouse Steak Channel 6 BSSId FC:EC:DA:1A:C0:6E in mode HT40 as tasmota-693328-4904...
00:00:02.566 WIF: IPv4 192.168.25.167, mask 255.255.255.0, gateway 192.168.25.1
00:00:03.491 WIF: IPv6 Local fe80::42f5:20ff:fe69:3328%st1
00:00:03.701 WIF: Checking connection...
00:00:03.702 WIF: Connected
00:00:03.960 HTP: Web server active on tasmota-693328-4904 with IP address 192.168.25.167
00:00:03.962 NTP: Sync time...
00:00:03.980 WIF: DNS resolved '2.pool.ntp.org' (78.47.93.191) in 18 ms
00:00:04.034 RTC: UTC 2026-01-21T08:10:58Z, DST 2026-03-29T02:00:00, STD 2026-10-25T03:00:00

TO REPRODUCE

Steps to reproduce the behavior:
Use a SH1106 Display and try to display something via berry lvgl

EXPECTED BEHAVIOUR

A clear and concise description of what you expected to happen.
same behavior of the display in 15.2.0 as in 15.1.0

SCREENSHOTS

If applicable, add screenshots to help explain your problem.

ADDITIONAL CONTEXT

Add any other context about the problem here.

(Please, remember to close the issue when the problem has been addressed)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions