There's not much to say, really. It's a gate. With a WiFi interfaceOh, OK, here's the gen:
An Electric Imp device looks after the WiFi and basic I/O. It has a
super-low-quiescent switch mode power supply attached to it, along with some signal conditioning and an
I2C temperature device. The whole unit runs on a wide range of 4V through 50V DC, and pulls typically 8uA.
So as you can see running it on 4 AA cells is easy.
Theres a proximity magnetic reed switch with some signal conditioning on a bit of veroboard.
And a magnet in the gate.
It's all held together with hot glue. Of course.
The Electric Imp talks to an agent hosted by the Electric Imp company (the price I pay for not having to faff with
a WiFi TCP/IP stack is having to use their service...), which spits out JSON every hour or so with the gate state
and the temperature, and the device time.
When the gate opens the Electric Imp is woken up and reports gate open. Thence it goes low power again waiting for the gate to close, when it sends another JSON packet.
Once the gate closes it goes back to its one hour poll of the gate.
The server software runs in C# using the following stack:
Then the service (which is arranged as a collection of independant modules communicating via Microsoft Reactive Extensions
in a pub sub arrangement) does a bunch of analysis on gate state vs the rules - gate open late at night, gate left open, etc.
The result of this analysys, and various housekeeping, gets fed through to a messaging subsystem that sends me an SMS text or an email, or both, depending on the event being registered.
Theres a bunch of other stuff in there too, which will be included in the Battery Monitor project...
The Web UI is again C#.Net: