- Analog GPIO ``ADC Input`` with ``AdcParam<x> 1,<start_range>,<end_range>,<margin>,1`` provide direct light control
- Analog GPIO ``ADC Voltage`` with ``AdcParam<x> 11,<start_range>,<end_range>,<lowest_voltage>,<highest_voltage>`` provide energy monitoring with dc voltage
- Analog GPIO ``ADC Current`` with ``AdcParam<x> 12,<start_range>,<end_range>,<lowest_current>,<highest_current>`` provide energy monitoring with dc voltage
- Analog GPIO ``ADC Input`` with ``AdcParam<x> 1,<start_range>,<end_range>,1`` provide direct light control
- Analog GPIO ``ADC Voltage`` with ``AdcParam<x> 11,<start_range>,<end_range>,<lowest_voltage>,<highest_voltage>`` provide energy monitoring with dc voltage
- Analog GPIO ``ADC Current`` with ``AdcParam<x> 12,<start_range>,<end_range>,<lowest_current>,<highest_current>`` provide energy monitoring with dc voltage
ESP32 ADC has variables errors, but calibrations values are put in eFuses at factory test.
analogReadMilliVolts() from api correct the ADC reading with tata values.
Since now the value are mV and not ADC numbers, the fast solution is to revert it back to ADC numbers:
divide by Vcc => ANALOG_V33*1000 and multiply by ANALOG_RANGE
Other way is to modify all sensor cases to account for the different unit.