
When the electronic load is working, there are many risks of possible injury, disability, and death, such as electric shock, high temperature burns, and physical damage caused by high-speed rotation of the fan. Please operate in strict accordance with safety regulations and provide adequate protection. Minors should operate with the assistance of their guardians. Making and using this product by yourself means that you have sufficient awareness of safety risks, and any losses and consequences caused are at your own risk. The platform and the author do not bear any legal responsibility.
Design description:
1. Use ESP32 master control and use MicroPython programming to realize the constant current function of 100W electronic load;
2. Input voltage -DC12V;
3. Load input voltage: 1~30V, maximum constant current value: 6A;
4. The maximum design power is 100W, which is related to the heat dissipation;
5. This design is used for MicroPython learning applications. Many functions have not been realized yet (constant voltage/constant power/battery discharge, etc.), and some small details are not perfect. Welcome everyone to improve together;
6. The original design uses AD software, the schematic is imported into the standard version, and there are problems with PCB import. Download is provided.
It's an old habit, I use whatever I have at hand: a discarded industrial power supply/775 cooling fan/LCD1602, with I2C interface board, the finished picture is as follows:

After disassembly, the assembly picture is as follows:

The actual load interface is displayed as follows:
Schematic diagram description:
The device DC5.5 power socket, input 12V power, add reverse protection:

The 12V power supply is converted to 5V output by the MP1584 DCDC power module to provide power for the device, and the USB 5V power input is only used for compiling or burning programs. 3 LDOs provide power for the back-end processor and analog circuit respectively:

The INA229 current detection chip and the OPA2340 op amp together form a constant current feedback circuit. A few more anti-reverse diodes are added. R39 and the adjustable resistor do not need to be soldered: The

MCP4725 DAC chip outputs a comparison voltage to set the output current:
Instructions for use:
1. Use the firmware written in MicroPython. Please refer to the online tutorial to configure the MicroPython environment of ESP32: Quick Start MicroPython Development ESP32
2. Upload all the Python codes in the attachment to ESP32 and run ESP_ELD_V2.1.py.
3. The rotary encoder is used to control the constant current value, which can be controlled with or without load.
4. The button controls the load switch.