It appears to be a Lightning Electronics LN8825B chip, which has no mention on this forum or any other, that I can find. It seems no chance it's a rebranded version of something we can flash. The same situation as https://www.elektroda.pl/rtvforum/topic3989796.html
Do you have a multimeter to check what might have been damaged? Maybe at least MOSFETs are okay and they can be reused after making a ESP12 transplant.
I do have a multimeter but not sure I have the patience to work out what is wrong with it when theyre so cheap :s
BUT
There is still no sign of it for detection in any Tuya app or any new device in AP mode, but I seem to be getting something from the TX0/RX0 pins if I use the 12v DC adaptor. I cannot seem to get a baud rate that produces a clean output though
I've tried CH340 and PL serial adaptors. The CH340 doesn't seem to register any output at all. I'm not sure my external 3.3v is pushing enough current because I only get the log out when using a DC jack.
I'm off home for Christmas now so won't be able to do anything more for a week or so. I could order another one too in case I have half-killed this one
I've now managed to flash an LN8825B over UART using an official flasher GUI. You have to pull A10 down. I scratched the trace for A10 on this same LED controller as there are no A10 pads. Perhaps expectedly, LN882H OBK does not boot.
$ ./build.sh build mcu_no_os_xip_sample
argv[0]:./build.sh
argv[1]:build
mkdir build
-- The C compiler identification is GNU 11.3.0
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- The CXX compiler identification is GNU 11.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- PROJECT:wifi_mcu_develop
-- CMAKE_SOUECE_DIR:/cygdrive/w/GIT/ln882x-mcu
-- Building project:firmware_XIP
-- Build type: Debug
CMake Error at CMakeLists.txt:35 (include):
include could not find requested file:
/cygdrive/w/GIT/ln882x-mcu/project/wifi_mcu_develop/gcc/gcc-arm-none-eabi.cmake
CMake Error at CMakeLists.txt:36 (include):
include could not find requested file:
/cygdrive/w/GIT/ln882x-mcu/project/wifi_mcu_develop/gcc/target-def.cmake
CMake Error at CMakeLists.txt:43 (include):
include could not find requested file:
/cygdrive/w/GIT/ln882x-mcu/project/wifi_mcu_develop/gcc/gcc-flags.cmake
CMake Error at CMakeLists.txt:59 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/components/net/lwip-2.0.3/src" which is not an
existing directory.
CMake Error at CMakeLists.txt:60 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/components/net/iperf" which is not an existing
directory.
CMake Error at CMakeLists.txt:61 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/components/net/ping" which is not an existing
directory.
CMake Error at CMakeLists.txt:62 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/components/net/dhcpd" which is not an existing
directory.
CMake Error at CMakeLists.txt:63 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/components/kernel" which is not an existing
directory.
CMake Error at CMakeLists.txt:64 (add_subdirectory):
add_subdirectory given source "/cygdrive/w/GIT/ln882x-mcu/components/fs/kv"
which is not an existing directory.
CMake Error at CMakeLists.txt:65 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/components/fs/nvds" which is not an existing
directory.
CMake Error at CMakeLists.txt:66 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/components/fs/partition_mgr" which is not an
existing directory.
CMake Error at CMakeLists.txt:67 (add_subdirectory):
add_subdirectory given source "/cygdrive/w/GIT/ln882x-mcu/components/atcmd"
which is not an existing directory.
CMake Error at CMakeLists.txt:68 (add_subdirectory):
add_subdirectory given source "/cygdrive/w/GIT/ln882x-mcu/components/wifi"
which is not an existing directory.
CMake Error at CMakeLists.txt:69 (add_subdirectory):
add_subdirectory given source "/cygdrive/w/GIT/ln882x-mcu/components/fota"
which is not an existing directory.
CMake Error at CMakeLists.txt:70 (add_subdirectory):
add_subdirectory given source
"/cygdrive/w/GIT/ln882x-mcu/project/wifi_mcu_develop" which is not an
existing directory.
-- Configuring incomplete, errors occurred!
See also "/cygdrive/w/GIT/ln882x-mcu/build/CMakeFiles/CMakeOutput.log".
ready to flash whatever can be made. I'm trying to find a test/demo bin of something else to flash to be sure this chip still works. I've flashed back the factory dump of this device taken using jlink, but it doesn't seem to be booting. LN8825B is the device you have too.
Still, I don't see LN8825B in use much. The LN engineer says they only ship dev boards to China but they did link to this product
no, LN8825B cannot be flashed with the LN882H flasher
Added after 41 [minutes]:
actually, there was no need to reveal A10 trace. There is of course a test pad for A10
Added after 39 [minutes]:
don't know what's in these bins but some are definitely booting. there are a few LN8825x firmwares in the Lightning Semi FTP dumps
The RF test bins do boot. I can tell RF is active because my PSU only registers enough current in use when RF is active. The bin "flashimage-connection_ln8825_20201019.bin" is the only one I've seen a uart log output for so far
At least I know my chip can boot and RF probably works. Haven't seen any visible SSIDs though
from the same company - My Quick Links - MQLinks - who are selling the LN882H MQ-12F on Taobao, here are some more resources for their older LN8825B modules
not that there's much to be gained from it, apart from the experience doing it, I've bought some of these QFN32 .5 pitch boards to transplant the LN8825B chip from the LED controller onto. I'll post success/failure in due course! Wish me luck
Discussion centers on a Tuya WiFi smart LED controller using the Lightning Semiconductor LN8825B chip instead of the expected Espressif or Beken MCU. Initial attempts to identify an SDK, capture a boot log, and determine whether the device was damaged by reversed power polarity were inconclusive. Later posts confirm the chip family as LN882x/LN8825B, show that UART boot output can be obtained, and indicate that the LN882H flashing tools are not compatible with LN8825B. The thread then shifts to firmware experimentation: official Lightning Semi SDK resources are found, LN8825B firmware dumps and AT binaries are tested, RF test images boot, and some UART logs are produced, but OpenLN/OpenBeken images for LN882H do not boot on LN8825B. Hardware details are explored for possible transplant or breakout use, including QFN32 adapter boards, pin mapping, A10 boot strap, 40 MHz crystal requirements, decoupling capacitors, and UART/test-pad access. The discussion ends with progress toward a template entry and later OpenBeken PR work for LN8825/LN882H support, including IR receiver testing and firmware compatibility notes. AI summary based on the discussion. May contain errors.
TL;DR: With 2 confirmed UART modes and one key quote — "You have to pull A10 down" — this FAQ helps Tuya tinkerers identify, log, flash, and recover Heruled LED controllers built around the Lightning Semiconductor LN8825B, including why LN882H OpenBeken builds do not boot on it. [#21023961]
Why it matters: LN8825B controllers look similar to other Tuya Wi‑Fi boards, but the wrong flasher, wrong boot pin, or wrong firmware wastes hours and can soft-brick cheap LED hardware.
Topic
LN8825B
LN882H
Boot / flash entry noted in thread
UART flashing works when A10 is pulled low
Different flasher path used by community
OpenBeken result
LN882H build does not boot on LN8825B
Used as working base for existing support work
Evidence in boot strings
...sdk AT ln882x
Also part of LN882x family
Tool compatibility
Official LN8825B flasher works
LN882H flasher fails on LN8825B
Key insight: LN8825B and LN882H are related enough to share the LN882x family name, but not enough to treat firmware, flash tools, or boot behavior as interchangeable. [#21029890]
Quick Facts
The readable LN8825B boot log exposes Tuya IOT SDK V:2.1.2, tuya light lib version 1.0.2, firmware string ln_rgb_zfbdpln1ynr6p3um:1.0.1, and build date 2020_09_10_14_41_46. [#20898850]
A restored factory image later showed both EZ mode and AP mode, with Wi‑Fi status changing from 1 to 2 and AP startup messages such as "Start Successful". [#21809115]
The LN8825B QFN32 transplant discussion identified 6 power-related pins to tie to 3.3 V: pins 3, 4, 11, 17, 29, and 30. [#21264697]
The chip transplant notes also call for a 40 MHz crystal oscillator and recommend 100 nF decoupling capacitors for stable bring-up during bench testing. [#21243234]
Known LN8825B-related module names in the thread include MOL100D0, MOL100P0, and SCW-T503; one module footprint matched TYWE3S/WB3S/CB3S for VDD/GND, but UART pin matching was only partial. [#21074899]
1. What is the Lightning Semiconductor LN8825B chip, and how does it differ from the LN882H in Tuya WiFi devices?
The LN8825B is a Lightning Semiconductor Wi‑Fi SoC used in Tuya LED controllers, and it is not drop-in equivalent to LN882H. "LN8825B is a Wi‑Fi SoC that runs Tuya firmware, belongs to the LN882x family, and exposes UART boot logs and flashing paths, but it uses different flashing behavior and firmware compatibility from LN882H in this thread." The thread shows LN882H OpenBeken images do not boot on LN8825B, even though both reference ln882x. [#21023961]
2. What does Heruled mean on this Tuya LED controller, and is it a brand name or a module name?
Heruled is the product brand name, not the module name. One reply states it appears as the brand in the AliExpress specifications table for the controller. That means Heruled identifies the finished LED device, while LN8825B identifies the Lightning Semiconductor chip on the PCB. [#20871841]
3. How can I capture a readable boot log from a Tuya LN8825B smart LED controller over RX0/TX0?
You can capture a readable boot log by powering the controller from its 12 V adapter and reading RX0/TX0 instead of relying on a weak external 3.3 V source. 1. Connect to RX0/TX0. 2. Power the board with the normal 12 V DC jack. 3. Cycle serial settings until the Tuya log becomes legible. The readable log later exposed Tuya SDK 2.1.2 and the ln882x build string. [#20871986]
4. Why does the LN8825B boot log look garbled at some baud rates, and how do I find the correct serial settings?
The log looks garbled when the serial settings are wrong or when the board is not powered cleanly. The thread showed mixed output with CH340 and PL adapters, and clean output appeared only after further testing with the normal DC supply. The practical method is simple: sweep baud rates, keep voltage stable, and stop when the repeated Tuya lines become readable instead of partly corrupted. [#20898850]
5. What can happen if I accidentally connect VCC and GND backwards on an LN8825B LED controller?
Reversing VCC and GND can kill the controller. One reply states reversed polarity is usually lethal for unprotected devices, and the original tester suspected that exact mistake after the board stopped behaving normally. On a cheap LN8825B LED controller, that can mean no app detection, no normal boot, and partial or permanent damage. [#20871841]
6. How do you put an LN8825B into UART flashing mode, and what role does pulling A10 low play?
You put LN8825B into UART flashing mode by pulling A10 low during flashing. 1. Connect the UART flasher. 2. Force A10 low. 3. Start the official LN8825B flashing tool. The tester first scratched a trace because no A10 pad was visible, then later found there was a test pad for A10 after all. [#21029890]
7. Why doesn’t OpenBeken for LN882H boot on an LN8825B, even when flashing appears successful in J-Link or the official flasher?
LN882H OpenBeken does not boot on LN8825B because successful flashing is not the same as binary compatibility. The thread reports J-Link showed a successful flash, and later UART flashing also worked, yet the LN882H OBK image still produced no OpenLN AP on LN8825B. That points to runtime incompatibility between the two chip variants, not a simple flashing failure. [#21023961]
8. Which flasher and SDK resources actually work for LN8825B, and why does the LN882H flasher fail on it?
The official LN8825B GUI flasher works, while the LN882H flasher does not. The thread also identified usable LN8825B resources such as Lightning Semi FTP dumps, an LN8825x flash tool, and later AT firmware from the M0L1_LN8825 package. By contrast, one direct test concluded that LN8825B cannot be flashed with the LN882H flasher. [#21029890]
9. LN8825B vs LN882H: which parts are compatible for firmware development, flashing, and OpenBeken porting?
They are partly compatible for research, but not interchangeable for production flashing. The shared ln882x family naming suggests similar SDK ancestry, and one maintainer later said LN882H support was reused for LN8825 with only limited changes. Even so, the thread repeatedly shows you must use LN8825B-specific flashing methods and validate firmware behavior on real hardware. [#21813802]
10. What does the boot log line "BUILD AT ... FOR ty_iot_wf_rtos_sdk AT ln882x" tell us about LN8825B firmware compatibility?
It tells you the firmware was built against a Tuya RTOS SDK targeting the broader LN882x family, not a single chip. The exact line shown was BUILD AT:2020_09_10_14_41_46 ... AT ln882x, which explains why people explored LN882H similarities. It does not prove full binary compatibility, because LN882H images still failed to boot on LN8825B. [#20898850]
11. How can I restore a dumped factory firmware backup to an LN8825B and verify that AP mode and RF are working afterward?
Restore the dump, then verify both UART behavior and radio activity. 1. Flash the saved factory image back to the LN8825B. 2. Watch the boot log for wf config AP mode and WIFI_MSG_ID_AP_READY. 3. Confirm RF activity from AP startup messages and higher PSU current during RF test firmware. In January 2026, a restored backup reached AP mode and logged successful AP start events. [#21809115]
12. What is the Tuya IOT SDK shown in the LN8825B boot output, and what can it reveal about the device firmware version and product key?
It is the Tuya runtime stack embedded in the controller firmware, and it reveals exact build metadata. The readable boot output shows TUYA IOT SDK V:2.1.2, product firmware ln_rgb_zfbdpln1ynr6p3um:1.0.1, and product key zfbdpln1ynr6p3um. Those strings help identify the device family, firmware age, and the Tuya product profile tied to the controller. [#20898850]
13. How do I test whether AT firmware on an LN8825B is actually responding, and what should I try if basic AT commands return nothing or -1?
Flash a known AT image, open UART, and test command formatting before assuming the firmware is dead. One tester flashed at_mylinks_uart_pro.bin from M0L1_LN8825 and then tried basic AT commands, first getting nothing and later -1 when auto-append was enabled. If plain AT fails, vary line endings, enable auto-append, and keep the same UART path that already produced boot logs. [#21068396]
14. Which LN8825B modules and footprints are known so far, and how close are they to TYWE3S, WB3S, CB3S, or ESP-12F pin compatibility?
The thread identifies MOL100D0, MOL100P0, SCW-T503, and the MQ-12F-related comparisons, but pin compatibility is only partial. One direct comparison says the LN8825B module matches TYWE3S, WB3S, and CB3S on VDD and GND footprint, while UART mapping does not fully line up. Another post compares LN882H MQ-12F to ESP-12F dimensions, not full pin-for-pin equivalence. [#21074899]
15. What’s the best way to validate OpenBeken IR receive and send accuracy on LN8825B when NEC, EPSON, and UNKNOWN codes appear for the same remote button?
Use an external reference device, because OpenBeken IR timing was described as flaky. One contributor said a Flipper Zero is the practical baseline for checking what is really sent or received. Without that, the working rule was statistical: press the same button about 10 times and treat the code recognized most often as the best current match. [#21830940]
AI summary based on the discussion. May contain errors.