Skip to content(if available)orjump to list(if available)

Espressif's ESP32-C5 Is Now in Mass Production

bri3d

Announced 2+ years ago (almost 3, now that I look: https://www.espressif.com/en/news/ESP32-C5 ) and sampling 1+ year ago, good to see it finally come. 5GHz support is increasingly important.

mort96

Why is 5GHz increasingly important? For most IoT applications, isn't the better wall penetration of 2.4GHz more important than the increased peak speeds of 5GHz?

zamadatix

Some places are wanting to go dual 5 GHz radios on APs (for general client density) rather than 2.4 GHz and 5GHz radios but 2.4 GHz only IoT devices force you into keeping a 2.4 GHz radio infrastructure active. These kinds of environments tend to turn the power down on 2.4 GHz anyways as "goes through walls" can actually be a bad thing for coverage when multiple APs are at play (SNR is more important than raw power).

For a typical consumer home use case continuing to use 2.4 GHz is most likely ideal though. Though some apartment complexes have such bad 2.4 GHz interference even that might not be universal.

cptskippy

In my opinion 2.4GHz is rapidly becoming a non-starter. Companies like Eero, TP-Link, and Spectrum are using 40Mhz wide swaths of 2.4GHz for their Mesh backhauls. Sitting in my home office in a single family detached home, I can see 24 different SSIDs all running 40mhz on the 2.4GHz band with 7 having a signal strength greater than -80dBm.

5Ghz doesn't propagate very far and putting IoT devices inside your home on 5Ghz makes a lot of sense. With 6Ghz coming on line and being reserved for high bandwidth applications, 5Ghz for IoT makes even more sense.

ajross

It's not the peak speeds, it's the spectrum use. The 2.4GHz ISM band has 100 MHz of available spectrum, the 5GHz wifi spectrum is 740 MHz wide, and is still occupied by fewer deployed devices.

To an IOT application, it's the difference between chatting with a friend at a quiet outdoor cafe and trying to shout at her in a crowded bar.

bityard

YMMV but in my house, with a commercial-grade wifi AP, I found that devices on 5 GHz get much better speed and range due to all the local noise on 2.4 GHz.

mystified5016

Pop open a WiFi scanner sometime. Unless you're living way out in the country, the 2.4GHz spectrum will be pretty much full. Everyone has a 2.4GHz router and you're likely to get a lot of interference.

Really it's the same reason computers moved to 5GHz, and now 6GHz.

wrigby

Yes and no, depending on the environment. In an apartment building, the wall penetration is a liability, as the 2.4ghz spectrum, with only three channels, gets extremely congested. Going 5ghz helps immensely, with more channels available and less penetration, so you get more spectrum reuse.

purpleidea

The big anti-feature is that developers can block users from flashing the chips.

Yes, there's a security angle, but if I have the chip in my hands, I should be able to flip some pin to reprogram the chip and prevent all the e-waste.

mort96

A major worry I have is: the EU is bringing forth some serious cybersecurity regulations (affecting equipment with radios (WiFi, Bluetooth, ...) as part of the Radio Equipment Directive later this year, soon to affect everything as part of the Cyber Resiliency Act). This enforces some good security practice, but also has a lot of stuff in it that's way easier to comply with if you just say, "the device is locked down with hardware-protected write protection (or Secure Boot)".

To my understanding, there's nothing specifically preventing companies from giving the user the ability to disable write protection or load their own signing keys, but it means that the default will be to have locked-down devices and companies will have to invest extra resources and take extra risks with regard to certification into enabling users to do what they want with the hardware. I predict that the vast majority of companies making random IoT crap won't bother, so it's e-waste.

smarx007

I am afraid this is a very narrow reading of the CRA. Did you read the act yourself or some qualified opinion by a European lawyer? Security updates are the default demand of CRA and not having them is an exception that requires an assessment of risk (which I would assume mean that it's only viable for devices not directly connected to Internet).

An (equally narrow ;)) quote:

"ensure that vulnerabilities can be addressed through security updates, including, where applicable, through automatic security updates that are installed within an appropriate timeframe enabled as a default setting, with a clear and easy-to-use opt-out mechanism, through the notification of available updates to users, and the option to temporarily postpone them;"

Thus, I expect RED to stipulate only radio firmware to be locked down to prevent you from unlocking any frequencies but the CRA to require all other software to be updatable to patch vulns.

mort96

I have not read the RED or the CRA, nor discussed what they specifically say with a lawyer who has read them. However, I have gone through a recent product R&D process in Europe where the product has WiFi and LTE connectivity, so it falls under the RED (even though WiFi and 4G are handled by off-the-shelf modules). I have read parts of the EN-18031 standards (mostly using their decision trees and descriptions of decision nodes as reference), I've been on a seminar with a Notified Body about what the practical implications of the RED are, I've filled out a huge document going through all the decision trees in 18031 and giving justifications for the specific path through the decision tree applies to our product. I've also discussed the implications of the RED and 18031 with consultants.

I don't doubt you with regard to what the RED and the CRA actually says. However I'm afraid that my understanding of it better reflects the practical real-world implications of companies who just need to go through the certification process.

18031 requires an update mechanism for most products, yes, however it some very stringent requirements for it to be considered a Secure Update Mechanism. I sadly don't have the 18031 standard anymore so I can't look up the specific decision nodes, but I know for sure that allowing anyone with physical access to just flash the product with new unsigned firmware would not count as a Secure Update Mechanism (I think unless you can justify that the operational environment of the product ensures that no unauthorized person has physical access to the device, or something like that).

EDIT: And I wanted to add, in one common use case for microcontrollers, namely as one part of a larger product with some SoC running Linux being the main application processor and with MCUs handling specific tasks, you can easily get a PASS in all the EN-18031 decision trees without an upgrade mechanism for the MCUs themselves. In such products, I can imagine a company deciding that it's easier to just permanently lock down the MCU with a write protect than to justify leaving it writeable.

phkahler

>> The big anti-feature is that developers can block users from flashing the chips.

There's a liability angle too. If a company (or person) makes a product that has any potential for harm and you reprogram it prior to an accident, YOU must take responsibility but will probably not.

Another angle is that the hardware may be cloneable and there's no reason anyone should be able to read out the code and put it into a clone device. There is a valid use case in making a replacement chip for yourself.

Companies will buy far more chips than hobbyists, so this feature caters to them and for valid reasons.

>> Yes, there's a security angle, but if I have the chip in my hands, I should be able to flip some pin to reprogram the chip and prevent all the e-waste.

What if the chip used masked ROM? Your desire is not always feasible. You can always replace the chip with another one - and go write your own software for it </sarcasm>.

BTW I'm a big fan of Free Software and the GPL, but there are places where non-free makes sense too.

oliwarner

> there are places where non-free makes sense too

Seriously now, where is that? The only scenarios I can think of are devices that could put others at risk. Large vehicles. But even, many countries allow modified vehicles on the road.

But everything else should be game. If it's my device and only me at risk, why should anyone else get a say.

pjmlp

At least the European countries I am aware of, the owners will have a hard time on a police control if the modifications aren't part of the allowed ones by law, and depending on the modification, it is missing from the car documentation.

Cthulhu_

How much chip re-flashing / re-use is being done at the moment? I'm not convinced e-waste is repurposed in any kind at any scale... although it's an interesting premise if electronics are more modular and can easily be disassembled, and e.g. millions of esp32 based chips end up on the secondhand market.

padraigfl

From what I've seen very little. I _think_ it's something to do with the kind of people who work on embedded systems generally wanting the freedom that comes with making things from scratch resulting in not that much interest in repurposing old things outside of making them work with their overall IoT network.

I recently reverse engineered an e-waste STEM toy from scratch ( https://github.com/padraigfl/awesome-arcade-coder ) and the general response I got from places were:

a. to salvage the microcontroller and other relevant parts (probably worth $4 off a board that would cost $100+ to replicate)

b. a weirdly hostile attitude about the ethics of reverse engineering regardless of the motives (guessing people have been burned a lot with people stealing their designs)

I've mostly worked on the frontend and don't have much knowledge of embedded systems at all but it wasn't anywhere near as hard as I expected. Keen to find some other ESP32 devices to tweak (suggestions welcome!). I guess even if making them unflashable becomes the norm it won't be too hard to just swap the ESP32 off the board with a new one.

user32489318

Quite a bit in IoT market, especially in the low-mid tier and Chinese imports. There’s an entire ecosystem of custom OS’s for home automation that runs on these ESPs, ESPHome for example. I have flashed quite a few smart sockets to run Matt/kafka messaging client rather than unknown vendors software that has an open socket to offshore ips.

thecapybara

The ESP32 (and other ESP chips) are somewhat common in smart home/IoT gear, particularly for devices that are dependent on a cloud service to function. There's a growing trend in the smart home community of re-flashing cloud-dependent ESP32 based hardware with ESPHome, which makes the device fully local controlled, eliminating the risk of the cloud service being discontinued/enshitified.

It's not a particularly common thing yet, but smart home enthusiasts are becoming increasingly concerned about the expense and effort required to replace cloud-dependent hardware because the manufacturer decided the cloud service isn't worth maintaining anymore.

happyhardcore

How is this different in practice to the regular ESP32's secure boot, where you can technically flash the chip with whatever you like but unless you have the signing key the bootloader will refuse to load it?

wildzzz

If the key is stolen, you can still protect your hardware.

happyhardcore

You can generate the keys on-device during the initial provisioning and have it encrypt the flash with that key, so every device generates its own unique key and there isn't any practical way to extract it; even the developer can't flash it directly, and OTAs are required to update the firmware. This effectively means nobody can flash the chip anyway since you can't know the keys. Is there some sort of attack vector here I'm missing that gets mitigated by preventing flashing entirely?

tulert

If the developers really wanted to you have the key, they could just write the per device unique key in the box or on the pcb. What you’re suggesting is more or less possible, the problem is you represent a very niche case. 99.9% of consumers don’t want to reprogram a chip already soldered to a board and it’s not worth the time catering to them. Also some IOT devices are left in physically insecure places like on the exterior of the home, you’d never want some to be able to extract the firmware key or re-flash those devices.

wildzzz

This is explicitly for IoT manufacturers that want to lock out people easily modifying a device (or bringing it back to life after it receives an "update of death") or the kinds of industrial customers that need to check a box for a cybersecurity audit.

These IoT manufacturers keep making all of these new products but the thing is, an ESP32 from several years ago is not that much different than one from today. They don't need much compute, anything difficult can take place on the cloud. So how do you sell someone new hardware if the first gen device is still perfectly capable? How do you sell a premium version if it's just the same parts inside? For the former, you can EoL a product by blocking it from cloud services (like Nest this week). If the firmware is locked, a hobbyist can't just flash modified gen 2 firmware and have the device functioning like normal. For the latter, you can lock the bootloader firmware so that it will only load the firmware that you want it to run (i.e. the basic or premium version).

tulert

When you say “this is explicitly for iot manufacturers…” are you referring to secure boot? That’s what I was referring to. I’ve done embedded development for about a decade, 6 at an IOT company, and our main motivation for using secure boot was to keep our firmware secure. The last thing we want is someone writing an article on the internet about how with this one easy trick you can break the security of the device and do whatever you want ( the devices are related to access control). If the company went out of business we’d have the option of publishing the signing key but it’d render all the devices vulnerable to malicious OTAs. Point is we’re not trying to lock folks out of tinkering, we’re trying to keep the devices secure. I understand as a side effect it means you can’t flash the device to whatever you want.

Also for what it’s worth these ESP chips are unbelievably cheap when bought at scale. The box the product comes in is probably more expensive

a1371

E-waste prevention is hella important. It's a tough situation though. I think for a board that goes out in the public, even at a prototyping level, it's important to know the chip you have is not tampered with. I once wanted to make a little people counter at a university campus with an ESP8266. I simply couldn't make sure it's resilient against some CS students poking at it.

yonatan8070

Let's say the chip was lockable, what would prevent someone from using a bit of hot air and flux from just swapping out your chip with whatever?

user32489318

It takes little skill, 15USD soldering iron to solder 4-5 through holes wires, connect 10 usd programmer and flash a new firmware. Investing in a (de)soldering station, with the risk of pulling all the neighboring components, breadboard/something to plugin your new controller or memory into for programming and what not? I’m not sure if I’d go through that trouble

saidinesh5

The firmware that's missing on that new chip

moffkalast

Sounds like you're trying to deprive CS students of their practical education :P

alex7o

Yes, but this I think is a bit sad. Once you have proper hard to crack security a smart kid from CS won't find it hidden decide to hack it and write blog post about it how he has done it. As long as it is not something dangerous sometimes having less security is better

KeplerBoy

Yes, it's one thing to prevent others from reading the flash, but I don't see the value in preventing reflashing it.

overfeed

It counters evil maid attacks.

echoangle

Not really, if the evil maid is sophisticated enough to bring their own firmware to reflash your devices, they could also just swap the PCB containing the controller or solder in a new chip

aa-jv

Means the Russians can't repurpose the washing machines to build drones.

kro

Most IoT devices implement security and integrity using one time burnable registers (more importantly for keys). It's sad but yes, those devices are permanently bound to the vendor. There is no real alternative though, a TPM based approach makes it more complex and is another closed system.

Scene_Cast2

I wonder if the power consumption is any better. An nRF runs circles around any existing ESP32 variants in terms of power.

KennyBlanken

Not to mention the horrific peak power draw. It took people a while to figure out that the things need a fair bit of close-by capacitance on the power rail or they crash.

stavros

How much capacitance? I built my own sensors based on ESP8266 and they've been flaky, and I wonder whether that's the issue.

XorNot

220uf would be the minimum. I've had modules get stuck in a boot loop when they have less then 120uf (inferred by repairing switch modules with bad capacitors).

wwarren

Coming out of deep sleep and Wifi coming back up, I’ve seen upwards of 600mA

stavros

This is looking pretty great, I've really wanted a MCU with Zigbee on it, for the various little battery-operated devices I've wanted to make. However, with Espressif's lineup, I've really lost track of what does what, lately.

Does anyone know of a good comparison resource?

e-max

The flashy PDF is here https://products.espressif.com/static/Espressif%20SoC%20Prod... a one-pager comparing all models.

throwup238

According to that pdf the ESP32-C5 does have Zigbee.

phaistra

Are we sure this is correct? The table shows ESP32-C5 supports CANFD but I cant find any info on CAN-FD peripheral, drivers, etc.

baby_souffle

https://products.espressif.com/#/product-comparison

This is a little bit more interactive and detail-oriented. I think they also have flashy onesheet PDFs that are more marketing oriented.

dx4100

The ESP32-C6 has a Zigbee radio. I have 6 myself -- they're great.

teruakohatu

Does the Zigbee work well/as expected? Does it have lower power draw when doing Zigbee vs. wifi?

iforgotpassword

I'd like to know that too, have been considering doing some zigbee tinkering, and battery powered would be a requirement. I've read in some other comment that nRF would be much better in that regard. Need to do some googling for numbers...

stavros

I bought a few of those, but at $8 they're a bit pricier than the $3 Espressif spoiled me with.

nagisa

supermini boards with esp32c6 on it can be had for approximately 4 euro each.

15155

All MCUs with 802.15.4 radios (STM32WB, nRF5x, ESP32, Ambiq, etc.) can transmit and receive Zigbee frames. The real issue with Zigbee is full software support.

snvzz

This microcontroller, like all microcontrollers Espressif released in the last few years, uses RISC-V as the ISA.

platevoltage

I believe the C series is RISC-V, not the S series.

snvzz

Espressif made a decisive shift to RISC-V[0], effectively abandoning Tensilica.

ESP32-S3 was, AIUI, their last non RISC-V chip.

It was announced in 2020 and released in 2022.

0. https://www.hackster.io/news/espressif-s-teo-swee-ann-confir...

bobmcnamara

Xtensa is a dead end, they said so on ESP32.com when someone pointed out the FPU ABI bottleneck

platevoltage

I'm sure you're right. The current s3 chip is based on Xtensa, but it was released in 2020, so I guess the OP's statement is correct.

bobmcnamara

Edit: dead end for espressif.

Still gonna be in a bunch of DSPs and stuff

colechristensen

From the link

>Espressif Systems (SSE: 688018.SH) announced ESP32-C5, the industry’s first RISC-V SoC that supports 2.4 GHz and 5 GHz dual-band Wi-Fi 6, along with Bluetooth 5 (LE) and IEEE 802.15.4 (Zigbee, Thread) connectivity. Today, we are glad to announce that ESP32-C5 is now in mass production.

hughc

This wording is ambiguous- it's the first to support 5GHz, but it's not their first RISC-V core.

osrec

Genuine question: is that a good or bad thing?

connicpu

It's a big plus if you want to write code for it in something like Rust. LLVM support for the architecture they used on their older chips (xtensa) for a very long time required compiling a fork of LLVM and rustc in order to target the chips. It may still, I didn't keep up with the effort to upstream that target. RISC-V is an open architecture that has a lot of people excited so compiler support for it is very good. Though as far as why Espressif is using it, it feels likely they would use it because it means they don't have to pay anyone any royalties for the ISA.

bobmcnamara

It's a mix.

Better compiler support for RISC-V, but everything I've seen from them is a much shorter pipeline than the older Xtensa cores, so flash cache misses hit it harder.

Both RISC-V and Xtensa suffer from the lack of an ALU carry bit for the purposes of improving pipelining. But for these small cores it means 64-bit integer math usually takes a few more cycles than a Cortex-M Arm chip

viraptor

But that also depends on what you use it for. If you're after the wifi and IO and other nice things for a mostly idle device - the pipeline is almost irrelevant. Esphome can run on older versions just fine too. On the other hand if you're doing something very optimised and need tight timing around interrupts to drive external hardware - it may matter a lot.

So... depends on the project.

IshKebab

I think it would be hard to argue that an ALU carry bit was a good idea, even if 64-bit maths takes a few more cycles.

baby_souffle

Unless you're a shareholder of arm, hard to see how it's a bad thing.

bobmcnamara

The other core they've used is Xtensa

shoelessone

Any guesses as to when a hobbyist might be able to buy the module without the dev board? Their aliexpress store didn't have them as far as I can tell, I assume they are prioritizing dev boards for the moment unless you're a big enough company to actually talk directly with Espressif.

Taniwha

They don't have datasheets up for the modules yet sadly

Can anyone answer my question will the C5-WROOM be a pin for pin dropin replacement for a C6?

15155

Espressif won't sell you 3000 of these even if you ask - regardless of who you are.

Contact them directly and you might get 10 at this point.

self

shoelessone

Thanks for the link, but yeah as the other poster mentioned, this is for a dev board. I'd be interested in buying the module (which is somewhere between the bare IC and the dev board). Here is an example from their store of an ESP32-S3 module: https://www.aliexpress.com/item/1005006334720108.html?pdp_np...

teraflop

That's a dev board.

amelius

Digikey?

teraflop

The only listing they currently have is for the dev board, and it's not stocked yet.

platevoltage

Let's hope they will finally enable the USB Host HID Class Driver to support non-boot protocol devices this go around.

shoelessone

Any chance you could explain this to somebody who is just learning about HID and has run this example: https://github.com/espressif/esp-idf/tree/master/examples/pe... ? "non-boot protocol" I'm guessing is the key here? I don't have a super deep understanding of HID or what the "boot-protocol" refers to.

thequux

The USB HID protocol is designed to support basically any device that regularly reports a set of values; those values can represent which keys are pressed, how a mouse has moved, how a joystick is positioned, etc. Now, different devices have different things that they support: joysticks have varying numbers of axes, mice have different sets of buttons, some keyboards have dials on them, etc. So, there's no single format for a report that simultaneously efficiently uses bandwidth and supports all the things a human interface device might do. To solve this, the HID protocol specifies that the host can request a "report descriptor" that specifies the format and meaning of the status reports. This is great for complex devices running a full OS; there's plenty of memory and processing power to handle those varying formats. However, these HID devices needed to also work in very limited environments: a real mode BIOS, microcontroller, etc. So, for certain classes of device such as keyboards and mice, there is a standard but limited report format called the "boot protocol". IIRC, the keyboard version has space to list 6 keys that are pressed simultaneously (plus modifiers), all of which must be from the same table of keys in the spec, and the mouse has an dX and dY field plus a bitfield for up to 8 buttons (four of which are the various ways you can scroll). To implement a more complex device, you'd want to be able to specify your own report format, which the ESP driver doesn't seem to allow you to do.

tomcam

That was a virtuoso explanation! You’ve solved about 25 years of USB questions I’ve had in one post. Thank you very much.

shoelessone

Thanks for taking the time to explain!

So your original comment / request was regarding USB specifically then?

I ask because I'd have guessed (possibly incorrectly!) that implement HID via GATT (BLE) you'd be able to support anything the BLE hardware revision could implement?

Perhaps the disconnect for me is that it's unclear when there is some special hardware that exists within the ESP32 itself (I think I2C, I2S, etc would be examples of this) vs something you are just implementing by manipulating the IO pins. Perhaps HID is one of those things?

philsnow

Is this why certain USB keyboards I have don't seem to do anything in BIOS? I keep around a really dumb/boring dome keyboard for this purpose.

platevoltage

I'll give you my anecdote. I'm building a device that reads the input of a USB game controller. In my case, it's a Sim Steering Wheel. I ended up needing to incorporate a MAX3421e USB Host chip to read the HID input, because the ESP firmware doesn't have this implemented. Hardware wise, all ESP32 chips with hardware USB could do this, but they haven't prioritized it in software. Some keyboards and Mice use a protocol called "boot protocol", and you can get those to work. It's not very common in game controllers though.

londons_explore

Is the 10k unit price public?

rkangel

This is the real missing information. I don't know how much to care (in my professional capacity) without some pricing indication.

londons_explore

Professionally I use the esp8266 a bunch because it's still cheapest - but the lack of 5Ghz is really starting to bite as customers complain it 'doesnt work'

winrid

Would an esp32 be the best soc for LoRa? I don't need WiFi or BT, which I know I can turn off to save power. Contemplating trying STM32 instead, don't have experience programming it yet.

obitsten

No. All you would need is a SPI interface or whatever the Lora module speaks. The most basic microcontroller can do that. Any ESP32 is overkill for this.

winrid

Right. Sorry I meant development boards. This is low volume, probably will only make a few a year. The nice thing about the esp32 is I can get the board with lora/display built in, with a battery, for $25 each. The stm32 board and module is only a tiny bit less, for example. If I wanted to I could do this with a cheap 8bit microcontroller, I would just have to design a custom board with an oscillator to modulate the IR LEDs etc. I was gonna do that with PWM from the microcontroller to "simplify" things.

Edit: oh the MSP430 is neat! If I cared about battery life (driving 200ma of LEDs anyway...) I'd totally use that.

winrid

The XIAO RP2040 looks perfect for what I'm doing, actually, and draws less power.

15155

https://www.seeedstudio.com/LoRa-E5-Wireless-Module-Tape-Ree...

Use something based on the STM32WLE5JC or a discrete SX1262.

winrid

If I needed to build a bunch I'd definitely go that route - that's a great deal!

NegativeLatency

The heltech boards are pretty popular, also have some nice stuff like a screen and a lipo charge controller integrated. They’re really popular with the Meshtastic community.

winrid

Yep! Unfortunately the lipo setup is useless, not only would I not trust the lipo in the heat it will be in, I need to drive some other stuff and it will have a much bigger battery pack anyway. Other than that the heltech boards look great, but I'm gonna try something 1/2 the cost and should work fine, and be smaller.

antoniuschan99

Hopefully p4 will be released soon too!

forsalebypwner

I just ordered a P4 dev kit from Amazon yesterday, ETA is Wednesday! https://www.amazon.com/dp/B0F63FQB8D?ref=ppx_yo2ov_dt_b_fed_...

asadm

did they ever announce the price of p4?

varispeed

I wish there was something more powerful than STM32H7 or RT1070 available. It would be awesome to be able to compute complex algorithms in real time.

botanical

I wanted a board with Zigbee support but $21 ($16 plus $5 shipping) is quite expensive for a single board.