logo elektroda
logo elektroda
X
logo elektroda

[BK7231T / WB3S] Makegood MG-AUWF01 "Touch WiFi Wall Socket" Revision 1.2-211019

mikurok 909 0

TL;DR

  • The Makegood MG-AUWF01 “Touch WiFi Wall Socket” Revision 1.2-211019 was converted from stock firmware to OpenBeken on BK7231T/WB3S hardware.
  • Flashing used the BK7231 Easy UART Flasher under Linux with mono, a clone Arduino UNO held in reset as the USB-to-TTL bridge.
  • A consistent 460800 baud rate worked, and after the first unit the rest took less than 5 minutes each.
  • OpenBeken was configured with LED_n, Rel, Btn, BL0937CF1/CF, and BL0937SEL pins, startup channels set to -1, and Flag 6 enabled for instant touch.
  • OpenBeken pin numbers map to the Beken chip, so the board had to be traced by names, and the original LED colors were reversed.
Generated by the language model.
ADVERTISEMENT
📢 Listen (AI):
  • Glass touch panel with black surface resting on a white Smart Switch box. Rear label of MG-AUWF01 touch WiFi wall socket showing wire labels and specs. White box labeled “Smart Switch” with a drawing of a touch switch panel White box for smart touch switch with configuration options chart on the side

    I had previously bought a set of these around 2020 because they contained an ESP-12F with Tasmota support. later I bought some more, but they changed the chip used in them. Thankfully I've found people have been making a similar firmware for this board as well. There's no guide for this particular device however, but I can use this as an opportunity to contribute something!

    I had only used tuya-convert before, so this was a bit of a learning curve, but actually doing the modification was not difficult once you've figured it out. once i'd done one of them, the rest took less than 5 minutes each.

    --

    Here's what i ended up doing for most of them. initially I soldered all four wires (VCC/GND/TX/RX), but later I used cheap probes for the power (could do wire wrapping instead), and just held the TX/RX by hand (no soldering!). Using a clone Arduino UNO held in reset in place of a USB to TTL serial adapter. I used the BK7231 Easy UART Flasher tool, running it under linux using mono. A baud rate of 460800 was consistent for me. I simply held the serial wires in place, clicked the read/write button in the flasher tool, then plugged in the VCC pin to the Arduino.
    GPS module connected to Arduino UNO board with wires on a fabric-covered surface Electronic module with labeled WB3S, BL0937, and SGL8022K chips and pin annotations

    Here's some photos of the boards:
    WB3S electronic module on blue PCB with SMD components and pin headers Makegood-US touch PCB with CH1 and CH2 channels and two touch pads Circuit board with relay, capacitors, and screw terminals Electronic module with AC sockets and components mounted on a blue PCB Close-up of a blue PCB with a BGL8022K microchip and various electronic components Close-up of an integrated circuit and SMD components on a blue PCB

    --

    Configuration:
    Pins;
    "pins": {
        "1": "LED_n;2;0",
        "6": "Rel;1;0",
        "7": "Rel;2;0",
        "8": "BL0937CF1;1;0",
        "9": "BL0937CF;2;0",
        "11": "Btn;1;1",
        "14": "Btn;2;2",
        "24": "BL0937SEL;2",
        "26": "LED_n;1"
      },

    Note: original firmware had the LEDs red when on and blue when off. I don't find this natural, so I've swapped this behaviour. If you prefer the original behaviour, use "LED" instead of "LED_n".
    Under "Configure Startup", I set both channels to "-1" so it would remember switch state upon power loss.
    Under "Configure General/Flags", I set "Flag 6 - [BTN] Instant touch reaction instead of waiting for release (aka SetOption 13)". otherwise touch buttons will only be on when held.

    Here are original firmwares for the devices. one plain file, and an archive of 20 firmwares (including the plain one attached). They're all from the same shipment, so should contain only differences unique to each device. They were not activated/used with the intended app/service beforehand.
    readResult...-37-07.bin (2 MB)You must be logged in to download this attachment. firmwa...7z (977.36 kB)You must be logged in to download this attachment.

    --
    AI: Just to clarify, are you looking for help with anything specific regarding flashing or configuring the MG-AUWF01 sockets, or are you mainly sharing your experience for others?
    Sharing how to get OpenBeken installed and configured on it.
    AI: Did you run into any issues or unexpected behavior during the flashing or setup process that you’d like advice on?
    A general explanation of how to configure OpenBeken for a new device would be nice. I spent some time figuring out how the pin numbers in OpenBeken correlated with the board I have, before realising the pin numbers are for the Beken chip itself, so I basically had to ignore them and use the names for the pins only (except pin 14 which was just pin 14). I also didn't learn OpenBeken had tools to detect and test pins within its' UI before I had already worked it out by tracing/beeping out each pin with a multimetre

    Cool? Ranking DIY
    About Author
    mikurok
    Level 1  
    Offline 
    mikurok wrote 1 posts with rating 1, helped 1 times. Been with us since 2025 year.
  • ADVERTISEMENT
📢 Listen (AI):

FAQ

