FAQ
TL;DR: For the AVATTO TS03, one user cut a trace to flash and avoided desoldering; "If I cut this trace, I can flash without desoldering." Two units were damaged by hot air—use care. This FAQ helps DIYers flash and configure the BK7231N 3‑gang no‑neutral switch. [Elektroda, guilhermemaciel, post #20932577]
Why it matters: Clear, field-tested steps and pitfalls help you flash safely and avoid bricking or damaging the switch.
Quick Facts
- Hardware: BK7231N on Tuya CB3S module; AVATTO 3‑Gang No Neutral, model TS03. [Elektroda, guilhermemaciel, post #20932630]
- Recommended flasher: OpenSHWProjects BK7231GUIFlashTool; see linked tutorials. [Elektroda, p.kaczmarek2, post #20904622]
- Powering for flash: Use a stable external 3.3 V; FTDI’s 3.3 V often isn’t enough. [Elektroda, p.kaczmarek2, post #20906566]
- UART note: TX1/RX1 don’t seem to route elsewhere, so flashing is typically straightforward. [Elektroda, p.kaczmarek2, post #20904830]
- Template highlights: Buttons on pins 7/8/10, relays on 14/24/26, Wi‑Fi LED on pin 23. [Elektroda, guilhermemaciel, post #20932630]
What chipset and module does the AVATTO TS03 use?
The teardown/template confirms a BK7231N running on a Tuya CB3S module. The device is labeled Avatto 3‑Gang No Neutral, model TS03. The shared template also maps key GPIOs, including pin 23 as WiFiLED_n, three button inputs, and three relay outputs, matching a typical 3‑gang wall switch profile. This establishes compatibility with OpenBK/Libre firmware ecosystems targeting BK7231N on CB3S. [Elektroda, guilhermemaciel, post #20932630]
What tool should I use to flash the AVATTO 3‑gang switch?
Use the OpenSHWProjects BK7231GUIFlashTool. The original guidance also links step‑by‑step video tutorials on Elektroda’s YouTube channel. This tool supports BK7231N/CB3S modules and is appropriate for direct UART flashing when the board is properly powered and set into flashing mode. [Elektroda, p.kaczmarek2, post #20904622]
How do I flash the TS03 with BK7231GUIFlashTool?
- Wire UART: TX↔RX, RX↔TX, GND↔GND, plus a stable 3.3 V supply to the CB3S.
- Put the board in flashing/bootloader mode as shown in the linked tutorial.
- Start BK7231GUIFlashTool, select the COM port and firmware, then flash.
These steps mirror the recommended tool flow referenced in the thread and linked videos. [Elektroda, p.kaczmarek2, post #20904622]
My FTDI’s 3.3 V isn’t enough—how do I fix power issues while flashing?
Use an external, stable 3.3 V supply instead of the FTDI board’s regulator. This resolves brownouts and connection errors during flashing. As one expert noted, “That’s what we say on every flashing guide,” emphasizing adequate power as a baseline requirement. Keep grounds common between the supply and USB‑UART. [Elektroda, p.kaczmarek2, post #20906566]
Are TX1 and RX1 easy to access on this board?
Yes. The photos indicate TX1 and RX1 don’t appear to route through other subsystems. That means the flashing procedure should be straightforward once you have stable power and a proper UART connection. This reduces the need for complex isolation steps on the UART lines. [Elektroda, p.kaczmarek2, post #20904830]
Do I need to isolate TX/RX to flash without desoldering?
In at least one case, cutting a specific trace enabled flashing without desoldering. The user then restored the trace after flashing. This suggests some lines may load or interfere with the UART during programming. If you cut, label and repair the trace afterward with a short jumper. [Elektroda, guilhermemaciel, post #20932577]
After 100+ resets I still can’t flash—what next?
Stop looping resets and reassess. One user attempted over 100 resets with no success, yet confirmed the board fully booted and was controllable via the app. That’s a sign to change approach: verify power, connections, and consider UART isolation or module removal. [Elektroda, guilhermemaciel, post #20924857]
Should I desolder the CB3S module if in‑circuit flashing keeps failing?
Desoldering the module can work. A user reported successful flashing after removing the board when in‑circuit attempts failed repeatedly. This isolates the module from any interfering circuits on the main PCB and can save time when troubleshooting stalls. [Elektroda, guilhermemaciel, post #20930966]
The green “reset” LED is always on—how do I turn it off?
Change its GPIO role. If it’s set to WiFiLED, switch to WiFiLED_n for inverse logic or to AlwaysLow/AlwaysHigh to force off/on. “If it’s role is set as WiFiLED, it will show the current WiFi state,” so pick the behavior you want in OpenBK. [Elektroda, p.kaczmarek2, post #20932609]
Which GPIO pin is the LED on, and how is it labeled?
Pin 23 drives that LED and is tagged as Wi‑Fi in the shared notes. Configure it as WiFiLED or WiFiLED_n depending on the desired behavior, or force its state with AlwaysLow/AlwaysHigh in OpenBK. [Elektroda, guilhermemaciel, post #20932603]
What’s the working GPIO template for this switch?
Use the shared template: buttons on pins 7, 8, 10; relays on 14, 24, 26; WiFi LED on 23 (WiFiLED_n). The template metadata identifies vendor Avatto, model TS03, chip BK7231N, board CB3S, and includes the product image and wiki link. [Elektroda, guilhermemaciel, post #20932630]
After flashing, my capacitive buttons don’t respond—what software setting should I check?
Check whether the child‑lock flag is enabled. If child‑lock is on, touch inputs will not toggle loads, which can look like failed buttons. Disable it in your firmware configuration and re‑test each channel. [Elektroda, p.kaczmarek2, post #20942135]
After flashing, my capacitive buttons don’t respond—what hardware should I inspect?
Inspect the U3 8‑pin IC linked to the touch front‑end and reflow the board’s headers. “The buttons seem capacitive, then rarely anything can fail.” Re‑solder with flux and keep the header aligned by plugging it during reflow. [Elektroda, omniron, post #20942136]
What are the risks of hot‑air rework on this switch?
Hot‑air rework can damage the touch PCB and nearby passives. One user overheated a touch button on one unit and lost an SMD capacitor on another. Use lower heat, shielding, and minimal dwell time to avoid costly failures. [Elektroda, guilhermemaciel, post #20932577]
How can I confirm the board has fully booted during troubleshooting?
If the module powers correctly, it should boot and be controllable via the app. That confirmation indicates firmware is running and UART failures likely stem from power, timing, or line interference, not a dead module. [Elektroda, guilhermemaciel, post #20924857]
Where can I watch step‑by‑step flashing videos for BK7231N/CB3S?
See the tutorials linked with the flasher recommendation. The thread points to Elektroda’s YouTube channel, which demonstrates the BK7231GUIFlashTool process and connection tips. Follow the video’s sequence to avoid common pitfalls. [Elektroda, p.kaczmarek2, post #20904622]