I first worked on things individually such as the alarm siren, checking battery voltage, and detecting the presence of water. I'm now working on combining it all into the finished firmware. It's mostly completed but I'll be adding a few more tweaks such as staying in low power mode for much longer and having a low battery alarm (right now the indicator LED just long blinks when the battery voltage is low.)
The features it includes/will include:
Sounding an Alarm when water is detected
Every so often measuring it's own voltage without the use of any I/O pins
If low battery voltage is detected sound a different brief alarm (to be added soon)
Every so often briefly flash the indicator LED to show that it's still operating
A key goal I've been working to achieve as best as possible is to keep the Attiny85 in extremely low power down sleep mode for as much of the time as possible. In power down mode, both INT0(which I'm using for water detection) /pin change interrupts and the watchdog timer interrupts still work. I could dump the idea of both indication that it's still operating and low battery detection and get a theoretically long battery life of around 33 years using two AA NiMH cells rated at 1350mAH (measured current at power down mode was 4.7uA.) Of course the limiting factor would likely then be the self-discharge of the cells. I may release a firmware without the "it's still working" and low voltage checks.
I thought hard about sticking a CR2032 holder on the board but decided against it. There doesn't seem to be anything standard in terms of a PCB footprint for a CR2032 holder. So if I did that, I would likely have to stick to a particular part number and others that would want to make their own would have to go hunt it down. Wouldn't be a big issue if I was planning to make them in mass, but since I only plan to make a few it didn't make much sense to me.
In related news, I won a voucher from the HaD flexible PCB contest, so It looks like I'll be taking a crack at designing aflex PCB to serve as the water sending electrodes.