So we decided to build an open development platform that makes the whole experience fun. It uses standard technologies like CoreOS and Docker and runs on your local machine. Here is the Experimental Platform:
Office Air Quality Indicator = Smartlight + CO₂ Sensor
Build a simple air quality indicator using a smartlight that turns from green to red depending on CO₂ levels.
Voice Based Cooking Timer =
Voice Recognition + Speakers
Use Jasper Voice Recognition to create your own Amazon Echo. Start with a simple voice based timer and build it out.
Smart Watchdog =
Smartlock + Webcam
Make your ip-based security cameras turn on whenever you lock your home using a smartlock.
If you aren't already running the Experimental Platform, you will need to set it up. Luckily this is very easy:
Here is our example project: Connect a CO₂ Sensor to a Smartlight and create an Office Air Quality System:
Connect the hardware and find them in the Device Manager
Once you have activated the sensor and smartlight, they will show up in the Device Manager.
Don't worry if you don't have the hardware ready yet, we can skip this step for now and use virtual devices in this example.
Clone the example from github.com.
git clone https://github.com/experimental-platform/example-co2-to-hue.git && cd example-co2-to-hue
Now deploy the app to the platform (e.g. your VM or a local machine):
git remote add platform ssh://email@example.com:8022/example-co2-to-hue
git push platform master
You can find your freshly deployed app under My Apps.
That's it! Your app is now available within your local network and on the internet.
and remotely via
And most important of all: it's not just super simple but the logic and your data stays fully under your control!
Turn it into the real thing
If you'd like to try the example on real hardware order the modules via the links below.
Order the CO₂ Sensor
Order the Smartlight
Order the Mini PC
For more information on how to setup the CO₂ Sensor check out this little tutorial.
Use your favorite technology
Ruby (on Rails)
Use any language you like. Anything that works with heroku buildpacks can be used with the Experimental Platform. The interface to the hardware is http, so connecting to it should work in any common language.
This project wouldn't be possible without the extensive use of other great open source technologies: Docker, Dokku, Node.js, Go and so many more.
Here is a technical overview:
And please remember that this is under heavy development!