I'm a big fan of the ESP32, and I have a few different boards that I play around with. I have two of the "classic" ESP32 microcontrollers, an ESP32-C6 with Zigbee and Thread support, and an ESP32-S3. Not only that, but I have a whole host of displays ranging from the tiny and cheap to the big and wonderful. But like many other pieces of tech, there are "counterfeit" devices out there... kind of.

Without getting too into the weeds of what exactly an ESP32 is (we have a whole article explaining that), very basically, the "ESP32" on any board is actually the System-on-Chip, or SoC, and everything built around it is the module. To give you an idea, the ESP32-WROOM-32E is a module rather than a full board, meaning that it's the chip in a form that can be connected to a board, and it includes the passive components required by the SoC, such as the crystal oscillator for timekeeping or the antenna. To describe it plainly, the "module" is the silver square on the development board.

The ESP32 itself is inside this square, along with some of the other essential components. However, the ESP32 is practically always an official, genuine part from Espressif. The rest, though, is a little more complicated.

The market is filled with clones for the most part

There are counterfeit boards, though

ESP32 H2 SoC on a board

When colloquially referring to an ESP32, most people are referring to an entire board or the module, rather than the tiny CPU that's inside the silver square we mentioned earlier. In the above image, you can see the ESP32-H2 SoC on one of the expansion boards I received for testing the Elecrow 7-inch HMI panel. This is an actual ESP32, so in that sense, there have been virtually no reported "counterfeits"; none that I've been able to find, anyway. This little black square is incredibly cheap and can often be found for less than a dollar, so there's no real point in making a true counterfeit with one-to-one compatibility. With the amount of money spent to reverse engineer and reimplement it, it would be terribly difficult to claw that money back.

With that said, both the modules and the boards are a different story entirely. We'll start with the modules first, because not every unofficial module is a clone or counterfeit, and it entirely depends on what it advertises itself as. Take the XIAO ESP32-C6, for example; this is a custom module which clearly advertises that it's different, with its own FCC ID imprinted on the front that matches the board in question. This is an example of a completely legit board, and you can buy one of these and rest assured that it's high-quality and will do what you expect it to. You can implement an ESP32 in any project you like, and that's what this is an example of.

However, things differ slightly if you're looking to buy a development board with labelling such as "ESP32-WROOM-32E". This actually has a very specific meaning, as it's a complete module made and sold by Espressif. Going back to FCC IDs, there are many examples of companies claiming to sell boards with an ESP32-WROOM module, but the FCC ID printed on the module leads back to a non-existent device or an entirely unrelated one. They'll still have a legitimate ESP32 inside, and it would be completely legit to call it anything else, but this practice is incredibly misleading, as "WROOM" refers to a specific Espressif module. This is a counterfeit, and in many cases, these module counterfeits are almost indistinguishable in terms of compatibility and components.

In other words, a counterfeit is specifically when a product is attempted to be passed off as the real thing. These devices copy not just the design but also the branding, logos, or certifications of the official product without authorization. However, if you're starting off with a cloned or even counterfeit module, the board is where things may get particularly problematic, and might cause you to face difficulties or even, down the line, a completely dead board.

When is a board counterfeit?

It's all about the marketing

A Raspberry Pi and an ESP32

The inspiration for this article came about as a result of my colleague, Ayush Pande, and a particular oddity I noticed with his ESP32. He was testing something with his unit only to discover that it would no longer flash, and despite everything we tried, nothing seemed to revive it. It couldn't communicate over serial, and we considered it dead at that point. However, later I realized that the pre-soldered pin headers were molded into yellow plastic. I've only really seen yellow plastic pin headers on the ESP32-S3, which is why I started to look deeper.

In his case, the ESP32 he's using starts off with a counterfeit module, purporting to be an ESP32-WROOM-32, yet the markings don't match a true WROOM module, nor do they match what's found on an official Espressif DevKit. At the very least, his is one of the better ones that I've seen, as the CP2102 USB-to-UART controller and the AMS1117 voltage regulator, which are visible on his board, are components found in an official ESP32 DevKit as well.

So, what really happened? Well, it's hard to say. It's possible that the modules were simply re-marked, but given that the drivers differ for a USB-to-UART controller based on which is used, I'd find it unlikely. Instead, it could be bad luck, or it could be other components inside the board or module that failed, specifically ones that we can't see.

Two USB-C ports on the ESP32-S3

However, there's one other tell-tale sign that a board is a counterfeit (assuming it was marketed as an official ESP32 DevKit), and that's thanks to the USB-to-UART port that it uses.

Espressif's official DevKits, for better or for worse, use microUSB rather than USB-C (aside from the ESP32-C6). While Ayush's ESP32 also uses microUSB, nowadays, many boards purporting to be official Espressif DevKits come with USB-C connectors for convenience. After all, why spend more money for an official kit that's going to then use microUSB? It's a clear way to one-up an official board, and that's what many of them do. Keep in mind that a board can use a completely official ESP32-WROOM-32 module from Espressif, and even build a board mimicking the official DevKit, and it's only counterfeit if it's then sold as an ESP32-DevKitC. If it's sold as something more generic, like an "ESP32-WROOM-32 development board", then that's a clone, not a counterfeit.

For example, in the picture above, my ESP32-S3 is not an official Espressif DevKit board, because it packs two USB-C ports rather than two microUSB ports. Yet it wasn't marketed as an official ESP32-S3 DevKit either; it was merely sold as an "ESP32-S3 development board," which makes it a clone instead. The module itself (as far as I can tell, anyway) is a totally legit component from Espressif, and the board itself appears mostly identical aside from the different ports.

When are clones and counterfeits a problem?

Most of the time, they aren't

ESP32-C6 module on a developer board wired up to a motion sensor

