logo elektroda
logo elektroda
X
logo elektroda
Dostępna jest polska wersja

Czy wolisz polską wersję strony elektroda?

Nie, dziękuję Przekieruj mnie tam

User Experience: Tuya WiFi Smart IR Remote Controller IRC03 [BK7231N] from Aliexpress

atomphil  35 9522 Cool? (+5)
📢 Listen (AI):

TL;DR

  • The Tuya WiFi Smart IR Remote Controller IRC03 from Aliexpress is a compact universal IR blaster with USB-C and seven IR LEDs.
  • Inside, it uses a single PCB with the BK7231N SoC soldered directly on board, unlike versions that use a breakout board.
  • Well-labelled test pins on the back expose flashing access, and the pin map lists IRSend on 7, IRRecv on 8, Btn24, and WifiLED.
  • Open Beken flashing worked without problems, and the device connected to Home Assistant and operated like other IR devices.
  • The housing opens easily, but the four latches can break off during disassembly.
Generated by the language model.
I bought an IRC03 Universal IR remote control from Aliexpress and would like to share my experience here:

Tuya Smart IR Remote with compatibility logos.

Tuya Smart IR Remote Control on Aliexpress page.

https://aliexpress.com/item/1005005942152298.html

The device itself is small, very well designed and comes with a USB C cable. It illuminates the room well in all directions with its seven ir leds.

Universal infrared remote control set with a USB-C cable and manual. Universal IR Remote IRC03 with USB-C Cable and Manual Back of a universal infrared remote control with technical specifications visible.

This is the information on the packaging and in the instructions (There also seems to be a version with an integrated thermometer and humidity meter.):

Photo of packaging with a QR code and iOS and Android labels. IR remote packaging with informational symbols. Information on the packaging of the Tuya WiFi Smart IR Remote Controller IRC03. Product specifications on the packaging of a universal infrared remote control.

The housing is easy to open, but care must be taken as the latches (four) can easily break off.

Two black circular case components with holes and notches. Photo of an open IRC03 Universal infrared remote control, showing the circuit board and interior casing.

The device differs from the other documented types. It has only one circuit board and the SoC is soldered on directly without a breakout board:

Circuit board with electronic components and LEDs. IRC03 Universal device circuit board with visible pin labels.

As you can read on the ic, it is a BK7231N. Flashing Open Beken works without any problems. Contact is made via well-labelled test pins on the back of the board.

Close-up of the circuit board of the IRC03 Universal remote with visible BK7231N chip. Interior of IRC03 universal remote with visible PCB and connected wires.

The Pin layout is as follows:
PinSetting
7IRSend
8IRRecv
9Btn
24WifiLED

Configuration:
Code: JSON
Log in, to see the code


Apart from the slightly different board, it is easy to get the device up and running with Open Beken and connect it to HA. Thanks to the easily accessible TP, everything is without any problems. The pins were quite easy to guess. Everything works as with the existing IR devices.

About Author
atomphil wrote 31 posts with rating 17 , helped 4 times. Been with us since 2023 year.

Comments

p.kaczmarek2 07 Nov 2023 01:24

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]

atomphil 15 Nov 2023 14:59

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]

iff7378 07 Feb 2024 03:06

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]

p.kaczmarek2 07 Feb 2024 20:23

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]

iff7378 07 Feb 2024 23:56

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]

p.kaczmarek2 08 Feb 2024 08:03

I am glad to hear that the problem is resolved, let me know if anything else is needed [Read more]

jkwim 23 Feb 2024 06:31

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]

p.kaczmarek2 23 Feb 2024 07:53

@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]

Cramp1017 07 Aug 2024 20:23

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]

jkwim 23 Aug 2024 21:18

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]

p.kaczmarek2 23 Aug 2024 22:18

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]

jkwim 24 Aug 2024 12:07

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]

divadiow 24 Aug 2024 13:18

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]

