All nodes i.e temperature sensors, boiler relay module, zone relay module etc. are scattered around the house that are responsible for controlling light, heating and other IOT devices serves very little purpose if we can not communicate with them or pass some instructions. Most of the time these devices are battery powered and even ones with main powered don’t communicate through home WiFi and for the battery powered nodes WiFi isn’t the option due to the fact how WiFi works even PiHome Smart Heating nodes aren’t WiFi connected.
Most of the time these IOT devices are connected through low powered nRF24L01 trans-receiver but on same time all these IOT nodes need to communicate with raspberry pi (controller). Now million dollar question: how we can communicate and pass some instructions to these IOT devices/nodes to have control on them? the simple solution that bridge the both worlds (nRF24L01 and WiFi/Ethernet) and to do this we need a device that can communicate to all IOT devices/nodes over nRF24L01 and to our controller over WiFi/Ethernet or serial, you may hear about it as Smart Home Gateway or simply IOT Gateway but its same thing so ultimately it communicate with all the nodes and on other side connect with your home automation controller either over WiFi, Ethernet or over serial port.
You can buy Smart Home Gateway from my eBay store
Basic Configuration/Link between PiHome Smart Home Gateway, Nodes and Controller
PiHome Smart Heating Gateway has nRF24L01 to communicate with the nodes and Ethernet/WiFi to connect to the home network to which controller will also be connected. See image below for reference architecture, left side is temperature sensors node with NRF24L01 then in the middle you have PiHome Smart Heating Gateway or IOT Gateway that receive temperature readings from sensors node and then right side is your PiHome Smart Heating Controller software installed on raspberry pi that will process/digest these temperature readings and made decision for your heating needs.
PiHome Smart Heating Gateway is available to purchase from PiHome eBay Store, i m not making any money out of these sales, i m just trying to help all the creator/makers and get them to understand how this IOT stuff works and how they can have all connected devices by using the DIY skills.
* Created by Henrik Ekblad <email@example.com>
* Copyright (C) 2013-2018 Sensnology AB
* Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
* Make sure to fill in your ssid and WiFi password below for ssid & pass.
// Enable debug prints to serial monitor
// Use a bit lower baudrate for serial prints on ESP8266 than default in MyConfig.h
#define MY_BAUD_RATE 9600
// Enables and select radio type (if attached)
#define MY_RF24_PA_LEVEL RF24_PA_MAX
// RF channel for the sensor net, 0-127
#define MY_RF24_CHANNEL 91
//RF24_250KBPS for 250kbs, RF24_1MBPS for 1Mbps, or RF24_2MBPS for 2Mbps
#define RF24_DATARATE RF24_250KBPS
#define MY_WIFI_SSID "MySSID"
#define MY_WIFI_PASSWORD "MyVerySecretPassword"
// Set the hostname for the WiFi Client. This is the hostname
// it will pass to the DHCP server if not static.
//#define MY_HOSTNAME "PiHome_Gateway"
// The port to keep open on node server mode
#define MY_PORT 5003
// How many clients should be able to connect to this gateway (default 1)
#define MY_GATEWAY_MAX_CLIENTS 2
// Set blinking period
#define MY_DEFAULT_LED_BLINK_PERIOD 300
// Flash leds on rx/tx/err
// Led pins used if blinking feature is enabled above
#define MY_DEFAULT_ERR_LED_PIN 16 // Error led pin
#define MY_DEFAULT_RX_LED_PIN 16 // Receive led pin
#define MY_DEFAULT_TX_LED_PIN 16 // the PCB, on board LED
// Setup locally attached sensors
// Present locally attached sensors here
// Send locally attached sensors data here
PiHome Smart Gateway is compatible with MySensors. For more information on how to communicate with smart home gateway check this post. For battery powered temperature sensors that runs on 18650 battery.