First, let's get one thing out of the way: if you've bought a clone or even a counterfeit, that doesn't automatically mean that you have a bad board. The ESP32-DevKitC V4 is a commonly referenced official board design, which Espressif has even open-sourced, and there are many pin-compatible ESP32 boards out there from well-known brands to generic, unknown names that will function in the same way as an official board.

What differs among these boards are the components and build quality. For example, vendors might swap out parts based on cost or availability while keeping the overall circuit the same. These differences from an official DevKit can include, but aren't limited to, the following:

  • USB-to-UART bridge chip
  • Voltage regulators and power circuitry
  • USB connector
  • Auto-boot circuitry
  • PCB and build quality

The USB-to-UART bridge chip is the one you're most likely to notice if you encounter any problems at all with an ESP32 clone. Official Espressif boards often use a Silicon Labs CP2102 or a similar high-quality USB-to-UART chip. Many clone boards use the WCH CH340 or CH9102 instead, which are functionally similar but cheaper. In practice, both chips convert USB signals to UART serial data, but the choice affects price and driver support. It's common to see two variants of the same ESP32 board sold at different prices, with the only difference being whether it has a CP2102 or a CH340 on it.

I have an ESP32 (that purports to be a DevKit-C) that uses a CH340. While it works fine, I had to manually install the driver for it to enable my Windows-based computer to communicate with it. This wasn't necessary for the CP2102 ESP32-S3 that I have. Once set up, it tends to work just as well for most people, but this is one of the cost-cutting measures that can be undertaken with these boards.

The front of the ESP32-S3, with a connected joystick behind it

When it comes to voltage regulators, this is where we move into the realm of cheap counterfeits that break easily. The ESP32 runs at 3.3V, so dev boards include a voltage regulator to drop USB's 5V down to 3.3V. Official designs might use a robust regulator, such as the aforementioned AMS1117, but clones sometimes use whatever 3.3V regulator is cheapest, like the IRU1117-33. These generally work fine, but a lower-quality regulator might supply less current or be less stable under peak loads. In extreme cases, a weak regulator can cause instability when the ESP32 is doing Wi-Fi transmission (because Wi-Fi can draw burst currents of up to 300mA). Most clone boards are okay in this regard, but it's a point of variation.

The auto-boot circuitry is one that I rarely see mentioned, as it's a point of convenience rather than an actual problem. When you flash an ESP32 from your PC, most boards will simply reboot to bootloader mode and then accept whatever data is sent over serial and write it to storage. This is thanks to a series of transistors that set the EN pin to low (to signal a reset), which then set the IO0 pin to low, too. Both of these pins have an internal pull-up by default, meaning they're set to high, which signifies normal operating mode. Setting IO0 to low at boot (where setting EN to low initiates a reboot) will force it to automatically enter bootloader mode, where it can be flashed.

However, cheaper clones and counterfeits may lack this circuitry, which can pose a problem when trying to flash the board. The way around this is to either hold the boot button while connecting your ESP32 to your computer or to attach IO0 to your ground in order to bring it low, but it's obviously inconvenient when compared to being able to signal this behavior from your PC without interacting with the board at all.

Finally, clones and counterfeits can vary in the quality of the printed circuit board and soldering. Reputable third parties like Seeed Studio with their XIAO offerings, SparkFun, or Adafruit will have a clean, high-quality assembly. Generic no-brand options, though, may use thin or even inconsistent PCBs, or a less optimal antenna layout. In other words, the ESP32 module (the core with the chip and antenna) can be identical across boards, but the breakout board it's mounted on (with the USB port, pins, and other critical components) is where quality can fluctuate.

ESP32s are always somewhat genuine

The silicon inside is still the same

Here's an important point of reassurance: the actual ESP32 microcontroller on these boards is almost always a genuine Espressif-made part, and I've found no reports of truly faked silicon masquerading as an ESP32. Espressif manufactures the chips and modules (like the popular ESP32-WROOM-32 module with the metallic RF shield), and even the cheapest dev boards tend to use those real chips. There are exceptions, like the example we mentioned earlier that saw a fake FCC ID printed on the shield, but by and large, the centerpiece of your ESP32 is likely to be legit.

What are the consequences of these off-brand modules? In the case above, the modules did work, the user who reported it said that the Wi-Fi range was noticeably poorer, which brings us back to the problem of antenna placement as well. A lot goes into RF design and antenna tuning, as an official module has gone through testing and certification to optimize its antenna. However, a knock-off module might have a suboptimal antenna layout or cheaper RF components, leading to reduced performance.

The bottom line is that actual counterfeit ESP32 chips (the silicon IC) are not known to exist in the wild. The chip is complex and not easily copied, nor is there a financial incentive for anyone to really do it. Given the low cost of an ESP32 SoC, the investment in reverse-engineering, designing, and fabricating a clone doesn't really make financial sense for anyone in the industry. Not only are many of the clones (and even counterfeits) high quality, but a fake ESP32 would have to compete in an already incredibly competitive market. Couple that with the high-quality, unique offerings from the companies we've mentioned already, and it's clear there's just no point to doing it.

The only concern you should have when it comes to your ESP32 is that the supporting components and the module or board are unofficial. The actual chip itself will be an original from Espressif, and to be honest, these boards are so incredibly cheap that, at the very least, it's a lot less of a problem if yours kicks the bucket like my colleague's did.

"Counterfeits" aren't a huge problem in the same way that they might be when it comes to other, more expensive tech, and the open approach from Espressif when it comes to the ESP32 is ultimately a good thing. The ecosystem thrives on third-party hardware, and being aware of what's inside your board is the best defence imaginable. No matter how much you spend, a $5 ESP32 development board compared to a $15 alternative still has the same chip inside, and it's probably just as good for most hobbyist and enthusiast projects.