I'm co-running the MakeRiga hackerspace. To be exact, I take care of its internals so that it has some potential to grow - register and onboard members, do cleanup and upgrades, organize events, take care of the infrastructure and so on - in return, I use the space as one of my workplaces, where hardware is concerned, at least.
One of the things I believe in is "at any moment, there should be as little powered devices as possible". There's all kinds of extension cords, power supplies and PCs plugged in permanently - the reasonable solution is to switch them on as you need them and switch them on as you go. However, people forget about it, sometimes, they don't even know about it.
Leaving appliances unattended is pretty bad in a hackerspace.
- If one of the soldering stations gets left alone for a long time while it's turned on, it might result in a fire - something that is likely to be the death of a small hackerspace.
- If someone leaves a drill battery charger for a couple of days and the battery left there heats up (for whatever reason), that's a dead battery in the making at best.
- If a powerful computer is left turned on, that's just a waste of electricity (but also, watch out for those Molex-SATA power adapters!).
- If a lasercutter is left turned on and cutting, it can escalate into a very dangerous fire quickly. Same for 3D-printers.
Can you solve this problem in an easier way? Sort of but not really. You can train people to turn everything off, but you will forget to train some people, and people will forget to turn the tools off from time to time, anyway. Moreover, accidents happen - i.e. somebody having to run out of the space to get to a shop before it closes, forgetting to flip a switch on the extension cord before they go, "just for 10 minutes".
The idea is simple - we need to have some way to monitor plugged-in devices in a hackerspace. This project is part of the solution - a small device that can let us know when something important and dangerous is plugged in and operating, networked in a way that allows for smarter integration (i.e. SMS "you forgot this!"). This kind of device can only be a part of the solution (i.e. it's really easy to identify plugged-in computers, just ping the IP), but it's a very important part, since a lot of the devices that need to be monitored are also not smart enough to let you know about their status.
What can you do with the resulting data? First and foremost, have some kind of monitor near the hackerspace exit - most likely, a panel with a hackerspace map and red LEDs, but a TFT monitor will work, too (just be more involved). Then, when you go away, you can spot all the things you've left turned on, go back, turn them of and then go on your merry way. If this fails for some reason, there could be some kind of notifications for active members - "space is empty but there's a battery charger left charging, call some people near the space and ask if they could pop in and fix that".
Attiny85 and NRF24L01, with firmware that just sends "ID of the device" beacon packets once every X seconds. Plus, there's a diode, large capacitor and a resistor divider to a GPIO pin - a really primitive circuit to try and detect a mains power fault, in other words, when the device is switched off., it's cool to send one last "ID of the device got switched off" packet, since otherwise, whatever receives these packets has to rely on timeouts to actually make "lost/not lost" decisions. Talking about "what receives the packets" - there will be a base station, to be exact, a Raspberry Pi with an NRF module connected to it - it will aggregate the data (from this and other sources) and then send data to whatever powers the LED/TFT display, aggregate the data in a database, send notifications, as well as power any future software additions.
Why not add control capabilities? (i.e. a relay)
I'm open to the option, but it would be very involved at this point => not yet, for now, this is a really simple solution to an important...Read more »