jkwim 24 Aug 2024 17:14

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]

divadiow 25 Aug 2024 14:20

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]

p.kaczmarek2 26 Aug 2024 16:10

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]

ghost320000 02 Jul 2025 08:55

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]

p.kaczmarek2 13 Jul 2025 20:25

Hey, CEN is also called CSN, do you have CSN on your board? [Read more]

ghost320000 14 Jul 2025 08:28

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]

FAQ

TL;DR: With 4 working GPIO assignments and 7 IR LEDs, the Tuya IRC03 with BK7231N flashes cleanly through rear test pads; as one expert put it, "everything works as with the existing IR devices." This FAQ helps OpenBeken and Home Assistant users wire, flash, and troubleshoot this exact AliExpress IR blaster variant. [#20802538]

Why it matters: This thread documents a confirmed BK7231N IRC03 board, its OpenBeken pin map, safe flashing practice, and the main failure modes that stop successful recovery.

Wariant / metoda Układ lub narzędzie Wynik Kluczowy szczegół
Starszy IRC03 BK7231N Potwierdzone działanie z OpenBeken Test pady z tyłu, 1 płytka PCB
Flashowanie pod Linux Easy UART Flasher + Mono Problemy zgłaszane Niektórzy nie mogli stabilnie uzyskać magistrali
Flashowanie pod Linux hid_download_py Potwierdzony sukces Zadziałało po dodaniu -s 0x0 -u -w
Nowszy „IRC03” T1/BK7238 Inny wariant sprzętu Brak ESPHome, wymaga innej procedury

Kluczowy wniosek: Nazwa „IRC03” nie gwarantuje tego samego hardware'u. Najpierw sprawdź oznaczenie układu na PCB, bo BK7231N, T1/BK7238 i nowsze rewizje wymagają innych metod flashowania. [#21733400]

Quick Facts

  • Urządzenie ma 7 diod IR, zasilanie przez USB-C i obudowę z 4 zatrzaskami, które łatwo uszkodzić przy otwieraniu. [#20802538]
  • Potwierdzona mapa pinów OpenBeken dla tej płytki to: P7 = IRSend, P8 = IRRecv, P9 = Btn, P24 = WifiLED. [#20802538]
  • Ta rewizja IRC03 używa jednej płytki PCB i układu BK7231N lutowanego bez osobnego modułu radiowego. [#20802538]
  • Przy hid_download_py błąd CRC zniknął po zapisie komendą z flagami -s 0x0 -u -w zamiast domyślnego wywołania. [#20950671]
  • W jednej udanej naprawie problem z flashowaniem zniknął po zmianie adaptera USB-TTL z CH340 na CH341. [#21610293]

How do I flash OpenBeken on the Tuya WiFi Smart IR Remote Controller IRC03 with a BK7231N chip using the test pads on the back?

Flashowanie działa przez tylne test pady, bo ta wersja IRC03 ma dobrze opisane punkty pomiarowe. 1. Otwórz obudowę ostrożnie, bo ma 4 kruche zatrzaski. 2. Podłącz UART do test padów i użyj układu BK7231N. 3. Wgraj OpenBeken, a potem ustaw piny P7, P8, P9 i P24 zgodnie z mapą tej płytki. Autor potwierdził, że flashowanie „works without any problems” i integracja z HA przebiegła bez problemów. [#20802538]

What pin configuration works for the IRC03 BK7231N board for IRSend, IRRecv, button, and WiFi LED in OpenBeken?

Działają cztery przypisania GPIO: P7 = IRSend, P8 = IRRecv, P9 = Btn i P24 = WifiLED. To jest pełna, sprawdzona konfiguracja dla rewizji IRC03 z układem BK7231N i jedną płytką PCB. W wątku podano ją zarówno jako tabelę pinów, jak i gotowy fragment konfiguracji JSON dla OpenBeken. [#20802538]

Why does the IRC03 show a CRC check failed error when reading or writing firmware with hid_download_py, and which flags fix it?

W tym przypadku błąd CRC wynikał z użycia niewłaściwych parametrów narzędzia, a nie z błędnego doboru układu. "CRC check failed" is komunikatem narzędzia, który sygnalizuje niezgodność kontroli integralności po odczycie lub zapisie, zwykle po złym trybie, adresie startowym albo flagach transmisji. Odczyt i zapis zaczęły działać po użyciu uartprogram OpenBK7231N_QIO_1.17.453.bin -d /dev/ttyUSB0 -s 0x0 -u -w. Bez -s 0x0 -u -w użytkownik dostawał błąd CRC przy końcu operacji. [#20950671]

What is the CEN or CSN pin on BK7231N devices, and how is it used during flashing?

W tym wątku CEN i CSN zostały potraktowane jako to samo wejście sterujące używane przy próbie wejścia w tryb flashowania. Później padła praktyczna rada, by na tej płytce zignorować CEN/CSN i użyć tylko 4 przewodów UART, chwilowo odłączając zasilanie podczas „getting bus”. To ważne, bo na tym IRC03 nie ma wyraźnie podpisanego padu CEN, a metoda z samym zwarciem do GND nie zawsze działała. [#21606137]

How should I power the Tuya IRC03 safely while flashing it with a USB-to-TTL adapter to avoid regulator overheating or damage?

Najbezpieczniej zasilaj urządzenie przez USB-C, a z adaptera USB-TTL podłącz tylko GND, RX i TX. Jeden użytkownik zgłosił, że po lutowaniu do padów 3.3V i GND regulator zrobił się bardzo gorący, a inny uczestnik ostrzegł, że podanie 5V na linię 3.3V mogło uszkodzić płytkę. Ta praktyka minimalizuje ryzyko przegrzania stabilizatora i błędów zasilania podczas wejścia w bootloader. [#21606841]

Which flashing method works better for this IRC03 on Linux or Ubuntu: Easy UART Flasher with Mono or hid_download_py?

Na Ubuntu lepiej sprawdził się hid_download_py. Użytkownik zgłaszał, że Easy UART Flasher działał pod Mono z innymi urządzeniami, ale tutaj nie mógł stabilnie uzyskać magistrali ani poprawnie odczytać firmware. Po przejściu na hid_download_py udało się odczytać układ, a następnie skutecznie zapisać firmware OpenBK7231N po ustawieniu właściwych flag. [#20950671]

How do I get the BK7231N bootloader bus on the IRC03 when there is no clearly labeled CEN pad?

Na tej płytce można uzyskać magistralę bootloadera bez osobnego padu CEN. Jeden użytkownik ustalił, że test point RST odpowiada linii opisanej jako CEL, i użył go do resetu układu podczas próby wejścia w tryb flashowania. Późniejsza rada dla podobnego problemu była jeszcze prostsza: użyj tylko 4 przewodów UART i na chwilę odłącz zasilanie podczas łapania magistrali. [#20948893]

What is a CRC check failed error in BK7231N flashing tools, and what does it usually mean?

To komunikat, że narzędzie nie potwierdziło poprawności danych po transferze. W tym wątku nie oznaczał on uszkodzonego BK7231N, bo ten sam układ dał się później poprawnie zaprogramować. Zwykle oznacza złą kombinację parametrów flashowania, takich jak adres startowy, tryb zapisu albo flagi narzędzia, a nie samą identyfikację układu. [#20950671]

How can I send raw IR codes from OpenBeken on the IRC03 for RGB LED bulbs or fairy lights when no known protocol matches?

Wątek nie podaje gotowej, potwierdzonej procedury wysyłania surowych kodów IR dla takich lampek. Pytanie o RGB bulbs i fairy lights zostało zadane, bo użytkownik nie znalazł żadnych pasujących protokołów, ale w pokazanej dyskusji nie ma odpowiedzi z działającą metodą raw transmit dla tego przypadku. Pewne jest tylko to, że sprzęt ma działające IRSend na P7 i IRRecv na P8, więc sprzętowo nadajnik i odbiornik są skonfigurowane. [#20816402]

Where can I get a factory Tuya firmware backup for the IRC03, and what options are there if I forgot to save my own backup?

W tym wątku nie udostępniono żadnego backupu fabrycznego Tuya dla IRC03. Użytkownik wprost poprosił o kopię zapasową, bo zgubił własny backup i chciał przywrócić urządzenie do stanu fabrycznego przed oddaniem, ale w pokazanych odpowiedziach nie ma pliku ani linku do zrzutu. Jeśli nie zapisałeś własnej kopii wcześniej, ten wątek nie daje sprawdzonej drogi odzyskania stock firmware. [#21183559]

Why might an IRC03 stop flashing when connected through one USB-to-TTL adapter but work after switching from CH340 to CH341?

Najkrótsza odpowiedź brzmi: adapter USB-TTL bywa przyczyną problemu, nawet gdy okablowanie wygląda poprawnie. W tym przypadku użytkownik zgłaszał, że wcześniejsze próby nie działały, a potem napisał, że po wymianie CH340 na CH341 urządzenie udało się sflashować. To wskazuje na problem zgodności lub stabilności konkretnego konwertera UART, a nie samego IRC03 z BK7231N. [#21610293]

How do I identify whether an Aliexpress 'IRC03' IR blaster actually contains a BK7231N, BK7238/T1, or some other Tuya chip revision?

Sprawdź nadruk na samym układzie scalonym po otwarciu obudowy, bo nazwa aukcji nie wystarcza. Wątek pokazuje co najmniej dwa warianty: starszy egzemplarz z BK7231N oraz nowszy z oznaczeniem T1-AHL, które uczestnicy powiązali z BK7238. Jeśli widzisz T1/BK7238 zamiast BK7231N, procedura i zgodność z firmware będą inne. [#21733400]

What differences were reported between older IRC03 boards and newer versions with reversed silkscreen or different chips, and how do those changes affect flashing?

Zgłoszono trzy różnice: starszą płytkę z BK7231N, rewizję z odwróconym silkscreenem oraz nowszy wariant z układem T1/BK7238. Odwrócony nadruk utrudnia mapowanie pinów i orientację układu, ale nie zmienia samego faktu, że to nadal podobna płytka. Zmiana układu jest ważniejsza: dla T1/BK7238 padła wprost informacja, że ESPHome nie działa, a OpenBK wymaga dodatkowego kroku. [#21733400]

How do I use P16 on this IRC03 PCB to drive WS2812 LEDs, and what OpenBeken commands like SM16703P_Init and PixelAnim are needed?

Aby użyć P16, trzeba najpierw fizycznie wyprowadzić ten pin, bo na tej płytce nie ma wygodnego padu użytkowego. Jeden uczestnik ustalił, że pin 12 układu łączy się z polem opisanym TCK/F_SCK, ale same LED-y nie ruszyły po samym startDriver SM16703P. Zadziałać powinien zestaw poleceń: startDriver SM16703P, potem SM16703P_Init 16, a na końcu startDriver PixelAnim. [#21201631]

What are test pads and SPI flashing pins such as SCK, CSN, SI, and SO on the BK7231N IRC03 board, and how do they relate to features like flashing or LED control?

Test pady to odsłonięte pola lutownicze, które dają dostęp do sygnałów serwisowych bez wylutowywania układu. W tym wątku wyjaśniono, że piny P20, P21, P22, P23 odpowiadają za SPI używane do flashowania jako SCK, CSN, SI i SO. To ważne ograniczenie: obecność tych padów nie oznacza od razu wolnego „output SPI” do sterowania LED, bo mogą być podłączone tylko do portu flashującego. [#20974503]
Generated by the language model.
%}