Lastly, we need a voltage controller that allow user to switch from 0v to 20v. We can use a simple 10x gain op-amp system and a DAC to do this. DAC that operate in I2C can be easily control by microcontroller to vary voltage from 0 to 2.048v and then send to op-amp to amplify 10 times which is 0 to 20.48v. This will later feed to LT3080 as operating voltage. In other hand, voltage booster need to provide Vin to LT3080 as much as 2V ahead of operating voltage. For example, if user switch to 7v, voltage booster must provide 9v and above to LT3080 in order to sufficient outputs 7v to external terminals. Besides, do not forget current limiter to switch off the voltage controller circuit if load intends to draw more current from PSU.