Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

After enabling SetOption88, Toggling the RGB panel of an RGB Switch causes the device to restart. #9459

Closed
13 of 15 tasks
HutchMD opened this issue Oct 4, 2020 · 1 comment · Fixed by #9463
Closed
13 of 15 tasks
Labels
bug Type - Confirmated Bug fixed Result - The work on the issue has ended

Comments

@HutchMD
Copy link

HutchMD commented Oct 4, 2020

PROBLEM DESCRIPTION

A clear and concise description of what the problem is.

After enabling SetOption88, Toggling the RGB panel of an RGB Switch causes the device to restart.

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 the docs
  • Searched the problem in the forum
  • Searched the problem in the chat
  • Device used (e.g., Sonoff Basic): DHouse RGB Switch
  • Tasmota binary firmware version number used: 8.5.0, 8.5.1, and 9.0.0.1
    • Pre-compiled
    • Self-compiled
      • IDE / Compiler used: _____
  • Flashing tools used: Tuya-Convert from a long time ago
  • Provide the output of command: Backlog Template; Module; GPIO 255:
  Configuration output here:

02:17:52 CMD: Backlog Template; Module; GPIO 255
02:17:52 SRC: WebConsole from 192.168.1.19
02:17:52 CMD: Group 0, Index 1, Command "BACKLOG", Data "Template; Module; GPIO 255"
02:17:52 SRC: Backlog
02:17:52 CMD: Group 0, Index 1, Command "TEMPLATE", Data ""
02:17:52 MQT: stat/MoonSwitch/RESULT = {"NAME":"RGB Switch","GPIO":[30,0,32,10,39,38,0,0,31,9,37,21,0],"FLAG":0,"BASE":18}
02:17:52 SRC: Backlog
02:17:52 CMD: Group 0, Index 1, Command "MODULE", Data ""
02:17:52 MQT: stat/MoonSwitch/RESULT = {"Module":{"0":"RGB Switch"}}
02:17:53 SRC: Backlog
02:17:53 CMD: Group 0, Index 1, Command "GPIO", Data "255"
02:17:53 MQT: stat/MoonSwitch/RESULT = {"GPIO0":{"30":"Relay2i"},"GPIO1":{"0":"None"},"GPIO2":{"32":"Relay4i"},"GPIO3":{"10":"Switch2"},"GPIO4":{"39":"PWM3"},"GPIO5":{"38":"PWM2"},"GPIO9":{"0":"None"},"GPIO10":{"0":"None"},"GPIO12":{"31":"Relay3i"},"GPIO13":{"9":"Switch1"},"GPIO14":{"37":"PWM1"},"GPIO15":{"21":"Relay1"},"GPIO16":{"0":"None"}}


  • If using rules, provide the output of this command: Backlog Rule1; Rule2; Rule3:
  Rules output here:
02:19:35 CMD: Backlog Rule1; Rule2; Rule3
02:19:35 SRC: WebConsole from 192.168.1.19
02:19:35 CMD: Group 0, Index 1, Command "BACKLOG", Data "Rule1; Rule2; Rule3"
02:19:35 SRC: Backlog
02:19:35 CMD: Group 0, Index 1, Command "RULE", Data ""
02:19:35 MQT: stat/MoonSwitch/RESULT = {"Rule1":"ON","Once":"OFF","StopOnError":"OFF","Length":108,"Free":403,"Rules":"on power1#state=0 do backlog power4 1 ; power2 0 endon on power1#state=1 do backlog power4 0; power2 1 endon"}
02:19:35 SRC: Backlog
02:19:35 CMD: Group 0, Index 2, Command "RULE", Data ""
02:19:35 MQT: stat/MoonSwitch/RESULT = {"Rule2":"ON","Once":"OFF","StopOnError":"OFF","Length":83,"Free":428,"Rules":"on switch1#state=2 do power3 toggle endon on switch1#state=3 do power1 toggle endon"}
02:19:35 SRC: Backlog
02:19:35 CMD: Group 0, Index 3, Command "RULE", Data ""
02:19:35 MQT: stat/MoonSwitch/RESULT = {"Rule3":"OFF","Once":"OFF","StopOnError":"OFF","Length":0,"Free":511,"Rules":""}


  • Provide the output of this command: Status 0:
  STATUS 0 output here:

