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

Czy wolisz polską wersję strony elektroda?

Nie, dziękuję Przekieruj mnie tam

CB3S Module Compatibility: BK7231N vs BK7231T, Realtek, Bouffalo, ESP8266 Identification

User question

I have a cb3s that has a part number that makes me think it's not bk7231n. How do I determine compatibility

Artificial Intelligence Response

Direct answer to the question

If your module is actually marked CB3S, the current official Tuya datasheet still identifies CB3S as a BK7231N-based module. LibreTiny also maps the cb3s board to Beken BK7231N. So an unusual extra part number or suffix does not automatically mean it is a different SoC. (developer.tuya.com)

The safest way to determine compatibility is:

  1. Verify the exact module family marking on the RF can or PCB: CB3S, CB3SE, WR3, etc.
  2. Probe it over UART on the documented CB3S serial pins.
  3. Only if still uncertain, inspect the silicon directly.
    Do not flash firmware based only on a suspicious sticker or lot code. (developer.tuya.com)

Detailed problem analysis

The key point is that you must distinguish between:

  • the module family name: CB3S, CB3SE, WR3, WB2S, etc.
  • and a manufacturing code / lot code / product PCB code printed nearby.

For compatibility, the module family name matters far more than an arbitrary suffix. As of January 30, 2026, Tuya’s CB3S datasheet still states that CB3S consists of a BK7231N RF chip plus peripherals. Tuya’s current module test documentation also groups CB3S under Beken-based modules, while modules such as WR1/WR2/WR3 are listed under Realtek. That is strong evidence that “CB3S” remains a BK7231N-class module designation, not a generic shell used for unrelated SoCs. (developer.tuya.com)

So the practical interpretation is:

  • If the shield says CB3S exactly, start from the assumption BK7231N.
  • If it says something else, even something visually similar, do not assume CB3S compatibility.
  • If it says CB3SE, CB3L, CBU, etc., it may still be Beken-based, but you should use the matching board definition, because the pinout/layout assumptions can differ. LibreTiny lists these as separate supported boards rather than treating them as interchangeable. (docs.libretiny.eu)

A good non-destructive verification sequence is:

1. Confirm the electrical interface

For CB3S, Tuya documents:

  • RXD1 on P10 as the user serial RX
  • TXD1 on P11 as the user serial TX
  • CEN as the enable/reset control
  • supply voltage 3.0 V to 3.6 V, nominal 3.3 V (developer.tuya.com)

So for bench identification, use a 3.3 V USB-UART adapter and connect:

  • adapter TX → module P10 / RXD1
  • adapter RX → module P11 / TXD1
  • common GND
  • stable 3.3 V supply
  • optionally toggle CEN for reset / bootloader entry (developer.tuya.com)

2. Use a probe/dump tool before flashing anything

LibreTiny’s current ltchiptool supports BK7231, RTL8710B, and RTL8720C families. Its documentation explicitly notes that if you choose the wrong family for a read operation, the process simply fails rather than bricking the device. That makes it suitable for cautious family discrimination. It also recommends dumping the stock firmware before flashing anything. (docs.libretiny.eu)

That means your workflow can be:

  • try communication as a BK72xx/Beken target first if the module says CB3S
  • if that fails consistently, re-check whether the module marking is truly CB3S
  • only then test alternative families supported by your toolchain (docs.libretiny.eu)

3. Decide compatibility based on the identified family, not on appearance

A concise compatibility matrix is:

What you find Likely conclusion Firmware/tool target
Marking is exactly CB3S Treat as BK7231N cb3s / BK72xx target (developer.tuya.com)
Marking is CB3SE / CB3L / CBU Likely Beken-family, but not the same board definition Use the exact matching board profile (docs.libretiny.eu)
Marking is WR1 / WR2 / WR3 Tuya currently classifies these under Realtek Use Realtek-compatible flow, not CB3S assumptions (developer.tuya.com)

An engineering inference here is that if the “odd” code is only a sticker or secondary print, but the metal can still says CB3S, that secondary code is more likely a production identifier than proof of a different SoC. The decisive identifier is the module family marking plus successful UART-family communication. (developer.tuya.com)


Current information and trends

