Because the LED display uses lots of power to display the time, the user must indicate to the system that they are ready to view the time. I have experimented with 3 different options.
Interface Method | Current Usage | Advantage | Disadvantage |
IMU | 270nA | No exterior to waterproof. | Gestures are clunky. |
Resistive Contact | >30uA | Easy to waterproof, looks sleek | Floating mcu inputs use lots of current! |
Tactile Button. | < 100nA | Lowest Power, satisfying click | Complicated to waterproof. |
The table above is the order in which I implemented them.
IMU
The allure of an easy to waterproof and low power solution drew me to the adxl362 by Analog Devices. Though in order to use its lowest power mode you only get a 6hz measurement, and are provided with an interrupt when the acceleration changes by a set amount. This only enables a very clunky gesture of triggering the magnitude threshold with some particular timing. This was difficult to trigger reliably, though it would also trigger accidentally, wasting current on the LEDs when no one was looking.
Resistive Contact
Next I moved on to a floating input to the MCU exposed on the outside of the ring, this could then be pulled low through the users skin to an adjacent ground connection. I used a large external pullup in the 1Mohm range, which could be pulled to ground through the ~100kOhm resistance of the skin over a short distance. This worked well, and had the advantage that the external contacts contained no moving parts, making it easy to waterproof. Unfortunately sometimes the users skin is too dry, and will fail to trigger the button without excessive pressure applied to get a good contact. Though due to the entirely rigid nature of the system there was no tactile feedback to the user, making it pretty unsatisfying to use. The killer however is the surprisingly high current draw. My initial thought was that the current draw would be small, as usually the MCU input is open circuit, even when shorted, it would be through a 1Mohm resistor. However, in practice allowing an MCU input to float halfway in its voltage range causes significant leakage, in the 10uA+ range. You could use the pin in analog mode, though then the ADC sampling and thresholding would use a similar amount of current.
Tactile Button
The current solution is to use a tactile momentary switch. Specifically the NANOT240AS by C&K. This button is on of the thinnest IP67 rated momentary switch that can be used in this application. A secondary waterproofing O-ring and plunger needs to be engineered into the metal core of the V3.0 ring to allow the user to press it, and avoid water being trapped beneath the plunger. In the current incarnation the button is on the inside of the ring, and the user presses the whole ring against their finger to activate it. This is nice as it allows a good degree of leeway in the pressing action, also it allows the top surface of the ring to be dedicated to collecting energy and displaying the time.