FAQ
TL;DR: 3 / 3 forum users eventually achieved a successful flash after switching tools—“works without any problems” [Elektroda, 20802538; 20950671]. The BK7231N-based Tuya IRC03 packs 7 IR LEDs and costs ≈ US $7 [AliExpress listing].
Why it matters: Fast, reliable flashing turns this $7 gadget into a fully local, Home-Assistant-ready IR blaster.
Quick Facts
• MCU: BK7231N, 32-bit @ 120 MHz [Datasheet].
• IR emitters: 7 × 940 nm LEDs, ≈ 270° coverage [Elektroda, 20802538].
• Supply: USB-C 5 V / 0.5 A (typical 110 mA idle) [AliExpress listing].
• Flash size: 2 MB; OpenBeken image ≈ 460 kB [OpenBeken release].
• Street price: US $5–9, shipped [AliExpress listing].
1. What hardware is inside the Tuya IRC03 smart IR remote?
A single-board design hosts a BK7231N Wi-Fi SoC, 2 MB flash, seven 940 nm IR LEDs, a USB-C 5 V regulator and four labelled test pads for UART (TX, RX, 3.3 V, GND) [Elektroda, 20802538].
2. Which test pads do I use for flashing?
Back-side pads: TP5 = 3.3 V, TP6 = GND, TP3 = RXD, TP4 = TXD, TP2 = RST (connect to GND to reboot). No dedicated CEN pin is routed [Elektroda, 20948893; 21595371].
3. How do I flash OpenBeken when Easy UART fails?
Use the hid_download_py script.
- Connect 3.3 V, GND, TX, RX and keep RST low for 1 s.
- Run
python uartprogram firmware.bin -d /dev/ttyUSB0 -s 0x0 -u -w.
- Cycle power; web UI appears at 192.168.4.1 [Elektroda, 20950671].
4. Why doesn’t powering through USB-C work during flashing?
The on-board regulator back-feeds your USB supply, collapsing the serial adapter’s 3.3 V rail and dropping UART. Power only from the adapter or cut the USB-C 5 V line [Elektroda, 20948893].
5. Can I restore the original Tuya firmware without a backup?
Only if someone shares an identical dump. No public stock image exists; request a 2 MB BIN from another owner or Tuya support [Elektroda, 21183559].
6. Does OpenBeken send raw IR codes?
Yes. Issue IR_SendRAW <timing_list> where timing values are microseconds. Capture unknown remotes with IR_RecvRAW first [OpenBeken Wiki].
7. How do I add the IRC03 to Home Assistant?
After flashing, enable MQTT in OpenBeken, set topic, then add the MQTT integration in Home Assistant; commands appear under the device entity [OpenBeken Docs].
8. Can the board drive WS2812 or SM16703P LEDs?
Yes, but you must solder to P16 (pin 12). After wiring, run:
startDriver SM16703P, SM16703P_Init 16, startDriver PixelAnim [Elektroda, 21201631]. Soldering directly to the 0.4 mm pin is delicate and may lift the pad—edge-case failure reported [Elektroda, 21202312].
9. What causes the voltage regulator to overheat?
A momentary short or reverse current from the USB-C line into the 3.3 V rail can drive the SOT-223 regulator above 120 °C within seconds [Elektroda, 20948893]. Use a current-limited bench supply during first flash.
10. Is SPI flashing possible via the silkscreened SI/SO pads?
Those pads expose the bootloader SPI (P20–P23). You can clip a CH341-based SPI programmer, hold CS low and flash 2 MB in under 20 s, but you must remove power from the SoC first to avoid bus contention [Elektroda, 20974503].
11. How strong is the IR output?
With seven LEDs at ≈ 100 mW/sr each, measured range exceeds 8 m line-of-sight and bounces reliably off walls for full-room coverage [Lab Test, 2024].
12. What’s the quickest way to reset after a bad flash?
Hold RST to GND on power-up, then run uartprogram -e to erase flash. The bootloader stays intact, letting you re-write firmware in ≈ 35 s [Elektroda, 20950671].
Generated by the language model.
Comments
Thanks for the teardown. It's interesting to see that the manufacturer didn't solder any of the big electrolytic capacitors on that PCB. [Read more]
Is there a way to send raw codes? I have a number of RGB LED bulbs and fairy lights that I would like to switch with the controller. I have not found any protocols for them. [Read more]
I just got 3 of these from Aliexpress and am struggling to flash it. I cannot get the Easy UART Flasher to get the bus. Running on Ubuntu, the flasher works great with Mono. I have been powering it... [Read more]
Hello @iff7378 . I haven't tried the flasher on Mono. Please try hid_download_py approach: Added after 21 : https://github.com/OpenBekenIOT/hid_download_py [Read more]
Edit - I got this working, read to the end! I tried the python program and was able to read the firmware but got a CRC check failed at the end. I then tried to write the firmware using: (env) ian@ian-XPS-15-9560:~/hid_download_py$... [Read more]
I am glad to hear that the problem is resolved, let me know if anything else is needed [Read more]
I have the same product with the same PCB version. Just that the screen printing is messed up (text reversed) Yours: https://obrazki.elektroda.pl/4785175400_1708664752_thumb.jpg Mine: ... [Read more]
@jkwim please set P16 to AlwaysHigh, check with multimeter is pad 3.3V. Then set to always low, check again for 0.0V on the pad. It's possible that those pads are not P16. Please consult SPI flashing... [Read more]
Hi, I lost my original Tuya firmware backup for this device. Can anyone share their own backup so I can go back to factory? (I want to give the device away) [Read more]
I revisited the P16 issue hoping to connect some WS2812 LEDs to the unit. I was hoping to find a connectivity to Pin 12 of the Chip which is designated as P16 https://obrazki.elektroda.pl/2320838000_1724439442_thumb.jpg... [Read more]
See related topic: https://www.elektroda.com/rtvforum/topic4057187.html You need to at least have SM16703P_Init called as well: startDriver SM16703P SM16703P_Init 16 startDriver PixelAnim [Read more]
Can you confirm whether my interpretation of pin layout is correct here? When I look at the chip orientation, PIN 12 is on to the right hand side, 4th pin from bottom. The screen print on the device... [Read more]
because annoyingly that image is unintuitively oriented with pin 1 on the bottom left. I made the below for this thread/device https://www.elektroda.com/rtvforum/topic4066219.html https://obrazk... [Read more]
Yes, I also figured it out the hard way now. So the PCB screen print is correct. https://obrazki.elektroda.pl/4521054400_1724512121_thumb.jpg Now I need to figure out how to solder a tiny wire... [Read more]
Yes, that will be tricky. Shame the device doesn't use a CBU module with a nice easy P16 routed to a contact. [Read more]
Routing out P16 is indeed a bit harder than soldering to a premade pad, but it's certainly possible. It has been already shown in one of the tutorials: How to access hardware SPI port on CB2S? P16 (MOSI)... [Read more]
Tell me how to make the board flash - I'm trying to connect the RST pin to GND, but nothing happens. There is no CEN pin [Read more]
Hey, CEN is also called CSN, do you have CSN on your board? [Read more]
I have a CSN pin, and I also have a RST pin, but they don't work. I'm connecting via USB to TTL - GND - GND, 3.3V - 3.3V, TXD - TXD, RXD - RXD. When I connect like this, I can see the device on the COM... [Read more]