top | item 47111547

(no title)

written-beyond | 7 days ago

Can someone provide a true engineers perspective on the ADCs' on ESP SoC's?

I've heard a lot about people trashing it and most experienced engineers admit that it's finicky however if you have the knowledge you can make it work as well as any STM chip.

ESP32's are so interesting, they're the only major chip that (used to) have their own newish ISA (before transitioning to RISCV) and be so successful.

discuss

order

glassconclusion|6 days ago

If you need more accurate analog measurements it is better to use an external ADC (with i.e. SPI interface). This will cost quite a bit more but will save the hassle of calibrating each individual device. Mostly comes down to how much dev time you want to invest in it vs. hardware cost vs. TTM.

buescher|7 days ago

I'm not too familiar with the ESP32 ADCs except I remember they're unusually lightly specified even for microcontroller ADCs. If "the knowledge" involves things you couldn't do - or rely on - in production like careful calibration and characterization, that would answer your question.

sitkack|7 days ago

The ESP32 pre-RISCV ISA is from Tensilica, this IP they purchased.

Kiboneu|6 days ago

To be clear and towards the OP's comment about ESP32 ISA -- Xtensa isn't really a self contained architecture, it can be customized (extended) by the vendor. The ISA can be extended for these customizations. ESP32 is one customization of it.

leptons|7 days ago

The ADCs on the ESP32 are similar to other embedded MCUs in that they are not intended for audiophile-level audio capture, as some people seem to think they should be capable of.

The main value proposition for these ADCs is to hook them up to a simple potentiometer to allow physical input controls, and even for that purpose you need to average multiple samples to get a somewhat steady value. Of course the ADCs can be used for various other tasks, but "ADC" does not mean they can do anything any ADC can do, there's a wide variety of quality and purpose in the field of ADCs, and the ESP32's ADCs are a cheap and easy way to add a simple ADC function to the chip.

I have been able to use the ADCs quite easily for input controls and monitoring slow-changing voltages, in ap;lications where abdolute precision wasn't the goal, it works perfectly fine for that.