ESP32-C3: Can't configure GPIO as PWM6 via console, only via web
Author: cmockCreated Aug 20, 2026Updated Sep 1, 2026
PROBLEM DESCRIPTION
On ESP32-C3, when trying to configure GPIO 3 421 nothing happens. But when I go to the Web Configuration page, I can select "PWM" and then "6" for that port; after that, PWM does work, and it also shows correctly in the "GPIO" output:
13:23:05.839 CMD: gpio
13:23:05.844 MQT: stat/hk2/RESULT = {"GPIO0":{"None":0},"GPIO1":{"None":0},"GPIO2":{"None":0},"GPIO3":{"PWM6":421},"GPIO4":{"None":0},"GPIO5":{"None":0},"GPIO6":{"None":0},"GPIO7":{"None":0},"GPIO8":{"None":0},"GPIO9":{"None":0},"GPIO10":{"None":0},"GPIO18":{"None":0},"GPIO19":{"None":0},"GPIO20":{"None":0},"GPIO21":{"None":0}}On an ESP32 (without -C3), I can use GPIOx 421 as documented.
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
- Problem is not scripter related, in this case open a discussion and tag gemu2015
- Device used (e.g., Sonoff Basic): ESP32-C3 SuperMini Aliexpress Special
- Tasmota binary firmware version number used: 15.5.0(release-tasmota32)-3.3.8(2026-06-22T14:10:25)
(also tried yesterday's dev build)
- Pre-compiled
- Self-compiled
- Flashing tools used: Web flasher
- Provide the output of command:
Backlog Template; Module; GPIO 255:
Configuration output here:
13:30:29.862 MQT: stat/hk2/RESULT = {"NAME":"ESP32C3","ARCH":"ESP32C3","GPIO":[1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1],"FLAG":0,"BASE":1}
13:30:30.060 MQT: stat/hk2/RESULT = {"Module":{"1":"ESP32C3"}}
13:30:30.265 MQT: stat/hk2/RESULT = {"GPIO0":{"None":0},"GPIO1":{"None":0},"GPIO2":{"None":0},"GPIO3":{"PWM6":421},"GPIO4":{"None":0},"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},"GPIO18":{"None":0},"GPIO19":{"None":0},"GPIO20":{"None":0},"GPIO21":{"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:
13:31:08.965 MQT: stat/hk2/STATUS = {"Status":{"Module":1,"DeviceName":"hk2","FriendlyName":["Tasmota"],"Topic":"hk2","ButtonTopic":"0","Power":"0","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}}
13:31:08.970 MQT: stat/hk2/STATUS1 = {"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"heizkoerper","OtaUrl":"http://ota.tasmota.com/tasmota32/release/tasmota32c3.bin","RestartReason":"Software reset CPU","Uptime":"0T00:15:21","StartupUTC":"2026-08-20T12:15:47","Sleep":0,"CfgHolder":4617,"BootCount":4,"BCResetTime":"2026-08-20T13:14:13","SaveCount":13}}
13:31:08.981 MQT: stat/hk2/STATUS2 = {"StatusFWR":{"Version":"15.5.0(release-tasmota32)","BuildDateTime":"2026-06-22T14:10:25","Core":"3.3.8","SDK":"5.5.4.260407","CpuFrequency":160,"Hardware":"ESP32-C3 v0.4","CR":"416/699"}}
13:31:08.987 MQT: stat/hk2/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":2,"MqttLog":0,"FileLog":0,"SysLog":0,"LogHost":"","LogPort":514,"SSId":["REDACTED",""],"TelePeriod":300,"Resolution":"558180C0","SetOption":["00008009","2805C80001000600003C5A0A192800000000","00000080","00006000","00000000","00000000"]}}
13:31:08.996 MQT: stat/hk2/STATUS4 = {"StatusMEM":{"ProgramSize":2096,"Free":783,"Heap":169,"StackLowMark":3,"PsrMax":0,"PsrFree":0,"ProgramFlashSize":4096,"FlashSize":4096,"FlashChipId":"164046","FlashFrequency":80,"FlashMode":"DIO","Features":["0809","9F9AD7DF","0015A001","B7F7BFCF","05DA9BC4","E0360DC7","480840D2","20200000","D4BC482D","810A80F1","00200815"],"Drivers":"1,2,!3,!4,!5,7,!8,9,10,11,12,!14,!16,!17,!20,!21,!24,26,!27,29,!34,!35,38,50,52,!59,!60,62,!63,!66,!67,!68,!71,!73,!75,82,!86,!87,!88,!91,!121","Sensors":"1,2,3,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,26,31,34,37,39,40,42,43,45,51,52,55,56,58,59,64,66,67,74,85,92,95,98,103,105,109,119,127","I2CDriver":"7,8,9,10,11,12,13,14,15,17,18,20,24,29,31,36,41,42,44,46,48,58,62,65,69,76,77,82,89,97"}}
13:31:09.006 MQT: stat/hk2/STATUS5 = {"StatusNET":{"Hostname":"hk2","IPAddress":"192.168.X.X","Gateway":"192.168.X.X","Subnetmask":"255.255.255.0","DNSServer1":"192.168.X.X","DNSServer2":"192.168.X.X","Mac":"B8:1F:3F:FE:40:A8","IP6Global":"","IP6Local":"fe80::ba1f:3fff:fefe:40a8%st2","Ethernet":{"Hostname":"","IPAddress":"0.0.0.0","Gateway":"0.0.0.0","Subnetmask":"0.0.0.0","DNSServer1":"192.168.X.X","DNSServer2":"192.168.X.X","Mac":"00:00:00:00:00:00","IP6Global":"","IP6Local":""},"Webserver":2,"HTTP_API":0,"WifiConfig":4,"WifiPower":9.0}}
13:31:09.017 MQT: stat/hk2/STATUS6 = {"StatusMQT":{"MqttHost":"mqtt.REDACTED","MqttPort":1883,"MqttClientMask":"DVES_%06X","MqttClient":"DVES_FE40A8","MqttUser":"","MqttCount":1,"MqttTLS":0,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30,"SOCKET_TIMEOUT":4}}
13:31:09.025 MQT: stat/hk2/STATUS7 = {"StatusTIM":{"UTC":"2026-08-20T12:31:09Z","Local":"2026-08-20T13:31:09","StartDST":"2026-03-29T02:00:00","EndDST":"2026-10-25T03:00:00","Timezone":"+01:00","Sunrise":"05:50","Sunset":"19:56"}}
13:31:09.037 MQT: stat/hk2/STATUS10 = {"StatusSNS":{"Time":"2026-08-20T13:31:09"}}
13:31:09.043 MQT: stat/hk2/STATUS11 = {"StatusSTS":{"Time":"2026-08-20T13:31:09","Uptime":"0T00:15:22","UptimeSec":922,"Heap":171,"SleepMode":"Dynamic","Sleep":0,"LoadAvg":999,"MqttCount":1,"Berry":{"HeapUsed":4,"Objects":50},"PWM":{"PWM6":0},"Wifi":{"AP":1,"SSId":"REDACTED","BSSId":"REDACTED","Channel":1,"Mode":"HT20","RSSI":100,"Signal":-39,"LinkCount":1,"Downtime":"0T00:00:05"},"Hostname":"hk2","IPAddress":"192.168.X.X"}}- Set
weblogto 4 and then, when you experience your issue, provide the output of the Console log:
Console output here:
13:38:59.114 CMD: weblog 4
13:38:59.118 MQT: stat/hk2/RESULT = {"WebLog":4}
13:38:59.215 CFG: Saved, Count 14, Bytes 4096
13:39:08.312 CMD: gpio4 421
13:39:08.313 SRC: WebConsole from 192.168.X.X
13:39:08.313 CMD: Grp 0, Cmd 'GPIO', Idx 4, Len 3, Pld 421, Data '421'
13:39:08.320 MQT: stat/hk2/RESULT = {"GPIO0":{"None":0},"GPIO1":{"None":0},"GPIO2":{"None":0},"GPIO3":{"PWM6":421},"GPIO4":{"None":0},"GPIO5":{"None":0},"GPIO6":{"None":0},"GPIO7":{"None":0},"GPIO8":{"None":0},"GPIO9":{"None":0},"GPIO10":{"None":0},"GPIO18":{"None":0},"GPIO19":{"None":0},"GPIO20":{"None":0},"GPIO21":{"None":0}}TO REPRODUCE
Run GPIO3 421 in the console, directly or via backlog.
EXPECTED BEHAVIOUR
The output should show GPIO3 as 421
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)
Source: arendst/Tasmota