As of the current Tuya documentation, updated January 30, 2026, CB3S is still specified as:

  • BK7231N
  • 120 MHz
  • 2 MB flash
  • 256 KB RAM
  • Wi‑Fi 802.11 b/g/n
  • Bluetooth LE support (developer.tuya.com)

LibreTiny’s current board database likewise lists:

  • CB3S → BK7231N
  • board code cb3s
  • Tuya default BK7231N partition layout (docs.libretiny.eu)

For current open-source workflow, LibreTiny documents that ESPHome supports LibreTiny natively from version 2023.9.0 and later, and the CB3S page shows the expected bk72xx board configuration. (docs.libretiny.eu)

Also relevant: LibreTiny’s current tuya-cloudcutter guidance says that method applies to BK7231T and BK7231N only. So if your module turns out not to be Beken, you should not plan on CloudCutter as the compatibility path. (docs.libretiny.eu)


Supporting explanations and details

A few practical electrical details matter during identification:

  • The module is a 3.3 V device, with recommended operation from 3.0 V to 3.6 V. (developer.tuya.com)
  • Tuya’s RF current table shows transmit peaks in roughly the 234 mA to 240 mA range depending on mode, so your bench supply should comfortably exceed that. A weak USB-UART adapter 3.3 V pin is often not a reliable power source. (developer.tuya.com)
  • Because the absolute maximum supply is 3.9 V, applying 5 V UART or 5 V power would be outside spec and is unsafe. That is a straightforward engineering conclusion from the datasheet limits. (developer.tuya.com)

Another useful point: CB3S has more than one UART-related signal in the datasheet, but for user access and common flashing workflows, the documented pair you care about is RXD1/P10 and TXD1/P11. (developer.tuya.com)


Ethical and legal aspects

From a safety and engineering-governance standpoint:

  • Stay within datasheet voltage limits.
  • Dump the stock firmware first before experimentation.
  • For any commercial or fielded product, process firmware changes through your normal compliance and support workflow. (developer.tuya.com)

Practical guidelines

Use this exact sequence:

  1. Read the exact text on the module can

    • If it says CB3S, assume BK7231N first.
    • If it says another family, stop using CB3S assumptions. (developer.tuya.com)
  2. Wire UART safely

    • 3.3 V only
    • TX↔RX crossed
    • solid ground
    • stable external 3.3 V supply (developer.tuya.com)
  3. Try a read/probe workflow

    • use ltchiptool
    • dump stock firmware before flashing
    • if the chosen family is wrong, the read should fail rather than brick the part (docs.libretiny.eu)
  4. Pick firmware by actual family

    • CB3S → BK7231N / cb3s
    • close-looking Tuya modules may need a different board target
    • Realtek-family modules need a different toolchain path (docs.libretiny.eu)
  5. Only if ambiguity remains

    • inspect the IC directly as a final confirmation step.

Possible disclaimers or additional notes

What I would not do is assume that every code associated with the module is a silicon identifier. In production hardware, there are often multiple identifiers: module family, product revision, factory date code, and assembly lot information. Compatibility depends on the module family and SoC, not on every printed string. This is an engineering inference, but it is consistent with the current Tuya module classification and CB3S documentation. (developer.tuya.com)


Suggestions for further research

If you want a definitive answer for your exact unit, the fastest next step is to collect:

  • a clear photo of the module shield marking
  • the exact full text of the suspicious part number
  • a photo of the host PCB around the module
  • whether UART on P10/P11 responds during reset/power-up (developer.tuya.com)

With those, it is usually possible to tell whether you have:

  • a true CB3S / BK7231N
  • a different Tuya module family
  • or simply a misleading production code.

Brief summary

Briefly: if it really is a CB3S, current official documentation says it is BK7231N. To determine compatibility, ignore ambiguous suffixes at first, verify the exact module family marking, then confirm over UART on P10/P11 with a cautious probe/dump workflow. Use the identified family to choose the firmware target, and do not flash based on appearance alone. (developer.tuya.com)

If you paste the exact marking from the module, I can tell you whether it is a harmless lot code or evidence that you have a different module family.

Ask additional question

Wait...(2min)
Disclaimer: The responses provided by artificial intelligence (language model) may be inaccurate and misleading. Elektroda is not responsible for the accuracy, reliability, or completeness of the presented information. All responses should be verified by the user.