Very low consumption wireless IoT devices can run on small battery but this requires a drastic management of the power consumption. For limiting the "electro-smog" and using very lost cost components such as the Arduino Nano, I have chosen to develop wired IoT instead. The Arduino and the Ethernet shield cannot be powered using small battery and having a DC pack for each IoT device can be painful.
There is a technology called Power Over Ethernet (PoE) that becomes very interesting in such situation.
Cheap PoE switch support only 10/100 Mb/s Ethernet as well as Arduino Ethernet shields. Each Ethernet RJ45 socket have 8 pins where only 4 of them are necessary for carrying the data signals leaving 4 wires unused. These free pins will be allocated to the power distribution.
- pins 7 & 8 = GND
- pins 4 & 5 = VCC
The data are sent to PoE switch on the uplink RJ45 and others RJ45 sockets distribute the data AND the power. Splitters are required and placed just before the IoT devices as show on the photo.
- PoE switch 10/100 Mb/s - LZD-AD6F-2C - eBay - 10$
- 2x splitters - Amazon - 3$
NOTE: Splitters are usually sold in pair : one for power injection and the second for power splitting. You may replace the female jack of the power injector by a male jack to use both cable as splitters.
Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.
Step 1: Example - the PoE Switch and the MQTT Geiger Counter
Nowadays, there are several cost effective PoE Switch solutions, mostly from China, such as the LZD-AD6F-2C available from several commercial websites (e.g. eBay). It offers 2 uplink RJ45 to connect your LAN and 6 SPOE (Simplified Power Over Ethernet) RJ45 to connect IoT devices for example.
It support only 10/100Mb/s because these protocols uses only 4 wired (2 pairs) over the 8-wires of Ethernet RJ45 (1Gb/s protocol uses 4-pairs and PoE requires transformers to insulate the data from the power). This low cost SPOE switch is well suited for our Arduino based IoTs because the Arduino shields support also only the 10/100 Mb/s protocols.
The PoE switch can be powered from 5 to 60V. We are free to choose any voltage within this range and not to comply with the PoE standard recommendations (norms IEEE 802.3af and 802.3at). Arduino devices need 5V power supply or up to 9V using the internal voltage regulator connected to the Vin input.
Nevertheless, the Arduino 5V internal regulator may be in trouble when it comes to power not just the Arduino but also shields or external electronic components. Therefore, if you are sure that all your IoT devices can at 5V, plug a 5V DC pack able to power all the device and the switch to the PoE switch otherwise you should use a higher voltage and have 5V regulators inside each IoT to alleviate the Arduino internal 5V regulator. Don't forget to add heat sink to these additional 5V regulators and holes in the casing for ventilation.
For example, our MQTT Geiger Counter IoT device requires a power voltage higher than 5V to allow the High Voltage Booster to deliver 400V. This IoT is powered through the PoE switch using a 6V DC pack plug that provides 6.4V. Whereas our additional 7805 regulator dropping the voltage from 6.4 down to 5V only outputs few hundreds of mW, it needs a heat sink.