We are all living in a technological wasteland.


IoT Sensor Network – Introduction


Recently I got confronted with a very small use case of IoT temperature gathering. just an ideal case just to see what we can achieve with some out of the box OpenSource software and some Raspberry Pi’s.


– IoT Sensor Network – Part 1: ELK Stack
– IoT Sensor Network – Part 2: MQTT
– IoT Sensor Network – Part 3: The Control Center
– IoT Sensor Network – Part 4: Sensor 1
– IoT Sensor Network – Part 5: Sensor 2
– IoT Sensor Network – Part 6: Sensor 3

The test case

So the test case is pretty complex:
– I have a freezer which is positioned in a potential hot area, I am suspecting a possibility of near unfreezing during a hot summer, I want to measure this
– The thermostat inside the house is always off, I am suspecting it’s a rather structural problem and it always adds a few degrees. But I want to map and measure this
– The garage, which is outside the reach of my WiFi, might potentially be a new site for moving my mini data center to. I don’t know if my hardware would survive this wet place
– The misses always opens Google to see the weather forecast, I think I can achieve a mini-weather station GUI. I also like to use this as the temperature readouts of all servers

The setup and sensors

VM 1 – ELK Stack

A small VM hosting Elasticsearch-Logstash-Kibana (https://www.elastic.co/products). Any data gathering needs a database and a front-end.

Disk: 16GB
OS: Ubuntu 16.04 LTS


A message queue for transmitting data: http://mqtt.org/.
MQTT is a machine-to-machine (M2M)/”Internet of Things” connectivity protocol. It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium.
This VM doesn’t consumes a lot of memory.

RAM: 256MB
Disk: 6GB
OS: Ubuntu 16.04 LTS

Control Center

This small control center will show the TFT screen with all temperature sensors. It will also handle the data transfer of the MGTT bridge and process temperatures sent by sensor 1. I try to keep the bandwidth as low as possible so I am only sending the bare minimum over MQTT and let this server handle the ELK communication. 1MB traffic costs me 0.10 cents, any ASCII character too much will cost money, by using MQTT I can keep my data traffic cost to below 0.30 cents each month.

Location: Living room

– Raspberry Pi 3 Model B €39.00
– PiTFT Plus 320×240 2.8″ TFT + Capacitief Touch screen €45,00
– Buttons + lid PiTFT Plus 2.8″ €6.00
– Micro SD card 16GB €6.00

Sensor 1

The sensor in the garage, I had an old Raspberry Pi model B generation 1. It has 2 USB ports, ideal for the USB 3G modem.

Location: Sensor in garage

– Raspberry Pi model B €25.00
– Case € 5.00
– Huawei E220 Stick €10.00 (Ebay)
– SD card 4GB €5.00
– DHT22 Sensor €2.50

Sensor 2

Sensor 3

Sensor in the attic, measuring the freezer and the environment surrounding the freezer.

Location: Attic

– Raspberry Pi Zero W €10.00
– Case € 5.00
– Micro SD card 16GB €6.00
– 1x DHT22 Sensor €2.50

Total cost price

(for those interested)Totals: too much €193.00

No Comments |