We now live in a world where you can buy a computer for under £100 that can provide all the services related data functions for a household, connecting the dots, and moving information to where it needs to go, securely and contract free. It makes it hard to justify the use of expensive BMS technology which is often outdated by comparison.
Node-HIU is an IoT platform, based on a Raspberry Pi running Node-RED, for connecting domestic services equipment, such as HIUs or domestic thermal stores, to everything else.
The basic idea is to provide properties with a standard IoT platform that can operate indefinitely, without contracts, and provides all the necessary data storage and links to services, most notably:
- User interface to control hot water and central heating, locally or over the internet, from a phone or computer.
- System monitoring for reporting on errors or poor efficiency.
- Remote diagnostics and commissioning
- Energy management and load balancing
- 1 Images
- 2 Live System
- 3 Technology
- 4 Advantages
- 5 Connectivity
- 6 Visual Programming
- 7 Reliability
- 8 Security and Data Protection
- 9 Simple Authentication
- 10 MQTT Protocol
- 11 WiFi, Internet and Healthcare
- 12 Other Potential Uses
- 13 Products
- 14 Participate
- 15 Installing Node-HIU
- 16 Additional Node-RED Resources
This is a development system with public access to demonstrate recent features. It is currently connected to:
- DATA twin plate HIU (USB/RS485) providing full control over all hot water and heating functions
- Arduino Micro with additional sensors (USB) simulating a room thermostat
- M-Bus heat meter (via Elvaco CMe3000)
- M-Bus Relay/Pulse Counter (via Elvaco CMe3000)
- Relay Board (4 x 10A 230vac changeover relays)
- MQTT Service provided by another similar unit on the local network, simulating a central node for site-wide services. This second unit also provides VPN services, public dashboards, and pairing services, with a NOIP domain name pointing to it.
- A webcam, currently pointing skyward to take images of the day's weather
Some of the services you may see are experimental, or to demonstrate how far the system can go. Experiments currently in progress include:
- Automatic commissioning and reporting
- Control over internet radio (the audio jack of this unit is plugged into a respectable sound system, with music streamed from a selection of radio stations).
- Z-Wave connection to TRVs, wall switches, light bulbs, relays etc.
- Control over Samsung Television
Best viewed in Chrome or Firefox browsers.
To use as an app on an Android phone, simply open in Chrome browser and 'Add to Home screen'. When opened from the new icon it will appear as a full screen app, providing control over this system from anywhere the phone has a connection.
We have combined the following technologies to provide a cost effective and simple, open-source solution:
- Raspberry Pi 3 Linux mini computer, with on-board:
- Web Server
- USB Ports (x4)
- Node-RED Jasvascript visual programming platform, providing the software functions for:
- Web Sockets
- MQTT Messaging
- Twitter Feeds
- SMS Messaging (via Twillio)
- Open-source libraries available for Linux systems:
- Password generation
- Apache and PHP
- Any of our range of electronic HIUs (Heat Interface Units), providing:
- Hot water and central heating settings
- Keep warm and Legionella functions
- Prepay isolation
- Error reporting, both of HIU and heat network
- All sensor data
The key advantages to this approach are:
- Standard components, readily available on most high streets, and easily duplicated in entirety.
- Open-source, so no software licenses to worry about, and a the benefit of many thousands of free contributors to development.
- Makes use of standard internet security protocols.
- Contract free
- No ongoing charges, other than having internet, registering a fixed IP or NOIP domain, and any SMS messaging.
- Does not need internet or use of an external server for local services.
- Powerful enough to provide any form of user interface, or connection to remote services.
- All user data is stored local to property on the systems SD card. This gives the user a guarantee that their data is protected and ensures they have the option of deleting it, in line with new regulations.
- All software is clear to examine and understand, with the same visual programming formats used to teach in primary schools. The Raspberry Pi platform is used extensively in the educational sectors worldwide. This makes it easy to customise by manufacturers, field engineers, or even end users.
- Nearly all old and new technologies are released in the form of a Raspberry Pi plugin, called a Hat. Relays and additional sensor inputs are a good example.
- Manufacturers can contribute significant to development, pooling their knowledge and experience in return for having a simple and standardised means of interacting with other systems. Indeed, it is manufacturers possibly who gain the most, as they are often committed to providing on-site support for a number of years and having a system email you a full diagnostic report is extremely helpful.
The true power of the Node-HIU is its ability to connect to numerous devices and data transport protocols. It acts as the central router for all a properties data, allowing it to combine information from a number of sources to make calculations and decide what to do with the information.
In a typical installation the Node-HIU may connect to:
- The Heat Interface Unit, to monitor and control domestic hot water and central heating, and read sensor data pertaining to the performance of the system.
- An WiFi/MQTT enabled room thermostat/humidity sensor, to extend central heating control and pull room temperature and humidity data into the pool.
- Any additional sensors, such as a pressure sensor on the heating circuit for leak detection on direct district heating networks.
- An RS232/485 or enabled M-Bus Heat Meter, for measuring primary flow rates, temperatures and energy consumed.
- The Internet, over Ethernet or WiFi. In district heating we would typically use a private Ethernet system inaccessible to users. In a domestic contract we would simply connect to the users WiFi for connection.
- An App on the occupant's mobile phone for control over central services. This can potentially be done over WiFi, or Bluetooth in future updates, but the standard approach is using MQTT via the internet, so that control can be achieved remotely.
- The occupants mobile phone over WiFi, for basic occupancy detection. This allows the user to link heating and keep-warm functions to when the property is occupied, shutting down services when they leave. With a partner app on the phone it is possible to warn a system when the occupant is nearly home, to turn on heating in advance.
- A billing company, sending heat meter records at set intervals.
- The HIU manufacturer, sending error codes or warnings about system efficiency.
- The appointed maintenance engineer via SMS text, to inform him to make contact with customer regarding issues detected on the system that require urgent attention.
- The user via email, sending summary of energy use, as well as data access and privileges.
- The estate manager via email, sending performance data on the heat network that doesn't compromise user data protection.
- The plantroom, to enable more advance load management on a heat network. A simple example may be if hot water loads on a site exceed design allowances - an unexpected peak - the plantroom will immediately know this and can tell systems to turn off central heating for a few minutes to ensure domestic hot water performance does not suffer.
- An efficiency monitoring platform, such as the Energy Saving Trust's EMBED database, to contribute to the central pool of performance data used to improve design methods. The most notable is diversity where real world data is almost non-existent leading to regular over-sizing. Data is anonymised, so it cant be linked to a property.
What makes Node-RED so powerful is the way it combines the visual programming techniques, with open-source hardware, a comprehensive array of functions, and the ability to build your own function then upload them to the public repository for others to use. The system evolves rapidly - because its so powerful and easy to use.
Up to now, its been hard to justify the low-cost electronics available as robust enough for use in commercial applications. Building advanced home management systems for next to nothing has always been available if you were willing to research, learn and put in the effort, but hardly a model for mass uptake. Perfect for prototyping.
For some ten years we have been using both commercial controls as well as open-source equipment side by side, with the later used for research and development and monitoring applications, only using Linux systems for equipment control starting two years ago. We have experienced no significant issues with every system deployed in the field still operational. Indeed in many instances they have proven to be one of the more reliable bits of a plantroom, providing the sensor evidence needed to correct commissioning errors. Our own heating systems and biomass circuits run using £40 Linux computers and haven't dropped a heartbeat in four years now. So it is our firm belief that the right circuits can be considered highly reliable. With the Raspberry Pi its nice to know it sells in the millions, so hardware, and software issues, are rapidly updated. The platform as it currently stands is a highly evolved and extremely stable platform.
The weakest point in the system is the SD card. The beauty of an SD card is it is fairly low cost, easy to replace, and makes updating all the software on a system as easy as swapping cards.
SD cards, however, have a limited number of re-writes - a number in the many thousands. 16GB or larger SD cards are inexpensive these days, allowing many years of data to be stored without a need for rewriting over old files, however a larger problem is potentially experienced when power is lost to a system at the same time as files are been written to the card. Then the card can fail.
Our latest version uses a read only file system so the SD card is never written to, and cannot fail. The operating system and files are loaded from the card into memory, with a USB flash dongle providing storage space for log files and settings. We now believe with this approach the system is as solid as a commercial system. It is also versatile - allowing the operating system to be swapped out without effecting local data or settings, and visa-versa. When an occupant leaves a property, it provides a guaranteed way to either purge the system of any stored data, or for the occupant to take it with them.
The final argument against this technology is support. This concerns both components and information. Many electronics are justified on the basis that one can be assured the components will be available for at least 20 years or more. How else can you be guaranteed spare part continuity and avoid the need to redesign your system when a key component becomes obsolete? The counter-argument is that with a Linux mini-computer, the hardware is generic in nature, so the system can run on a circuit from another manufacturer. While the chips used in a mini computer may change over the years, the platform follows a standard recipe that can only improve for our purposes. Their is no need to replace a 20 year old computer like-for-like unless you are in the military.
In respect to information, we are of the believe collaborate open-source development is the way forward when it comes to handling data. Indeed, a well evolved platform will have embrace easy access to information, and a route to additional backup. We provide backup on equipment we sell, and we see that by having our equipment properly monitored and connected to the outer world, it can help us provide an even better level of service.
Security and Data Protection
The first step to protecting a users data, is to recognise that they own it. The obvious place, therefore, to store the data is on a server in the property. Sending data to the outside world unnecessarily, is avoided.
From there its a matter of setting options for where and when, and to whom, any data is sent out. This is a matter that requires the knowledge and permissions of the occupant.
The other side of the security issue is protection from outside attack.
Most internet systems run on Linux, and it provides all the expected security features, however the weak point on most systems is the use of standardised admin passwords on exposed services, that if not changed open the system to invasion from the internet. The simple answer is shut off all services other than Node-RED and MQTT services.
We have built into the installation and commissioning process an automatic generation of random Node-RED and MQTT passwords. The MQTT password can only be obtained by connecting to a web service at the same time as been in the property. This way, only the occupants can gain access to their remote services - its as you would expect for a domestic boiler, where the controls are on the boiler only accessible by the occupant.
Remote access to systems is provided over MQTT. This is similar to text messaging, but done over the internet, and instead of messages going to a single recipient, any system who knows the 'conversation topic' can access the data. The topic acts as a password to the conversation and is built on a PIN number provided to the end user.
We have implemented systems for linking mobile devices to the Node-HIU system based on locality to the property. A QR Code is provided to the end-user (a label on the system) that when scanned will take them to an access web page. This page will instruct the user to turn on hot taps in a simple but recognisable pattern, which the system in turn picks up, and then provides the user with their PIN number for full access via a number of MQTT apps available. Once connected the user can monitor tap flow rates live to confirm a successful link.
Custom apps are in development and aim to form part of the open-source Node-HIU project.
So at the end of the day, all an end user needs is access to their hot tap to gain control over their system.
An MQTT server is common to a block of properties. With 100 systems, each having a tap operate say 10 times in the busiest hour, that equates to 1000 tap openings. There are 720 x 5 second blocks in an hour, so there is a good chance someone will also open a tap at the same time as someone instigates a pairing at peak time.
The odd however of the same tap also turning off at exactly the same time is more remote. Tap operations are often short, however they almost always last longer than the 10 seconds it typically takes to pair. Then add in a confirmation step, and the odds of someone opening-closing-opening-closing a tap in perfect timing with someone trying to pair a device, are becoming astronomical.
WiFi, Internet and Healthcare
The Raspberry Pi 3 has on-board WiFi, that can be used to either connect to networks, or to provide WiFi access.
It also has Ethernet, and can be powered over the Ethernet using a PoE (Power over Ethernet) hat, in combination with PoE Ethernet Switches.
Where the unit is connected to a hard-wired Ethernet backbone, as would be standard, then the WiFi is free to enable a local hot-spot for the occupants or other equipment to use. Where desired, full access through to the internet can also be provided.
This opens up the possibility to offer internet services to occupants at no extra cost, other than a suitable central internet account to cope with the permitted traffic. In such a way it is also possible to provide a limited internet service, only allowing access to certain sites, including the user interface hosted on the unit itself.
Other Potential Uses
Limited WiFi may have extra value in healthcare, where the permanent availability of a WiFi connection gives patients a direct link to heath providers. Think along the lines of "Alexa, emergency". The free MQTT apps available give additional one-button access to this link, and offer a way to easily set up a mechanism to message different people in different ways until a response is received.
With Node-HIUs having relay function, as well as an audio output, it is possible to provide audible and visual alarms when help is required.
We should add that where such systems are relied on for welfare, redundancy should be built in, with separate units providing backup services, as well as monitoring services to check nodes are online. WiFi zones can overlap to provide hot-spot redundancy, ethernet switches can be ring redundant, there can be multiple MQTT servers, and the central internet connection can have fallback GSM with two SIM cards for extra backup.
Plugging a GSM module directly into each Raspberry Pi opens up yet another means of communication.
Node-RED + PIR Sensor + Webcam = An alarm system.
Node-RED + PIR Sensor + SLIM Heat Interface Unit = Hot water supplies that warm themselves up as soon as someone enters.
This is an open source project, both in hardware and software. To get going you will typically need around £90 of kit. Doing it yourself is cheaper and the best way to learn. If you prefer the easy option then pick from our pre-commissioned systems above.
- A Raspberry Pi 3
- A casing for the Pi
- Power supply
- SD Card
- RS485 FTDI cable, to connect to HIU. Please call us if you need assistance selecting an appropriate model of HIU.
- Ethernet cable
The Zero is also an option, costing even less at around £30 + FTDI cable.
The FTDI cable requires some termination as only two of the wires are used. Modified cables, or the complete set of parts, can be bought directly from Thermal Integration.
Software installation is fairly straightforward with a basic knowledge of Linux. Alternatively, if buying a pack (or SD Card) from ourselves all the software will be setup to the latest versions.
If you would like to become an author on this site, and help develop examples and documentation, please contact firstname.lastname@example.org