Currently not fully tested, but works by slowly varying voltage and current. Might develop a new version to reduce cost.
Known design failures and modifications:
1. Remove R35, since it introduces leakage current in 5mA range
2. Add 1uF 0603 MLCC parallel to C12 to reduce ADC noise
3. Remove R3, and solder R4 for booting from Flash
PCB with KiCAD 5
A simple GUI is designed with Qt
Firmware with STM32CubeIDE