PROBLEM DESCRIPTION
After upgrading my Shelly Dimmer 2 to Tasmota 15.3.0, the device starts normally and detects the Shelly co-processor as v51.7, but a few seconds later it begins to log repeated SHD: Serial send timeout messages.
At the same time, energy data becomes invalid or gets reset (NRG: Energy reset by invalid data).
I also tested the latest development build and the problem is still present there.
The same device, wiring, template and co-processor firmware work correctly on Tasmota 14.4.1. After downgrading to 14.4.1, the SHD: Serial send timeout messages disappear completely.
This looks like a regression or compatibility issue in 15.3.x affecting Shelly Dimmer 2 / SHD communication.
REQUESTED INFORMATION
Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!
Configuration output here:
10:13:10.351 CMD: Grp 0, Cmd 'BACKLOG', Idx 1, Len 35, Pld -99, Data 'Template; Module; GPIO 255`: ```lua'
10:13:10.368 SRC: Backlog
10:13:10.371 CMD: Grp 0, Cmd 'TEMPLATE', Idx 1, Len 0, Pld -99, Data ''
10:13:10.378 MQT: stat/tasmota_C19AA9/RESULT = {"NAME":"Shelly Dimmer 2","GPIO":[0,3200,0,3232,5568,5600,0,0,193,0,192,0,320,4736],"FLAG":0,"BASE":18}
10:13:10.605 SRC: Backlog
10:13:10.608 CMD: Grp 0, Cmd 'MODULE', Idx 1, Len 0, Pld -99, Data ''
10:13:10.614 MQT: stat/tasmota_C19AA9/RESULT = {"Module":{"0":"Shelly Dimmer 2"}}
10:13:10.815 SRC: Backlog
10:13:10.818 CMD: Grp 0, Cmd 'GPIO', Idx 1, Len 12, Pld 255, Data '255`: ```lua'
10:13:10.833 MQT: stat/tasmota_C19AA9/RESULT = {"GPIO0":{"0":"None"},"GPIO1":{"3200":"Serial Tx"},"GPIO2":{"0":"None"},"GPIO3":{"3232":"Serial Rx"},"GPIO4":{"5568":"SHD Boot 0"},"GPIO5":{"5600":"SHD Reset"},"GPIO9":{"0":"None"},"GPIO10":{"0":"None"},"GPIO12":{"193":"Switch_n2"},"GPIO13":{"0":"None"},"GPIO14":{"192":"Switch_n1"},"GPIO15":{"0":"None"},"GPIO16":{"320":"Led_i1"},"GPIO17":{"4736":"ADC Temp"}}
- [ x] If using rules, provide the output of this command:
Backlog Rule1; Rule2; Rule3:
Rules output here:
10:14:48.785 SRC: Backlog
10:14:48.788 CMD: Grp 0, Cmd 'RULE', Idx 1, Len 0, Pld -99, Data ''
10:14:48.796 MQT: stat/tasmota_C19AA9/RESULT = {"Rule1":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":235,"Free":276,"Rules":"on system#boot do var1 + ENDON on switch1#state=2 do POWER TOGGLE ENDON on switch1#state=4 do DIMMER %var1% ENDON on switch1#state=7 do event upordown=%var1% ENDON on event#upordown=+ do var1 - ENDON on event#upordown=- do var1 + ENDON"}}
10:14:49.027 SRC: Backlog
10:14:49.030 CMD: Grp 0, Cmd 'RULE', Idx 2, Len 0, Pld -99, Data ''
10:14:49.038 MQT: stat/tasmota_C19AA9/RESULT = {"Rule2":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":68,"Free":443,"Rules":"on Switch1#State=8 do Publish cmnd/tasmota_98517C/Power TOGGLE endon"}}
10:14:49.276 SRC: Backlog
10:14:49.280 CMD: Grp 0, Cmd 'RULE', Idx 3, Len 9, Pld -99, Data '`: ```lua'
10:14:49.284 RUL: Stored uncompressed, would compress from 9 to 10 (-0%)
10:14:49.290 MQT: stat/tasmota_C19AA9/RESULT = {"Rule3":{"State":"OFF","Once":"OFF","StopOnError":"OFF","Length":9,"Free":502,"Rules":"`: ```lua"}}
10:14:49.598 CFG: Saved to flash at F7, Count 2675, Bytes 4096
- [ x] Provide the output of this command:
Status 0:
STATUS 0 output here:
09:14:35.972 CMD: Status 0
09:14:35.974 SRC: WebConsole from 172.16.1.228
09:14:35.977 CMD: Grp 0, Cmd 'STATUS', Idx 1, Len 1, Pld 0, Data '0'
09:14:35.986 MQT: stat/tasmota_C19AA9/STATUS = {"Status":{"Module":0,"DeviceName":"Schlafzimmer","FriendlyName":["Tasmota"],"Topic":"tasmota_C19AA9","ButtonTopic":"0","Power":"0","PowerLock":"0","PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[11,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:14:36.009 MQT: stat/tasmota_C19AA9/STATUS1 = {"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota/release-14.4.1/tasmota.bin.gz","RestartReason":"Software/System restart","Uptime":"0T00:02:52","StartupUTC":"2026-03-17T08:11:44","Sleep":50,"CfgHolder":4617,"BootCount":25,"BCResetTime":"2025-02-25T11:55:40","SaveCount":2663,"SaveAddress":"FA000"}}
09:14:36.040 MQT: stat/tasmota_C19AA9/STATUS2 = {"StatusFWR":{"Version":"14.4.1(release-tasmota)","BuildDateTime":"2024-12-15T13:29:54","Boot":31,"Core":"2_7_8","SDK":"2.2.2-dev(38a443e)","CpuFrequency":80,"Hardware":"ESP8266EX","CR":"426/699"}}
09:14:36.067 MQT: stat/tasmota_C19AA9/STATUS3 = {"StatusLOG":{"SerialLog":0,"WebLog":4,"MqttLog":0,"SysLog":0,"LogHost":"","LogPort":514,"SSId":["Tucktuck",""],"TelePeriod":300,"Resolution":"558180C0","SetOption":["00008009","1405C80001000600003C5A0A192800000000","00000080","00006000","00004000","00000000"]}}
09:14:36.105 MQT: stat/tasmota_C19AA9/STATUS4 = {"StatusMEM":{"ProgramSize":652,"Free":348,"Heap":23,"ProgramFlashSize":1024,"FlashSize":2048,"FlashChipId":"15400B","FlashFrequency":40,"FlashMode":"DOUT","Features":["0809","8F9AC787","04368001","000000CF","010013C0","C000F981","00004004","00001000","54000020","00000080","00000000"],"Drivers":"1,2,3,4,!5,!6,7,!8,9,10,12,!16,!18,!19,!20,!21,!22,!24,26,!27,29,!30,!35,!37,45,62,!68","Sensors":"1,2,3,4,5,6","I2CDriver":"7"}}
09:14:36.137 MQT: stat/tasmota_C19AA9/STATUS5 = {"StatusNET":{"Hostname":"tasmota-C19AA9-6825","IPAddress":"172.16.1.239","Gateway":"172.16.1.254","Subnetmask":"255.255.255.0","DNSServer1":"172.16.1.254","DNSServer2":"0.0.0.0","Mac":"EC:64:C9:C1:9A:A9","Webserver":2,"HTTP_API":1,"WifiConfig":4,"WifiPower":17.0}}
09:14:36.165 MQT: stat/tasmota_C19AA9/STATUS6 = {"StatusMQT":{"MqttHost":"172.16.1.22","MqttPort":1884,"MqttClientMask":"LichtSchlafzimmer","MqttClient":"LichtSchlafzimmer","MqttUser":"DVES_USER","MqttCount":1,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30,"SOCKET_TIMEOUT":4}}
09:14:36.195 MQT: stat/tasmota_C19AA9/STATUS7 = {"StatusTIM":{"UTC":"2026-03-17T08:14:36Z","Local":"2026-03-17T09:14:36","StartDST":"2026-03-29T02:00:00","EndDST":"2026-10-25T03:00:00","Timezone":"+01:00","Sunrise":"06:59","Sunset":"18:57"}}
09:14:36.225 MQT: stat/tasmota_C19AA9/STATUS9 = {"StatusPTH":{"PowerDelta":0,"PowerLow":0,"PowerHigh":0,"VoltageLow":0,"VoltageHigh":0,"CurrentLow":0,"CurrentHigh":0,"MaxPower":0,"MaxPowerHold":10,"MaxPowerWindow":30,"MaxEnergy":0,"MaxEnergyStart":0}}
09:14:36.257 MQT: stat/tasmota_C19AA9/STATUS10 = {"StatusSNS":{"Time":"2026-03-17T09:14:36","Switch1":"OFF","Switch2":"OFF","ANALOG":{"Temperature":38.8},"ENERGY":{"TotalStartTime":"2025-02-25T11:56:31","Total":3.205,"Yesterday":0.004,"Today":0.005,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":1.00,"Voltage":234,"Current":0.002},"TempUnit":"C"}}
09:14:36.290 MQT: stat/tasmota_C19AA9/STATUS11 = {"StatusSTS":{"Time":"2026-03-17T09:14:36","Uptime":"0T00:02:52","UptimeSec":172,"Heap":23,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"POWER":"OFF","Dimmer":96,"Fade":"ON","Speed":3,"LedTable":"OFF","Wifi":{"AP":1,"SSId":"Tucktuck","BSSId":"C8:4F:86:89:5F:E6","Channel":11,"Mode":"11n","RSSI":100,"Signal":-50,"LinkCount":1,"Downtime":"0T00:00:04"}}}
- [ x] Set
weblog to 4 and then, when you experience your issue, provide the output of the Console log:
Console output here:
00:00:00.002 HDW: ESP8266EX
00:00:00.051 CFG: Loaded from flash at FA, Count 2667
00:00:00.056 QPC: Count 1
00:00:00.058 CFG: CR 411/699, Busy 0
00:00:00.062 TYA: Active=0
00:00:00.065 ROT: Mode 1
00:00:00.066 NRG: Init driver 31
00:00:00.068 SRC: Restart
00:00:00.121 Project tasmota - Schlafzimmer Version 15.3.0.3(17b1a64-tasmota)-2.7.8(2026-03-16T16:13:01)
00:00:00.123 SNS: Hardware Serial
00:00:00.226 SHD: Shelly Dimmer Co-processor Version v51.7
00:00:00.227 CFG: CR 411/699, Busy 0
00:00:00.482 WIF: Checking connection...
00:00:00.482 WIF: Attempting connection...
00:00:01.933 WIF: Connecting to AP1 Tucktuck Channel 11 BSSId C8:4F:86:89:5F:E6 in mode 11n as tasmota-C19AA9-6825...
00:00:03.497 WIF: Checking connection...
00:00:03.498 WIF: Connected
00:00:03.749 HTP: Web server active on tasmota-C19AA9-6825 with IP address 172.16.1.239
00:00:03.897 WIF: Sending Gratuitous ARP
00:00:03.899 NTP: Sync time...
00:00:03.908 WIF: DNS resolved '2.pool.ntp.org' (80.153.195.191) in 9 ms
00:00:03.952 RTC: UTC 2026-03-17T08:25:03Z, DST 2026-03-29T02:00:00, STD 2026-10-25T03:00:00
09:25:03.000 RTC: Synced by NTP
09:25:03.713 MQT: Attempting connection...
09:25:03.714 WIF: DNS resolved '172.16.1.22' (172.16.1.22) in 0 ms
09:25:03.734 MQT: Connected
09:25:03.736 MQT: tele/tasmota_C19AA9/LWT = Online (retained)
09:25:03.738 MQT: cmnd/tasmota_C19AA9/POWER =
09:25:03.739 MQT: Subscribe to cmnd/tasmota_C19AA9/#
09:25:03.741 MQT: Subscribe to cmnd/tasmotas/#
09:25:03.742 MQT: Subscribe to cmnd/LichtSchlafzimmer_fb/#
09:25:03.745 MQT: tele/tasmota_C19AA9/INFO1 = {"Info1":{"Module":"Shelly Dimmer 2","Version":"15.3.0.3(17b1a64-tasmota)","FallbackTopic":"cmnd/LichtSchlafzimmer_fb/","GroupTopic":"cmnd/tasmotas/"}}
09:25:03.765 MQT: tele/tasmota_C19AA9/INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota-C19AA9-6825","IPAddress":"172.16.1.239"}}
09:25:03.785 MQT: tele/tasmota_C19AA9/INFO3 = {"Info3":{"RestartReason":"Software/System restart","BootCount":27}}
09:25:03.806 MQT: stat/tasmota_C19AA9/RESULT = {"POWER":"OFF"}
09:25:03.808 MQT: stat/tasmota_C19AA9/POWER = OFF
09:25:03.820 RUL: SYSTEM#BOOT performs 'var1 +'
09:25:03.821 SRC: Rule
09:25:03.822 CMD: Grp 0, Cmd 'VAR', Idx 1, Len 1, Pld -99, Data '+'
09:25:03.828 MQT: stat/tasmota_C19AA9/RESULT = {"Var1":"+"}
09:25:06.965 QPC: Reset
09:25:07.168 SHD: Serial send timeout
09:25:07.369 SHD: Serial send timeout
09:25:07.570 SHD: Serial send timeout
09:25:07.578 HTP: Main Menu
09:25:07.902 MQT: tele/tasmota_C19AA9/STATE = {"Time":"2026-03-17T09:25:07","Uptime":"0T00:00:08","UptimeSec":8,"Heap":25,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":75,"MqttCount":1,"POWER":"OFF","Dimmer":96,"Fade":"ON","Speed":3,"LedTable":"OFF","Wifi":{"AP":1,"SSId":"Tucktuck","BSSId":"C8:4F:86:89:5F:E6","Channel":11,"Mode":"11n","RSSI":100,"Signal":-50,"LinkCount":1,"Downtime":"0T00:00:03"},"Hostname":"tasmota-C19AA9-6825","IPAddress":"172.16.1.239"}}
09:25:07.924 MQT: tele/tasmota_C19AA9/SENSOR = {"Time":"2026-03-17T09:25:07","Switch1":"OFF","Switch2":"OFF","ANALOG":{"Temperature":38.5},"ENERGY":{"TotalStartTime":"2025-02-25T11:56:31","Total":3.205,"Yesterday":0.004,"Today":0.005,"Period":0,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":1.00,"Voltage":233,"Current":0.000},"TempUnit":"C"}}
09:25:08.132 SHD: Serial send timeout
09:25:08.333 SHD: Serial send timeout
09:25:08.534 SHD: Serial send timeout
09:25:08.534 NRG: Energy reset by invalid data
09:25:08.889 APP: Boot Count 27
09:25:09.090 SHD: Serial send timeout
09:25:09.292 SHD: Serial send timeout
09:25:09.493 SHD: Serial send timeout
09:25:09.867 CFG: Saved to flash at F9, Count 2668, Bytes 4096
09:25:10.146 SHD: Serial send timeout
09:25:10.347 SHD: Serial send timeout
09:25:10.548 SHD: Serial send timeout
09:25:10.556 HTP: Console
09:25:11.104 SHD: Serial send timeout
09:25:11.305 SHD: Serial send timeout
09:25:11.506 SHD: Serial send timeout
09:25:12.111 SHD: Serial send timeout
09:25:12.314 SHD: Serial send timeout
09:25:12.516 SHD: Serial send timeout
09:25:12.947 MQT: tasmota/discovery/EC64C9C19AA9/config = {"ip":"172.16.1.239","dn":"Schlafzimmer","fn":["Tasmota",null,null,null,null,null,null,null],"hn":"tasmota-C19AA9-6825","mac":"EC64C9C19AA9","md":"Shelly Dimmer 2","ty":0,"if":0,"cam":0,"ofln":"Offline","onln":"Online","state":["OFF","ON","TOGGLE","HOLD"],"sw":"15.3.0.3","t":"tasmota_C19AA9","ft":"%prefix%/%topic%/","tp":["cmnd","stat","tele"],"rl":[2,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],"swc":[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],"swn":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"btn":[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],"so":{"4":0,"11":0,"13":0,"17":0,"20":0,"30":0,"68":0,"73":0,"82":0,"114":0,"117":0},"lk":1,"lt_st":1,"bat":0,"dslp":0,"sho":[],"sht":[],"ver":1} (retained)
09:25:12.968 MQT: tasmota/discovery/EC64C9C19AA9/sensors = {"sn":{"Time":"2026-03-17T09:25:12","Switch1":"OFF","Switch2":"OFF","ANALOG":{"Temperature":38.6},"ENERGY":{"TotalStartTime":"2025-02-25T11:56:31","Total":3.205,"Yesterday":0.004,"Today":0.005,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":0.00,"Voltage":0,"Current":0.000},"TempUnit":"C"},"ver":1} (retained)
09:25:13.173 SHD: Serial send timeout
09:25:13.374 SHD: Serial send timeout
09:25:13.577 SHD: Serial send timeout
09:25:14.081 SHD: Serial send timeout
09:25:14.284 SHD: Serial send timeout
09:25:14.485 SHD: Serial send timeout
09:25:15.088 SHD: Serial send timeout
09:25:15.290 SHD: Serial send timeout
09:25:15.492 SHD: Serial send timeout
TO REPRODUCE
Steps to reproduce the behavior:
Use a Shelly Dimmer 2 with the official Shelly Dimmer 2 template.
Device is wired with neutral.
Shelly Dimmer co-processor version detected is v51.7.
Upgrade from a working 14.4.1 version to 15.3.0 or latest development.
Reboot the device and watch the console with WebLog 4.
EXPECTED BEHAVIOUR
The device should continue to communicate reliably with the Shelly Dimmer co-processor after boot, without repeated SHD: Serial send timeout messages and without invalid energy data.
SCREENSHOTS
none
ADDITIONAL CONTEXT
none
(Please, remember to close the issue when the problem has been addressed)
PROBLEM DESCRIPTION
After upgrading my Shelly Dimmer 2 to Tasmota 15.3.0, the device starts normally and detects the Shelly co-processor as v51.7, but a few seconds later it begins to log repeated
SHD: Serial send timeoutmessages.At the same time, energy data becomes invalid or gets reset (
NRG: Energy reset by invalid data).I also tested the latest development build and the problem is still present there.
The same device, wiring, template and co-processor firmware work correctly on Tasmota 14.4.1. After downgrading to 14.4.1, the
SHD: Serial send timeoutmessages disappear completely.This looks like a regression or compatibility issue in 15.3.x affecting Shelly Dimmer 2 / SHD communication.
REQUESTED INFORMATION
Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!
Backlog Template; Module; GPIO 255:Backlog Rule1; Rule2; Rule3:Status 0:weblogto 4 and then, when you experience your issue, provide the output of the Console log:TO REPRODUCE
Steps to reproduce the behavior:
Use a Shelly Dimmer 2 with the official Shelly Dimmer 2 template.
Device is wired with neutral.
Shelly Dimmer co-processor version detected is v51.7.
Upgrade from a working 14.4.1 version to 15.3.0 or latest development.
Reboot the device and watch the console with WebLog 4.
EXPECTED BEHAVIOUR
The device should continue to communicate reliably with the Shelly Dimmer co-processor after boot, without repeated SHD: Serial send timeout messages and without invalid energy data.
SCREENSHOTS
none
ADDITIONAL CONTEXT
none
(Please, remember to close the issue when the problem has been addressed)