A device comprising, a microcontroller coupled to a transformer, wherein the transformer comprises a primary winding and a secondary winding, wherein the microcontroller is connected to a secondary circuit at a first location; wherein: the microcontroller is configured to provide a voltage (1006, V control)at a first value to the primary winding for a first period of time, the providing the voltage for the first period of time including initiating delivery of the voltage at time t 0 and ceasing the delivery at time t 1, the ceasing the delivery inducing a flow of current (I sec) through the secondary winding and the secondary circuit, wherein the secondary circuit comprises at least one resistor (1022, 1024), at least one diode, and a resistive load (1050, R L), wherein the resistive load is variable; the microcontroller is configured to measure a first voltage at the first location in the secondary circuit at time t 2 and to measure a second voltage at the first location at time t 3; the microcontroller is configured to compute a peak current in the secondary circuit using a value of the at least one resistor and the first measured voltage; characterized in that: the microcontroller is configured to compute a time constant of the secondary circuit using a difference between time t 3 and time t 2. the first measured voltage, and the second measured voltage; and the microcontroller is configured to compute an intensity level at the resistive load using the computed peak current and the time constant of the secondary circuit; and the microcontroller is configured to monitor the intensity level, the monitoring the intensity level including iteratively performing the providing a voltage at the first value to the primary winding for the first period of time, the measuring the first voltage and the second voltage, the computing the time constant, the computing the peak current, and the computing the intensity level. a microcontroller coupled to a transformer, wherein the transformer comprises a primary winding and a secondary winding, wherein the microcontroller is connected to a secondary circuit at a first location; wherein: the microcontroller is configured to provide a voltage (1006, V control)at a first value to the primary winding for a first period of time, the providing the voltage for the first period of time including initiating delivery of the voltage at time t 0 and ceasing the delivery at time t 1, the ceasing the delivery inducing a flow of current (I sec) through the secondary winding and the secondary circuit, wherein the secondary circuit comprises at least one resistor (1022, 1024), at least one diode, and a resistive load (1050, R L), wherein the resistive load is variable; the microcontroller is configured to measure a first voltage at the first location in the secondary circuit at time t 2 and to measure a second voltage at the first location at time t 3; the microcontroller is configured to compute a peak current in the secondary circuit using a value of the at least one resistor and the first measured voltage; the microcontroller is configured to provide a voltage (1006, V control)at a first value to the primary winding for a first period of time, the providing the voltage for the first period of time including initiating delivery of the voltage at time t 0 and ceasing the delivery at time t 1, the ceasing the delivery inducing a flow of current (I sec) through the secondary winding and the secondary circuit, wherein the secondary circuit comprises at least one resistor (1022, 1024), at least one diode, and a resistive load (1050, R L), wherein the resistive load is variable; the microcontroller is configured to measure a first voltage at the first location in the secondary circuit at time t 2 and to measure a second voltage at the first location at time t 3; the microcontroller is configured to compute a peak current in the secondary circuit using a value of the at least one resistor and the first measured voltage; characterized in that: the microcontroller is configured to compute a time constant of the secondary circuit using a difference between time t 3 and time t 2. the first measured voltage, and the second measured voltage; and the microcontroller is configured to compute an intensity level at the resistive load using the computed peak current and the time constant of the secondary circuit; and the microcontroller is configured to monitor the intensity level, the monitoring the intensity level including iteratively performing the providing a voltage at the first value to the primary winding for the first period of time, the measuring the first voltage and the second voltage, the computing the time constant, the computing the peak current, and the computing the intensity level. the microcontroller is configured to compute a time constant of the secondary circuit using a difference between time t 3 and time t 2. the first measured voltage, and the second measured voltage; and the microcontroller is configured to compute an intensity level at the resistive load using the computed peak current and the time constant of the secondary circuit; and the microcontroller is configured to monitor the intensity level, the monitoring the intensity level including iteratively performing the providing a voltage at the first value to the primary winding for the first period of time, the measuring the first voltage and the second voltage, the computing the time constant, the computing the peak current, and the computing the intensity level.