FAQ
TL;DR: Community firmware cut a 900 % voltage error (10× factor) after "Firmware fix landed in 15 minutes" [Elektroda, p.kaczmarek2, post #20743838] Flash OpenBeken ≥ 1.17.406, load the autoexec.bat below, and the ATORCH S1 reports accurate V, W, PF and relay states.
Why it matters: Correct scaling and stable MQTT discovery turn a cheap €15 meter into a precision power probe for Home Assistant.
Quick Facts
• Tri-chip design: BK7231N Wi-Fi (C3BS) + CH573F MCU + BL0942 metering IC [Elektroda, maximesharp, post #20743339]
• Firmware: OpenBeken 1.17.406 adds Voltage_div100, Power_div100, PowerFactor_div100 [Elektroda, maximesharp, post #20910128]
• Tuya MCU baud rate: 115 200 bps (set via tuyaMcu_setBaudRate) [Elektroda, maximesharp, post #20910128]
• Relay control DPID 131 enum (0 = ON, 1 = OFF, 2 = AUTO); status DPID 1 bool [Elektroda, maximesharp, post #20919646]
• Safe-mode recovery: cycle mains 5× quickly to regain AP (≈ 15 s) [Elektroda, divadiow, post #20959060]
What hardware is inside the ATORCH S1 smart socket?
Inside you find a C3BS module (BK7231N Wi-Fi/SoC), a CH573F 8051-core MCU handling the LCD and keypad, and a BL0942 energy-metering chip connected to a 0.001 Ω shunt resistor [Elektroda, maximesharp, post #20743339]
Which OpenBeken version fixes the 10× voltage and power error?
Flash at least v1.17.406. That build introduced Voltage_div100, Power_div100 and PowerFactor_div100 channel types, removing the 10× scaling bug first noted in v1.17.251 [Elektroda, maximesharp, post #20910128]
How do I generate a working autoexec.bat?
Use the script posted by maximesharp and ensure new channel types:
- Start drivers: TuyaMCU, NTP; set baud 115 200.
- Map DPID 131 enum to channel 0 (Toggle_Inv) and DPID 1 bool to channel 1 (ReadOnly).
- Apply Voltage_div100, Power_div100, Current_div1000, Frequency_div100, PowerFactor_div100 and EnergyTotal_kWh_div1000 to channels 2-9 [Elektroda, maximesharp, post #20919646]
Why doesn’t Channel 1 toggle the relay?
DPID 1 only mirrors relay status; control lives on DPID 131. Relink Channel 0 to DPID 131 with Toggle_Inv (enum 0/1) and leave Channel 1 as ReadOnly for status [Elektroda, maximesharp, post #20919646]
Home Assistant still shows wrong units after firmware update—what now?
Delete the device in HA, press “Start Home Assistant Discovery” on the OpenBeken UI, then re-add. Old discovery retained the previous decimal-place metadata; a fresh MQTT config publishes the corrected div factors [Elektroda, maximesharp, post #20745050]
Can I flash the CB3S module without desoldering?
Yes. Provide a solid 3.3 V supply from a USB-TTL adapter, hold BOOT to ground, and break the CH573F→RX trace or lift the pin so the MCU stays silent. Many users program in-circuit using a CP2102 adapter; CH343P often fails mid-backup [Elektroda, hwti, post #20945220]
Quick 3-step in-circuit flashing guide
- Sever or lift CB3S RX from CH573F.
- Wire 3.3 V, GND, RX, TX, BOOT (to GND) and RST to your USB-TTL.
- Run bkWriter → flash OpenBeken, reconnect trace, power-cycle.
What if Wi-Fi credentials are lost?
Power the socket OFF/ON five times within ~10 seconds. OpenBeken enters safe-mode AP (192.168.4.1) where you can reconfigure Wi-Fi or upload a fixed autoexec.bat [Elektroda, divadiow, post #20959060]
Does OpenBeken expose the internal CPU temperature?
The Tuya MCU reports CPU temperature on DPID 135; map it with channel type Temperature to read 0 – 150 °C. A test build also exposes BK7231N’s own sensor but currently scales roughly 27.0 °C → 270; apply Temperature_div10 if you trial that branch [Elektroda, miegapele, post #20946773]
Why does energy total advance in 1 Wh steps, not 0.01 Wh like the LCD?
TuyaMCU sends only three decimal places (kWh × 1000). The extra two digits shown on screen stay inside the CH573F firmware, so OpenBeken receives 0.001 kWh resolution at best [Elektroda, hwti, post #20946971]
Is factory calibration accurate or must I calibrate?
Tuya-based meters leave the factory calibrated; users report readings within 2 % against clamp meters after flashing [Elektroda, p.kaczmarek2, post #20946859] Use a resistive load (e.g., 35 W halogen) and the OBK “calibrate” command if you need finer alignment [Elektroda, maximesharp, post #20946830]
Edge case: what can fail during a mains short?
The 0.001 Ω shunt can open-circuit under very high surge currents, rendering current measurement zero while voltage remains. Replace with an identical 2512 metal plate resistor if burnt; always verify traces for scorching.