Clones tend to be vastly different - different technology node, architecture, die size, etc. - that's because they are generally functional clones, not mask clones.
(also, as a general shoutout to the low tech sandpaper technique for exploratory work, here's a sanded down RP2350 thrown under a clapped out SEM: https://object.ceph-eu.hswaw.net/q3k-personal/484e7b33dbdbd9... https://object.ceph-eu.hswaw.net/q3k-personal/3290eef9b6b9ad... )
IMO, I have mostly seen mislabeling, rebinning, and passing off obvious QC rejects.
example from many years ago: https://www.youtube.com/watch?v=e6DfBuPwAAA
That's the better method of course (results wise), but it's not nearly as accessible, hence my recent evangelism of the virtues of 2000 grit sandpaper.
You could still compare the internal structure of the package and bonding, but the die itself is mostly destroyed.
https://phillipscorp.com/india/phillipsgrinding/phillips-sur...
All you need is a serial port and some G-codes.
https://www.youtube.com/playlist?list=PLDlWKv7KIIr9rlCwZ9K43...
https://m.youtube.com/watch?v=pIpxawdUb4I&t=30m18s
…plus it smells much better; and, as you mention, it’s useful for potatoes too!
https://bittersoutherner.com/feature/2022/the-elusive-roots-...
(also I don't recommend a SEM in the first post, a cheapo USB 'microscope' will do, I just happen to have had SEM images on hand)
Discarded things tend to get lost. Lost things tend not stay in the Anduin forever.
I'll have to put that on a warning label near our non-conforming-product containment shelf!
I don't think that's quite accurate for reasonably modern MCUs. You can typically shake 10+ bits out of them, but you need to take a lot of precautions, such as providing very stable external reference voltage and shutting down unneeded subsystems of the chip.
They're still not as good as standalone ADCs, but they're at a point where you can actually use them for 90% of things that require an ADC.
In cases where you need more bits, there's a lot more that must go into the design, which is what gives me a pause about the article. There's nothing about the PSU the author is using or how he managed the MCU noise and RFI. So I don't know if the findings here are that these are knock-off devices with worse specs, or if his overhead LED lamp is causing a lot of interference.
With RP2040 (and an LDO for supply), using two such channels for pseudo differential measurement (the second one just tracks threshold noise) I typically obtain 16 ENOB at 1 kHz, more at DC.
It is critical to avoid any periodic activity on the chip, though. Putting cores to sleep and then waking them up again causes huge spurs. One has to e.g. sleep for random intervals to spread them around. Same with flash. USB can be used, it's noise doesn't normally exceed -100 dB for me.
Fun stuff!
PS: I have not tested DC accuracy. One would likely use a channel with reference and hope that GPIOs are well matched. Could be used to e.g. sense CC lines on USB or analog joysticks and other non-critical, low accuracy stuff.
Is this essentially trading time resolution for voltage resolution? Would just doing an exponentially weighted moving average in firmware achieve the same results?
The RP2350 has 9.2 ENOB on a 12 bit ADC. Sure, you might be able to decimate multiple samples to get more bits out of them, but the spec sheet supports the author's claim (https://www.raspberrypi.com/documentation/pico-sdk/hardware....). There are even lower cost MCUs like the CH32V003 that have even worse ADC performance.
On the other hand, some MCUs can definitely do 10+ bits, such as the STM32H7 line which gets 13+ ENOB from a 16 bit ADC. This is impressive, but the H7 MCUs are literally an order of magnitude more expensive than the RP2350, so they might not be something the author tinkers with much. https://www.st.com/resource/en/application_note/dm00628458-g...
The chip has a 12bit SAR ADC. Layout and board design mattered a lot, but even the worst ones had 10 bits worth, and the best one had nearly 12 bits effective.
That was without doing too much on the software side, meaning the other modules weren't running, besides a single serial output. On the bad boards the serial affected it, but on the good board very little.
The paragraph ending with "Compare that with a microcontroller ADC with a fixed 3.3 V range: 9 ENOB steps are ~6 mV" also seems to insinuate that no MCU has an analog reference that's independent from the supply, which just isn't true at all. Hell, NXP has a few that have a built-in programmable reference.
Those also depend on the noise of the supply, see PSRR graph if available.
The vast majority of counterfeit chips I've seen were from ghost shifts but IIRC TI fabs all their analog parts in house, I doubt they're ghost shift parts or failed QC.
I think its probably a relabeled ADS1015.
(also interestingly the STM32 clones I've seen had stacked die flash because they didn't fab them in a technology that could also do flash, so you can easily tell the counterfeit from sanding down the package and looking for an extra set of bonding wires; it's also a cool place to access the internal flash bus if you wanna bypass some readout protection :) )
I don’t usually buy from electronics markets in Shenzhen either so that probably helps.
I now always buy clones where possible - whilst not all features are implemented and some specifications won't be met, the devices seem to match the original for reliability, and sometimes even come with their own cloned modded datasheet.
Getting full spec performance out of an ADC requires having good layout power supply routing etc.
I would transplant the chips from PCB A to PCB B and vice versa. See if the performance follows the chip or the PCB.
Also check power consumption before / after board swaps. If they are fakes, that would be significantly different.
Many of these Dev boards are not produced with as much care or knowledge as the chip design itself.
Analogy: https://datasheet.lcsc.com/lcsc/2302211830_analogysemi-ADX11...
TI: https://www.ti.com/lit/ds/symlink/ads1115.pdf
Analogy's datasheet is directly cribbed from TI's (see TI Fig. 7-7 / Analogy Fig. 22½, pg. 18).
This already passes my "run away screaming" threshold for trust, but a decapping would help me understand whether they've stolen the physical design (bad) or just cloned it (bad).
See also: https://community.element14.com/members-area/f/forum/53365/n...
What's wrong with cloning a chip functionality-wise? This is basically how the industry has operated since its infancy, and what gave us jelly bean logic parts and transistors, x86 and the PC revolution, ...
(just talking about the cloning part here, not counterfeit markings or datasheet copyright infringement, or copying mask work)
Every clone of any sufficiently complex Thing will have subtle quirks and edge cases compared to the original and as long as I can work around them for only that specific clone model, that's easy.
But clones that have no way of determining if the part is a clone? That's bad to even exist because unscrupulous actors will go and repackage "legitimate clone" chips into faked originals if the price difference is big enough.
That defeats the point of it being a clone. 100% the same is the goal.
However, there's nothing more toxic to an OEM than a vendor relationship founded on dishonesty. I know I shouldn't trust them, they know it too, and even if it seems advantageous at first I shouldn't be surprised when they turn on me.
Since these parts are being sold as genuine TI parts, I don't care whether the clone is physically faithful or just functionally faithful - I should treat it like it's poisonous.
On the current project we started with an MCP3208 via SPI. It did the job but only has 8 channels and it's slow (100K samples per sec).
To get something faster we switched to ADS7953. It has 16 channels and runs 10 times faster. It's somewhat more complex to code, and you can only get the highest sample rate if you scan the inputs in a predictable order. But it sure flies.
To me, these chips feel like cars. The ADS7953 is somewhat of a ferrari, whereas the MCP3208 feels like a Toyota, simple to use, unimpressive performance.
I'd love to know the industry background about how these varieties of ADC chips came to be and carved their own space in the world, and how widely they are used (millions? billions?).
I recall reading about a project at CERN to design a 12bit ADC chip that could sample at tens of GHz, maybe 50 or more.
I was perplexed at how they could achieve this.
Turned out it was the same we programmers do. Parallel processing.
They had taken a 12bit SAR unit which ran at like MHz rates, and just cloned it many times. They then had a large analog multiplexer in front to route the signal to the active ADC unit in a round-robin fashion.
That takes a lot of chip real-estate, and the analog muxer had to be carefully designed.
For a simpler approach to speed there is Flash ADCs[1], which kinda brute-force it.
For precision I know multi-slope ADCs[2] are often used.
Sadly I don't know much about the history, and would also love to learn more about it. Bound to be some fascinating stories there.
[1]: https://en.wikipedia.org/wiki/Flash_ADC
[2]: https://www.analog.com/media/en/training-seminars/tutorials/...
Unfortunately this isn't the case - the company designing the plastic case and buttons gets the lions share of the money.
What is the challenge in scope design is that you need to protect the ADC and often user's life!
So the scope has 1Mohm || 15pF input impedance. You need to buffer it. So you first have to attenuate the signal by tapping this input impedance e.g. at 1/10, attenuating the signal. Then you selectively boost it back up for the ADC.
Or you selectively tap it at different ratios.
In any case, you have to protect whatever there is after the tap(s) by diodes that inherently bring parasitic capacitance.
Some scopes avoid expensive buffer ICs and go with split DC path (with gain) using opamp and then AC path (with gain) using e.g. JFET and BJT RF amps and combine those later.
The whole path from input to ADC must have flat frequency response in both magnitude and phase on all gain settings. This is non-trivial, especially with split DC/AC paths.
Sure, HMCAD ADC series help immensely nowadays with their builtin gain, but you still have to give them something flat to digitize as they output 8b streams and thus you won't be able to "fix it up digitally".
And then you also have to be able to inject bias to move the signal up/down.
And some scopes now can toggle between this and just 50 ohm impedance.
So, yeah, it's kinda non-trivial to condition signal somewhere between millivolts and mains to get to the ADC safely.
It's sort of like saying CPUs are the were all the hard work for computers is, so they should get all the money (not the motherboards, GPU and especially not software). That's just not how the economics of these things go.
Oscilloscopes also have a significant amount of additional front end conditioning, probe control, channel timing, and analysis software built into them. Most of the math functions on oscilloscopes use custom ASICs that work off the raw bits coming from the 120GHz digitizer which is non-trivial even just to receive. Calling it a plastic case around a digitizer is disingenuous.
What about the AD9226? It only has a single channel but can do up to 65 MSa/s at 12 bits. I bought one as a module for around $12 on AliExpress to experiment with software decoding of analog video. I only run it at 20 MSa/s and only use 8 bits because, funnily enough, the limiting factor is the speed at which I could get the data into my laptop. I connected it to a Raspberry Pi Zero and use the SMI peripheral as described here: https://iosoft.blog/2020/07/16/raspberry-pi-smi/
I'm currently working on a PLC program, replacing the PLC's basic cyclic input sampling (max 2K samples/sec) with a harder-to-use mechanism that lets you access the raw data off its 12-bit ADC at 10K samples/sec, which we consider unusually speedy.
We have another project that measures levels in water tanks. A sample rate of 1 sample per minute is plenty.
They need a lot of pins to be toggled. Otherwise they spit out no data.
And a lot of manual stuff means it's super DMA unfriendly. And you need DMA for high-speed stuff.
The edge case of the 1-bit conversion scheme used in SACD format is compelling from a few perspectives. The idea is to run the sampling rate in the megahertz region. SACD achieves 120dB of dynamic range with an extended frequency response up to ~100kHz. CD audio only achieves 96dB of range up to 20kHz with its 16-bit PCM scheme. From the analog hardware complexity standpoint, a bitstream converter is much simpler than a multi-bit converter. The 16-bit ADC might be cheaper due to the insane manufacturing volumes.
Trading bit depth for sample rate is a very compelling offer in many cases. The 3d graphics version of this is SSAA where you sample more pixels than your monitor needs in order to resolve higher frequency information.
Btw. the western list price is just an indicative at-most number anyway. Even a small-sized project gets discounted prices when you start talking to a sales rep.
If you want a flash ADC that can do 16 bit (and can do 16 bit at 100Mhz), however you'll have to probably mortgage your house.
Does it work? Well, does your design power up during factory testing, and then pass whatever things your rig (hope you made a few!) has in mind? Well, then, yes, in fact it does...
Also, and perhaps more importantly, the test rig is a lot simpler and a lot cheaper if you can generally trust manufacturer data. Sure, send off a few samples (likely prototypes with parts from Digikey instead of LCSC) to run extended testing in an environmental chamber with thermal imaging, build an endurance test rig that pushes the button once a second for four weeks to simulate once-daily use for years, whatever you want to do...but after that, if TI says it's good from -40 to +125, you're going to trust them on a lot of the edge cases.
Do 100% testing of the things you can test in-circuit if you can - power it up at room temperature and make sure it works once - but that doesn't mean you get the actual rated performance across all published environmental conditions.
Of interest from early in the article: I'm curious how these external ones compare to onboard, e.g. STM32's. Btw, the TI one listed is actually pretty simple to use in comparison. The ST integrated ones have more config and hardware considerations, e.g. complicated calibration procedures, external VREF (mentioned) etc. So, if you do app the config, is the integrated one as good?
The integrated ones usually have nice ways to integrate with timers and other onboard periphs.
LCSC is a grey market distributor whose sources of supply are of untraceable, dubious provenance. They are neither ECIA member nor participating distributor.
There you are. Assumptions. Nothing to do with LCSC.
Single cycle readings defeat the point of sigma delta ADC setups.
You're taking many high noise samples and averaging them over time to get a better picture of the average voltage.
The ADC's internal delta-sigma ADC takes a lot of samples at a much higher modulation frequency and presents them as a single output value.
You do not get the direct delta-sigma output from an ADC like this. The internal logic handles that for you. It's okay to take single samples of the output.
Natively/internally, it runs at 860 samples per second, and you can configure it to provide that data at a lower sample rate at lower noise levels by averaging multiple readings together internally.
And if you want to see CERN's multimeter, check this out.
Marco Reps is a treasure.
Why not?
Also, the AD7177-2 exists. That might be evidence enough for delta-sigma's victory.
Non-linear as hell - and evil side effects once you use the calibration curves.
There are a bunch of reasons but the primary reason is that good ADCs are made using a different mixed signal process than microcontrollers. MCU ADCs are capacitive charge-balancing successive-approximation type which limits their sensitivity and precision.
Standalone ADCs also eliminate significant sources of noise like temperature fluctuations and electronic noise (the digital logic on the chip often runs at less than 1Mhz for example)
Only ugly two-chip solutions or hyper exotic stuff with no community.
BES, Sifli, realtek, boufallo, etc.
No competition or no market?
I can't imagine Espressif is selling much volume of these chips.
The fact that they can't even fix their SPI module would tend to indicate that their engineering staff is very thin.
Weirdly honest deal, haha.
That the ADS1115 costs <$1 on LCSC means they buy millions from them every year. They are one of the biggest trustable players in Asia.
I have access to our internal STM32 pricing. You'd be shocked.
One supplier I developed a relationship with showed us their internal numbers and it was $1,000-3,000 per wafer for 130nm-180nm nodes with a minimum order of 25 wafers. Once the part is designed and the mask is made, the cost is mostly just the setup plus whatever they want for the IP. The silicon itself is often cheaper than the packaging around it.
They are huge step ahead: the upcoming CH32H417 has pretty much all PHYs integrated (!). For 10/100M Ethernet, USB-C 5GBbps and USB HS 480Mbps. That dramatically reduces the components needed to get that stuff running.
I also build a small robot with the ultra cheap CH32V003. That's a full fledged 48MHz microcontroller with 16kb flash and 2kb SRAM. Fun little thing.
If you are used to the ST HAL you will be able to work with them within 10 minutes. Their API style is similar.
links from 02025-03-16:
https://www.lcsc.com/product-detail/Microcontrollers-MCU-MPU... #LCSC #pricing for 16-pin #CH32V003 #microcontrollers #electronics #hardware: 14.21¢ in quantity 500. Not the cheapest, but it’s a RISC-V with IIRC an on-board op-amp, though the linked datasheet only covers the CPU really.
https://www.lcsc.com/product-detail/Microcontrollers-MCU-MPU... #LCSC #pricing for 14-pin #PY32 #ARM #microcontrollers #hardware, 9.01¢ in quantity 500. Not the cheapest, but it’s an ARM. #electronics
links from 02025-02-08:
https://www.lcsc.com/datasheet/lcsc_datasheet_2410121502_PAD... #PDF English #datasheet for #Padauk PFS122 #microcontrollers which have a 12-bit ADC and 24MHz. Not quite the cheapest microcontroller but they only cost 4.32¢ in quantity 2000.
links from 02024-08-01:
https://www.lcsc.com/product-detail/Microcontrollers-MCU-MPU... new cheapest #microcontrollers: Cypress CY8C4045FNI-DS400T, 1.5¢ in quantity 1000. It purports to be a 48MHz Cortex-M0 ARM with 32KiB of Flash and 4KiB of SRAM in a 1.6mm x 2mm package, 0.31-0.37 mm thick, with nine GPIO pins. I think that’s 4000 Dhrystone MIPS per dollar. #electronics #hardware #pricing
links from 02024-05-12:
https://jlcpcb.com/partdetail/NyquestTech-NY8A051H/C5143390 #JLCPCB has new cheapest #microcontrollers: #Nyquest NY8A051H: 1.58¢ each in quantity 20000, or 3.2¢ in quantity 1 #hardware #pricing
links from 02023-10-12:
https://www.lcsc.com/product-detail/Microcontroller-Units-MC... #Padauk PMC251 is one of their cheapest multithreaded parts; LCSC lists it here at US$0.1071 in quantity 500, which works out to US$53.55. 1 kiloword instruction memory
As of today (02025-10-15), the CH32V003A4M6, the PY32F002BD15S6TU, the PFS122, and the PMC251-S14 are in stock. The CY8C4045FNI-DS400T, the CY8C4013SXI-400, and the NY8A051H (not an 8051 despite the name) are out of stock. Today what I see are:
https://www.lcsc.com/product-detail/C49173938.html Currently cheapest #microcontrollers #pricing on LCSC: PMS150G-U06 (a SOT-23-6) for 2.02¢ in quantity 3000. #Padauk has broken the 3¢ barrier! One-time programmable. #electronics #hardware
https://www.lcsc.com/product-detail/C2857167.html Almost cheapest #microcontrollers #pricing on LCSC: NY8A054ES8, a SOP-8, for 3.91¢ in quantity 1000. This is from JSMSEMI (Shenzhen JSMicro Semiconductor Co., Ltd.) 1T 8-bit 8MHz chip, 128 bytes RAM, 2k × 14-bit EPROM program memory (but no quartz window, so one-time programmable). 8-level hardware stack. The datasheet is full of descriptions of peripheral registers and pin circuit schematics, and then the 55-instruction instruction set is documented on pp. 76–91.
Cheapest "general purpose" microcontrollers that have enough features for good developer experience are Puya and WCH.
If you are a seasoned STM32 developer you will get used to them within a day.
Examples:
https://download.py32.org/Datasheet/en/PY32F071_Datasheet_Re...
https://arvidtek.com/wp-content/uploads/2025/06/CH32V006DS0-...
I've had a good developer experience with 74LS00-family SSI chips (like the quad-NAND-gate 74LS00 and the hex-inverter 74LS04), so your mileage may vary.
Just to clarify, the Padauk and Nyquest chips I linked above are one-time programmable (PROM), not mask ROM, except the PFS122 (3.53¢), which is reprogrammable Flash. (It's advisable to debug your code with a Flash chip or an ICE before you start consuming PROM chips, unless you really like to desolder.) Padauk doesn't seem to make mask-ROM chips at all, and I haven't seen any from Nyquest.
I'm not sure what you mean by "highly specialized". They're tiny, slow 8-bit microcontrollers, so you will certainly be disappointed if you go in hoping for STM32-like capabilities. But they're programmable, and their peripherals don't include things like LiDAR pulse timing circuits or AES encryption hardware or anything like that. It's just very general-purpose stuff like watchdog timers and PWM generators.
Takes an analog signal from something like light or sound and convert it into a digital signal.
Acronyms introduced in an article should be spelled out at least once please.