HydroGuard uses four electrodes. The outer pair sends a small alternating current through the upper arm. The inner pair measures the resulting voltage. Separating these two jobs makes the measurement less sensitive to the resistance where each electrode touches the skin.
The first board gives the MAX30001 its own 1.8 V supply and clock. Every electrode path has a 1 kΩ series resistor, and the reference voltage has a test point. The ESP32-C6 module is removable, which helped when we needed to probe signals or change the controller.


Four electrodes on an elastic band
We use 12 mm sew-on snaps to connect the electrodes. They are easy to replace and easy to position on an elastic band. The band holds them flat against the arm without needing a custom adhesive patch.

Measuring the battery
A 2 MΩ and 1 MΩ resistor divider brings the LiPo voltage into the range of the controller’s analog input. A capacitor beside the input makes the high-resistance divider easier for the ADC to read. The tradeoff is a short settling time before each measurement.
A status light that is not essential
The first board has an SK6812 status LED. It worked, but the board powers it below the minimum voltage in its datasheet. The firmware therefore treats it as optional. If the LED is missing or fails, the impedance measurement still works.
Why we started at 32 µA
The first tests used a 32 µA measurement current. It was a conservative starting point while we checked the electrode contact and the signal range. Higher settings remain available, but they were not needed to prove the circuit.
The large board did its job. It gave us a clear view of the signal path and enough access to fix the first problems. The next board can now focus on size, power use and wearing comfort.
