logo elektroda
logo elektroda
X
logo elektroda

Teardown Insights for AVATTO 3 Gang No Neutral Switch - Flashing Guidance Needed

guilhermemaciel 2331 16
Best answers

How can I flash an AVATTO 3-gang no-neutral switch?

It should be flashable with BK7231GUIFlashTool, and the thread suggests powering the board from an external 3.3 V supply instead of relying on the FTDI board because its 3.3 V output may be too weak [#20904622][#20906566] The PCB photo also suggests TX1 and RX1 are not routed anywhere, so the in-circuit flashing procedure should be straightforward in theory [#20904830] In practice, one user could not flash it while it was installed, but after desoldering the board they managed to flash successfully [#20924857][#20930966] They later reported that cutting a trace/via path may allow flashing without desoldering, though they also warned that hot-air removal damaged parts on some units [#20932577]
Generated by the language model.
ADVERTISEMENT
  • ADVERTISEMENT
  • #2 20904622
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14408
    Help: 650
    Rate: 12345
    This should be easily flashable by:
    https://github.com/openshwprojects/BK7231GUIFlashTool
    Please see related tutorials on our channel https://www.youtube.com/@elektrodacom , especially:





    Helpful post? Buy me a coffee.
  • ADVERTISEMENT
  • #3 20904629
    guilhermemaciel
    Level 3  
    Posts: 13

    Thanks for the help, I will get the tools and report my success or request further assistance. Thanks a lot!
  • #4 20904830
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14408
    Help: 650
    Rate: 12345
    From what I can see on the photo, it doesn't look like TX1 and RX1 are going anywhere, so the flashing procedure will most likely be very simple.
    Helpful post? Buy me a coffee.
  • ADVERTISEMENT
  • #5 20906254
    guilhermemaciel
    Level 3  
    Posts: 13

    I'm getting this error when trying to flash:
    Screenshot of BK7231 Easy UART Flasher showing an error message.
    Tried on another computer and I checked my connections also.

    Added after 50 [minutes]:

    I believe it's because I'm getting the 3.3v from the FTDI usb board itself and it isn't able to provide enough power.
  • #6 20906566
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14408
    Help: 650
    Rate: 12345
    You are correct, @guilhermemaciel . That's what we say on every flashing guide, and even in the flasher readme:
    https://github.com/openshwprojects/BK7231GUIFlashTool
    A section of the instructions for flashing options with a highlighted part of the text.
    Helpful post? Buy me a coffee.
  • #7 20924857
    guilhermemaciel
    Level 3  
    Posts: 13

    I used an external power. The board is fully booting, I know because I can connect/control it with the app. However, I didn't manage to flash it at all. I tried resetting it over 100 times and it didn't work...

    I even broke one of the pins of an IC that I thought was connected to the RX or TX of the board.

    Is it a better idea to desolder the board for reflashing?
  • #8 20930966
    guilhermemaciel
    Level 3  
    Posts: 13

    Desoldered the board and managed to flash. I'm trying to understand what vias are messing it up so I can just cut them on the board and fix them later. I think it's easier than desoldering.
  • #9 20932577
    guilhermemaciel
    Level 3  
    Posts: 13

    Close-up of a green PCB with a mounted module featuring CE and RoHS markings.
    If I cut this trace, I can flash without desoldering. I damaged 2 units in the solder/desolder process. I overheated one of the touch buttons with the hot air, and on another one, one of the SMD capacitors went missing, also because of the hot air.

    I'm going to start installing soon. The only thing that seems to be wrong is that the green "reset" LED that one of the buttons has stays on all the time.
  • #10 20932582
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14408
    Help: 650
    Rate: 12345
    Maybe you can control this LED? Try using GPIO doctor to find out roles of the GPIO
    Helpful post? Buy me a coffee.
  • #11 20932603
    guilhermemaciel
    Level 3  
    Posts: 13

    It's pin 23, it's even tagged as Wi-Fi, how do I make it turn off?
  • ADVERTISEMENT
  • #12 20932609
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14408
    Help: 650
    Rate: 12345
    If it's role is set as WiFiLED, it will show the current WiFi state. If you want it to be off most of the time, change the role to WiFILED_n. If you want to keep it forever off, consider changing it to AlwaysLow (or, maybe, AlwaysHigh, depending how is LED connected).
    Helpful post? Buy me a coffee.
  • #13 20932630
    guilhermemaciel
    Level 3  
    Posts: 13
    Thanks a lot, it's now fixed!

    This is the template that I got:

    Code: JSON
    Log in, to see the code
  • #14 20932956
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14408
    Help: 650
    Rate: 12345
    Thanks. I added more information to the template, along with the device model name - it's TS03, according to Aliexpress listing.
    Helpful post? Buy me a coffee.
  • #15 20941699
    guilhermemaciel
    Level 3  
    Posts: 13
    I'm not sure where to ask, but, I'm having issues with the buttons, they died on 3 boards. I thought it was some mistake on the ones that I was removing the CB3S chip, but, I'm sure that in at least one I tested it before installing. Any tips on what to check?

    I'm sure it isn't related to the fw, I think I broke something, just don't know exactly what traces to follow.
  • #16 20942135
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14408
    Help: 650
    Rate: 12345
    Do you have childlock flag enabled?
    Helpful post? Buy me a coffee.
  • #17 20942136
    omniron
    Level 11  
    Posts: 114
    Help: 1
    Rate: 6

    The buttons seem capacitive, then rarely anything can fail.
    What's the name of the U3 8-pin chip on the backside?
    One source of problems I found are the headers, resolder them with decent solder and maybe some flux.
    Plug the unit in while soldering, so the pins/sockets don't fall out of line.

Topic summary

✨ The discussion revolves around flashing the AVATTO 3 Gang No Neutral Switch (model TS03) using the BK7231GUIFlashTool. Users share insights on the flashing process, troubleshooting connection issues, and the importance of using external power sources for successful flashing. One user encountered errors due to insufficient power from the FTDI USB board, while another successfully flashed the device after desoldering it. The conversation also covers the control of a persistent LED indicator and the configuration of GPIO pins. Additionally, users discuss issues with button functionality on multiple boards, suggesting checks on soldering quality and potential childlock settings.
Generated by the language model.

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

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?

  1. Wire UART: TX↔RX, RX↔TX, GND↔GND, plus a stable 3.3 V supply to the CB3S.
  2. Put the board in flashing/bootloader mode as shown in the linked tutorial.
  3. 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]
Generated by the language model.
ADVERTISEMENT