TL;DR: Flash OpenBeken on MG-AUWF01 (WB3S/BK7231T) in under 5 minutes per socket; "baud rate 460800 was consistent." Use Arduino UNO-as-TTL, Easy UART Flasher, set Flag 6 and Startup -1, and map pins as below. [Elektroda, mikurok, post #21727147]

Why it matters: This FAQ helps DIYers quickly replace Tuya firmware with OpenBeken for local control, energy data, and faster touch response.

Quick Facts

What board and chip are inside the Makegood MG-AUWF01 (Rev. 1.2‑211019)?

It uses a Tuya WB3S module based on the Beken BK7231T Wi‑Fi MCU. Energy metering connects to a BL0937 using CF, CF1, and SEL lines. This combination enables power data plus two relay channels and two touch inputs on the wall socket board. Photos in the teardown confirm the module and metering IC placement. [Elektroda, mikurok, post #21727147]

Can I flash OpenBeken without permanent soldering?

Yes. Power can be applied with clip probes or wire-wrap. Hold TX/RX by hand to make brief UART contact. The author flashed after clicking Read/Write in the tool, then plugging VCC, avoiding full soldering. Ensure a solid ground reference and keep wires short to reduce noise during flashing. [Elektroda, mikurok, post #21727147]

Which flasher and baud rate should I use?

Use the BK7231 Easy UART Flasher. Run it on Linux via Mono if needed. The reported reliable speed is 460800 baud for read and write operations. That rate balances speed and stability for BK7231T. Quote: "A baud rate of 460800 was consistent for me." [Elektroda, mikurok, post #21727147]

How do I repurpose an Arduino UNO as a USB‑to‑TTL adapter?

Connect the UNO to USB, hold it in reset (tie RESET to GND), and wire UNO TX/RX to the WB3S RX/TX through GND. Provide 3.3 V VCC from a suitable source, not the UNO 5 V pin. Start the flasher, then apply VCC to begin the session. Cross-check TX↔RX if you see no data. [Elektroda, mikurok, post #21727147]

What OpenBeken pin map works for this socket?

Use the provided mapping: 1=LED_n;2, 6=Rel;1, 7=Rel;2, 8=BL0937CF1;1, 9=BL0937CF;2, 11=Btn;1;1, 14=Btn;2;2, 24=BL0937SEL;2, 26=LED_n;1. This config sets two relays, two touch buttons, dual LEDs, and energy metering. Apply via OpenBeken's Pins config panel. [Elektroda, mikurok, post #21727147]

How do I invert the LED behavior (blue off, red on) or keep stock colors?

Stock firmware shows red when ON and blue when OFF. In OpenBeken, use LED_n for inverted logic to make blue off and red on feel more natural. Prefer stock? Use LED instead of LED_n on the LED pins. Change only the LED function fields. [Elektroda, mikurok, post #21727147]

How do I make touch buttons react instantly?

Enable Flag 6 in OpenBeken (BTN instant touch reaction, same as SetOption13). This changes detection from "on release" to "on touch" for snappier control. Without Flag 6, a touch holds the output only while your finger remains on the pad. Apply it in Configure General/Flags. [Elektroda, mikurok, post #21727147]

How do I restore relay states after a power outage?

In Configure Startup, set both channels to "-1". This setting tells OpenBeken to remember the last relay states and reapply them on boot. It helps wall sockets behave predictably after a blackout or accidental power cut. Save and reboot to commit. [Elektroda, mikurok, post #21727147]

How can I discover the right pins if labels don’t match?

Ignore board silkscreen numbers and use function names in OpenBeken. These pins refer to BK7231T GPIO numbers, not the carrier board labels. Use OpenBeken’s UI pin tools to probe functions, or trace with a multimeter from the button LEDs and relays. [Elektroda, mikurok, post #21727147]

What’s a quick 3‑step flashing workflow for MG-AUWF01?

  1. Wire GND, TX↔RX, and prep VCC; hold Arduino UNO in reset as USB‑TTL.
  2. Open BK7231 Easy UART Flasher (Mono on Linux), set 460800 baud, click Read/Write.
  3. Apply 3.3 V VCC to the module and wait for completion, then configure pins. [Elektroda, mikurok, post #21727147]

Any common pitfalls or failure cases to watch for?

If you skip Flag 6, touches act only while held. If VCC is applied before starting the flasher, the session may not start. Reversing TX/RX prevents communication. Use stable 3.3 V power and a short ground path. Quote: "once I'd done one of them, the rest took less than 5 minutes." [Elektroda, mikurok, post #21727147]

What is OpenBeken in this context?

OpenBeken is community firmware for BK7231-based devices. It provides local control, MQTT, and configurable GPIO functions similar to Tasmota on ESP8266. Here it replaces Tuya firmware on the MG-AUWF01 to enable custom pin maps and instant touch response. [Elektroda, mikurok, post #21727147]

Why didn’t tuya‑convert work for these newer units?

Earlier MG-AUWF01 units used ESP‑12F, which tuya‑convert supported. Newer revisions switched to WB3S (BK7231T), so OTA exploit methods no longer apply. UART flashing with the BK7231 flasher becomes the practical path. The author moved from tuya‑convert to UART here. [Elektroda, mikurok, post #21727147]

Where can I find original firmware backups for safety?

The author shared one plain firmware and an archive of 20 original dumps from the same shipment. These help restoration or diffing configurations. Keep your own backup before writing. Statistic: 20 device firmwares were included in the archive. [Elektroda, mikurok, post #21727147]
Generated by the language model.
ADVERTISEMENT