02:20:40 CMD: Status 0
02:20:40 SRC: WebConsole from 192.168.1.19
02:20:40 CMD: Group 0, Index 1, Command "STATUS", Data "0"
02:20:40 MQT: stat/MoonSwitch/STATUS = {"Status":{"Module":0,"DeviceName":"MoonSwitch","FriendlyName":["MoonSwitch","MoonSwitchRed","MoonSwitchGreen","MoonSwitchBlue","MoonSwitchPanel"],"Topic":"MoonSwitch","ButtonTopic":"0","Power":31,"PowerOnState":0,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[5,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0}}
02:20:40 MQT: stat/MoonSwitch/STATUS1 = {"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota/release/tasmota.bin.gz","RestartReason":"Software/System restart","Uptime":"0T00:17:29","StartupUTC":"2020-10-04T01:03:11","Sleep":50,"CfgHolder":4617,"BootCount":25,"BCResetTime":"2020-10-04T01:05:40","SaveCount":219,"SaveAddress":"F5000"}}
02:20:40 MQT: stat/MoonSwitch/STATUS2 = {"StatusFWR":{"Version":"8.5.1(tasmota)","BuildDateTime":"2020-10-02T10:09:47","Boot":31,"Core":"2_7_4_1","SDK":"2.2.2-dev(38a443e)","CpuFrequency":80,"Hardware":"ESP8266EX","CR":"438/699"}}
02:20:40 MQT: stat/MoonSwitch/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":4,"MqttLog":0,"SysLog":0,"LogHost":"","LogPort":514,"SSId":["Hutchinson",""],"TelePeriod":300,"Resolution":"558180C0","SetOption":["000A8009","0A05C8000100060000005A00000000000000","00008200","00006048","00000000"]}}
02:20:40 MQT: stat/MoonSwitch/STATUS4 = {"StatusMEM":{"ProgramSize":596,"Free":404,"Heap":21,"ProgramFlashSize":1024,"FlashSize":1024,"FlashChipId":"1440A1","FlashFrequency":40,"FlashMode":3,"Features":["00000809","8FDAE797","04368001","000000CD","010013C0","C000F981","00004004","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","Sensors":"1,2,3,4,5,6"}}
02:20:40 MQT: stat/MoonSwitch/STATUS5 = {"StatusNET":{"Hostname":"MoonSwitch-3136","IPAddress":"192.168.1.41","Gateway":"192.168.1.1","Subnetmask":"255.255.255.0","DNSServer":"192.168.1.1","Mac":"80:7D:3A:1A:CC:40","Webserver":2,"WifiConfig":4,"WifiPower":17.0}}
02:20:40 MQT: stat/MoonSwitch/STATUS6 = {"StatusMQT":{"MqttHost":"192.168.1.245","MqttPort":1883,"MqttClientMask":"DVES_%06X","MqttClient":"DVES_1ACC40","MqttUser":"mosquitto","MqttCount":1,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30}}
02:20:40 MQT: stat/MoonSwitch/STATUS7 = {"StatusTIM":{"UTC":"2020-10-04T01:20:40","Local":"2020-10-04T02:20:40","StartDST":"2020-03-29T02:00:00","EndDST":"2020-10-25T03:00:00","Timezone":"+01:00","Sunrise":"06:55","Sunset":"18:22"}}
02:20:40 MQT: stat/MoonSwitch/STATUS10 = {"StatusSNS":{"Time":"2020-10-04T02:20:40","Switch1":"ON","Switch2":"ON"}}
02:20:40 MQT: stat/MoonSwitch/STATUS11 = {"StatusSTS":{"Time":"2020-10-04T02:20:40","Uptime":"0T00:17:29","UptimeSec":1049,"Heap":20,"SleepMode":"Dynamic","Sleep":10,"LoadAvg":99,"MqttCount":1,"POWER1":"ON","POWER2":"ON","POWER3":"ON","POWER4":"ON","POWER5":"ON","Dimmer":100,"Color":"255,0,0","HSBColor":"0,100,100","Channel":[100,0,0],"Scheme":0,"Fade":"ON","Speed":1,"LedTable":"ON","Wifi":{"AP":1,"SSId":"Hutchinson","BSSId":"56:D4:F7:C6:03:70","Channel":4,"RSSI":94,"Signal":-53,"LinkCount":1,"Downtime":"0T00:00:06"}}}

  • Provide the output of the Console log output when you experience your issue; if applicable:
    (Please use weblog 4 for more debug information)
  Console output here:

02:24:29 MQT: tele/MoonSwitch/INFO3 = {"RestartReason":{"Exception":28,"Reason":"Exception","EPC":["402389d8","00000000","40000f2b"],"EXCVADDR":"0000000e","DEPC":"00000000","CallChain":["4022d56e","40237be8","40100b04","40102ab9","40104830","40102688","40105923","4020eff5","40104afe","40232b2c","40104f6f","4000050c","401035e4","40104a37","401038fc","4000050c","401035e4","40101b83","402357be","4023584b","4024a796","40246a20","40246c89","401018ff","40101b83","402494ce","40101204","40101204","40227ed7","4022f94b","40247e7c"]}}


TO REPRODUCE

Steps to reproduce the behavior:

  1. Enable SetOption88,
  2. Toggle the RGB Panel of the RGB Switch (5th Toggle button)
  3. Devices restarts on its own, cannot control RGB Panel.

EXPECTED BEHAVIOUR

A clear and concise description of what you expected to happen.

Expect to properly control the RGB Panel.

SCREENSHOTS

If applicable, add screenshots to help explain your problem.

No real errors than the console output restart reason/exception above.

ADDITIONAL CONTEXT

Add any other context about the problem here.

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

@pcdiem
Copy link
Contributor

pcdiem commented Oct 4, 2020

Testing with HutchMD reveals that exception is happening because there are more than four relays and the device group code does not check the the device group number passed to. I'll get a PR out to fix this.

arendst added a commit that referenced this issue Oct 4, 2020
Fix exception 28 due to device group buffer overflow (#9459)
@ascillato2 ascillato2 added bug Type - Confirmated Bug fixed Result - The work on the issue has ended labels Oct 9, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Type - Confirmated Bug fixed Result - The work on the issue has ended
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants