Czy wolisz polską wersję strony elektroda?
Nie, dziękuję Przekieruj mnie tam{
"vendor": "eWeLink",
"bDetailed": "0",
"name": "eWeLink Smart WiFi Socket 20A",
"model": "RMC021",
"chip": "BL602",
"board": "SM-028_V1.3",
"flags": "1024",
"keywords": [
"BL602",
"socket",
"BL0937"
],
"pins": {
"2": "Rel;1",
"3": "BL0937CF1;0",
"14": "BL0937CF;0",
"20": "LED_n;1",
"21": "BL0937SEL;0",
"22": "Btn;1"
},
"image": "https://obrazki.elektroda.pl/8095216400_1711786208.jpg",
"wiki": "https://www.elektroda.com/rtvforum/topic4020634.html"
}
bl_wdt_init(1000);
bl_wdt_feed();
TL;DR: "All 5 devices are still available" after BL602 software-watchdog support. This FAQ is for BL602/BL0937 smart-plug owners who need one practical answer set for UART flashing, GPIO mapping, zero readings, OTA failures, and freeze recovery on SM-028_V1.3-class sockets. [#21032468]
Why it matters: These plugs can look identical outside but differ in button GPIO, OTA behavior, and crash recovery, so one wrong assumption can leave power metering at 0 or make the socket freeze.
| Variant | MCU/module | Common button GPIO | Best flashing path | Typical issue in thread |
|---|---|---|---|---|
| SM-028_V1.3 smart plug | BL602L02 | 17 | UART + Bouffalo Dev Cube | BL0937 stayed at 0 before interrupt support |
| RMC021 / similar BL602 plug | BL602 / SM-028_V1.3 | 22 | UART + OpenBeken/OpenBL602 | Random freezes after minutes or hours |
| CB2S plug | BK7231N | Varies | Use BK7231N firmware, not BL602 | Wrong-thread / wrong-firmware risk |
| ESP8266 Tuya plug | ESP8266 | Varies | OTA only if exploit works; otherwise UART | Tuya-convert patched on older units |
Key insight: The turning point was not the pin template alone. BL602 plugs started reporting BL0937 values reliably only after BL602-specific interrupt handling worked, and long-term usability improved further once chunked OTA erase and the software watchdog were added.
0x000d8000 with size 0x00088000 or 544 Kbytes, while the incoming OTA size shown was 557056 bytes. [#20921739]startDriver BL0937; startDriver NTP; startDriver SSDP. That mapping produced working switching and metering on a BL602 socket sold as an eWeLink Smart WiFi Socket 20A with SM-028_V1.3 hardware. [#21025378]g_vc_pulses and g_p_pulses increased. The thread also points to BL602 GPIO interrupt setup, including hal_gpio_register_handler(...), and questions whether those handlers were being called at all. [#20919426]OpenBL602_1.17.756_OTA.bin.xz.ota, the metering values were correct but the physical button still failed until Btn;1 was moved from GPIO17 to GPIO22. That makes GPIO22 the right fix for at least one later Tuya variant. [#21274357]BL_RST_SOFTWARE_WATCHDOG, and users reported that this kept previously freezing devices available. It does not cure the root bug, but it changes a hard freeze into an automatic reboot. [#21030199]-1 in the OpenBeken Startup tab. That is the thread’s recommended retain-style setting for restoring the previous relay state after a reboot. It does not force permanent ON, but it tells the plug to come back in the last known state instead of always defaulting OFF. [#21064535]SetupEnergyStats 1 60 60 froze the device after 59 seconds, while SetupEnergyStats 1 70 60 froze it after 69 seconds. First remove the command from Startup, then run it once manually, and capture the last serial or web log before the exact freeze time. [#20944817]