I'm a novice to PCB design and circuit design. For an university project, I need to design a PCB which samples 16 different signals at a rate of 800Hz per signal (ie need total sample rate 16x800=12800 Hz) and also has BLE capabilities.
I was planning on using the ESP32-S3 microcontroller for that since it has BLE, 2 (12bit)ADCs with 10 channels each so it seemed perfect. And according to the ESP32-S3 datasheet, it can sample at 100 kHz so even more perfect.
But while reading sections 39.3.2 and 39.3.3 of the following datasheet I saw that there are two different types of controllers for the ADCs :
- a digital controller for ADC1 with all the features I need (namely multi-channel scanning at defined interval) but which can only control the first ADC
- Real Time Clock Controllers available for ADC1 and ADC2, which don't have these nice features (can only do single channel conversion, somehow can be configured by the ULP coprocessor whatever that means ?). ChatGPT tells me that having to issue a single channel conversion command separately for each channel at several thousand Herz could introduce a lot of latency and not work, but I don't trust ChatGPT for technical advice.
So I now have three choices :
Use Digital Controller on ADC1 to monitor 10 channels (straightforward ?) and RTC controller on ADC2 to monitor 6 channels (maybe challenging ?) but I need to synchronize the two controllers which run on two different clocks, the real time and the main clock (possibly hard ?)
Use RTC controllers on ADC1 and ADC2 to monitor 8 channels each (maybe challenging), but at least I don't need to synchronize anything.
Simply buy external ADCs that have the desired specs and not bother with the integrated ADCs. Pros : I was told dedicated component ADCs are more precise than integrated ones and will need less code to clean/make usable the digitized signal. Cons : one more component to deal with on my PCB, I was trying to keep it simple since it's my first time.
I need advice to understand if options 1 and 2 are even feasible (before I invest way too much time in them), and how much complexity option 3 adds.