Get control of DIY home automation

Home automation is the residential extension of building automation. The global home automation system market is expected to reach over 78 Billion by 2022 (source). It involves the control and automation of lighting, heating (such as smart thermostats), ventilation, air conditioning, and security, as well as home appliances such as washer/dryers, ovens or refrigerators/freezers. In DIY version of home automation people build the system often from ready-made components, which are both open source/hardware and proprietary. Open source and do-it-yourself (DIY) culture are close to our hearts in apinf.io. DIY home automation is also rising topic among open source community members.

Part of our outreach and contribution to commons

APIOps community is our primary larger open source community, which we support, but we are open towards other communities as well keeping in mind that our resources are limited. We have selected (DIY) home automation as one of the sidetracks to explore what we could offer for the community. Naturally our viewpoint is API management. For this experiment we have decided to use RaspberryPi and Docker. Contributions are welcome.

For this experiment we have decided to use RaspberryPi and Docker. Contributions are welcome.

Why should I have API management?

It enables secure and controlled data exposure. For example you might want to allow security company access your motion sensor data. It gives you realtime overview what exactly is going on in your home automation. It can enable easier monitoring of your devices. For example API management platform can inform you about low battery level in sensor devices. In addition, API management helps you identify bottlenecks in your system. API management adds another easy to use security layer.

First step has been taken

First milestone has been achieved and apinf.io platform can be installed in few minutes to ARM based RaspberryPi3. It is the HQ of API management. We’ve chosen Docker driven path because our normal deployment is based on containers and because it makes installation simple. Initial instructions to install apinf platform to RPI3 can be found from Github.

Next step is to solve a few issues with REST API proxy, which actually handles traditional REST traffic. After that we’ll probably add MQTT broker as another proxy for the sake of testing. That should give us enough leverage for practical testing. Obviously, it is up to you what kind of proxies you’ll install since it depends on use case. Since APInf supports use of multiple proxies, we intend to extend the options to include other protocols.

Finally, we’ll build at least one simple example of DIY home automation which utilizes APInf platform (for that we would love to see contributions). You can always join us in this journey, which is exploration in the frontier. The result might become something described below.

The final step is to make all the above simple to install and write excellent documentation. We will maintain the ARM Docker image and related instructions. What happens after that, is up to the community. One possible direction forward is to mix APInf with open source Home Assistant platform or with openHAB platfrom.

Join the crew

As it was mentioned previously, this is APIOps community effort in which we contribute. Source code and scripts (APIOps repository) are open source (EUPL). If you prefer to use API management in common x86 architecture, you can always deploy it from prebuild Dockers. If you just want to see apinf platform in action, go to apinf.io.