Review: The eedomus Z-Wave Home Automation Controller
Bon soirs mes petits topinambours! Bienvenue to the Automated Home review of the latest home automation offering from France, the eedomus Z-Wave Controller. These things are Les Fromages Grandes in their native country by all account and Vesternet is now bringing them across the channel. We had a brief opportunity to play with one, and the salient features are presented below.
It should be noted up front that the eedomus box prefers (but does not require) a subscription to the eedomus cloud service, which will set you back 6 EUR a month. For this you will get ‘multi-year data storage’, 30 SMS notification messages a month, and 10GB for your CCTV images. If you opt out of the subscription you don’t get any of that. The box seems to come with 3 months of gratis service, and commendably the ongoing subscription is opt-in rather than opt-out once your freebie runs out.
Regular readers will know that one of my pet peeves with these Euro-boxes is the dreaded continental power plug, usually bundled with a bulky travel adaptor by the retailer. The eedomus makes a good first impression right off the bat – it’s powered by a regular USB adaptor, which they’ve provided and it’s got a UK plug! Magnifique!
As well as controller itself you get an Ethernet cable, a quick-start guide and copious amounts of cardboard.
Plug the box into the power and your LAN (there’s no WiFi) and you’re good to go. You get a couple of USB sockets for expandability and four RJ12 ports for future interfaces or for hooking up your own homebrew equipment (more on this later). The quick-start guide points you towards the website for registration, or you can use the eedomus app which is available for iOS and Android. I opted to use the website, which prompts you for the usual details, verifies your email address, and then tells you that it’s downloading the latest firmware to the controller.
I was expecting it to tell me it when it had finished installing the firmware, but that didn’t happen, so I left it half an hour and rebooted it, which seemed to have the desired effect. Also note that where it says “click on Settings” it means “click on Configuration”. This website is the gateway to all the box’s features and configuration. It’s built on the well-respected ExtJS widget toolkit so should work well in all modern browsers, and they’ve gone to great lengths to make it look a lot like Windows 7, which may or may not be a good thing depending on your predilections.
All this chicanery comes at a cost though, which is that your browser back button no longer works as you’d expect, as is common with these sorts of sites. “Don’t use the back button, use the breadcrumbs” the documentation exhorts stoically, but trust me, this rapidly becomes infuriating. The eedomus’ Gallic heritage is also often visible in the sometimes hilarious translations, and sometimes the translations are entirely missing. Sadly this often seems to be the case with error messages, where the box will berate you in French in angry small red lettering. Google chrome continually prompts to translate the page from French to English, even when no French text is visible on the page. No doubt this is an area which will quickly improve as the UK user-base grows.
While we’re on the subject of websites, I’d like to take a moment to mention the LAN page – that is, the web site you get if you visit the eedomus from your local LAN rather than via the internet. The eedomus tells you the LAN IP address on initial configuration, and as you can see, if you put this in your browser you get a very different view of things. For some reason, you’re now getting an entirely different web page, designed for iPhone screen dimensions. It’s not responsive; you can make the screen as big as you like, the icons will still cling nervously to the left hand edge. More alarmingly, this is a very simple command and control interface. A coffee-table interface, if you will. You’re not going to be doing any device configuring or programming from this bad boy, it’s all done through the eedomus cloud service (which will continue to work even without a subscription, despite what eedomus’ documentation says in places – we have checked this fact comprehensively).
Getting back to the main interface, the welcome screen that greets you has category icons for a very high-level overview, whereas clicking on ‘configuration’ gets you a more useful per-device view. You can see that the box includes a number of ‘virtual’ devices such as temperature, current day, time of day etc (including the frankly baffling ‘tomorrow’ device). This is central to the eedomus way of doing things. All devices conform to the same pattern regardless of how they’re connected, and they can all be controlled and scripted (or accessed via the extremely comprehensive HTTP API) in the same way, after a fashion. Just about everything can trigger an email, SMS or push notification alert too.
You can click on the device icons to modify their parameters and appearance. For sensor type devices you get the ability to choose the display type: a simple icon-based sentinel arrangement, or graphs of historical values (again, subscription only). Bizarrely, the ‘circular gauge’ and ‘linear gauge’ options require Flash, which seems a trifle baroque in these days of HTML5, CSS3, and SVG.
This page is also where you access the ‘add device’ functionality, which offers the usual Z-Wave enrolment and IP camera stuff, but also has the intriguing “add another kind of device” option which leads to a simply vast array of devices that the box is keen to talk to: EnOcean and RFXCOM require additional hardware, but there’s also XPL, uPNP, HTML actuator and device APIs, HTML web page snapshots, GPS, Phillips Hue, Withings smart body analysers, RFID, Karotz and Nabaztag, Freebox (some kind of funky programmable router/wireless AP), Koubachi (for monitoring plants – the leafy kind, not the pipey kind), Netatmo (weather station), Teleinfo (some sort of smart-metering interface), and UPS monitoring.
If that’s not enough for you, you can hook up your own gear to the aforementioned RJ12 jacks and control digital inputs and outputs, measure analogue voltage levels, or do pulse counting. Information on the ports is not easy to find but this page gives you the low down on what’s possible with the wired interfaces. This page also mentions the three clicky buttons on the top of the controller, which otherwise go completely unmentioned, but it looks like you can configure them to do whatever you like (tip: use the ‘digital input’ device type and set the ‘pine’ option to ‘central button’, ‘small bow’, or ‘large bow’). The link above warns that “Long press the center button in seconds starting from the box may cause a food” (according to google translate) which seems like an excellent feature, but sadly this seems not to be the case.
‘Add devices’ also lets you add additional eedomus boxes. As far as I can tell, this serves two purposes: firstly, to expand the number of addressable devices (each box can control 255), and secondly to incorporate any other residences you might have lying around (holiday home, villa in France, Winter Palace etc) into one big system. While we’re on the subject, the eedomus also allows you to create user accounts with fine-grained permissions, it’s in System Configuration -> My Account -> Sub accounts, if you’re interested.
Given the wide variety of devices that can be attached, you’d expect some flexibility in the programming, and the eedomus doesn’t disappoint.
You can set up scheduled actions, which can include device specific macros incorporating delays in seconds, minutes or hours. Or you can randomise the delay times (minutes only), which is a useful feature often overlooked in competing systems. The programming ‘Agenda’ has a pleasant interface which allows you to specify, down to the quarter hour, exactly which bits of your day constitute ‘rised’ (sic), ‘day’, ‘back from work’, ‘evening’, ‘asleep’ and ‘away’, and which days of the week are ‘work day’, ‘day at home’, or ‘holiday day’. There’s even a calendar widget so you can over-ride this on a per date basis (eg those two weeks in the South of France you’ve got planned, or the weekend you’re going to have to work). There’s even the option of importing a .ics calendar file.
Raising the complexity level a notch, there’s a generous selection of canned routines (‘automatic turn on’, ‘lighting on movement’ etc) that you can import into your setup and configure to your liking. The system won’t let you select any actions for which you don’t have the relevant devices. This can be a bit hit and miss: I can’t show you any sreenshots because most of the interesting stuff requires a ‘Lamp’ which it tells me I haven’t got… even though the device display for my Fibaro Dimmer module clearly says it’s a ‘Lamp’ – so still some compatibility issues here.
Lighting simulation is an interesting looking option, one which I’m sadly unable to access, again. Many years ago I had a MisterHouse setup which observed and learned lighting usage patterns and replayed them when we were away, so hopefully this allows something similar. Sadly we didn’t have time to fix the ‘Lamp’ issue or source a different brand of controller.
There’s still more: turn on the ‘expert mode’ (which is in ‘Configuration > My Account’, oddly) and you get access to the “rules engine” – essentially, a way to construct intricate if-then-else ladders of predicates and actions.
They’ve eschewed the current vogue for including an MIT Scratch-like visual programming interface in favour of an old school ‘lots of little boxes, drop-downs and icons’ approach, which is neither good nor bad, in my opinion. Both lack the flexibility of a proper programming language, but then both are easier for non-programmers to get to grips with. Nevertheless, there are an impressive number of variables for you to play with, a good range of operators (‘equal to’, ‘less than’ etc), and the ability to trigger actuators, start or stop macros, snaffle CCTV images, or send notifications via SMS, email, twitter, or push notification. There’s a lot on offer here of which I’ve barely scratched the surface, due to time constraints. There is additional flexibility in the form of ‘scenes’ and ‘states’ (imagine a custom device where you can predefine a number of states, and determine which actions get triggered as the device enters and leaves each state) that looks like it would open up some interesting possibilities.
It seemed odd to me that a box which offers considerable flexibility elsewhere doesn’t allow you to program in a good old fashioned regular scripting language, so I did a bit of digging on the French language forums, and sure enough the eedomus doesn’t disappoint. If you add ‘/script’ to your LAN IP address (yes, the aforementioned hamstrung coffee-table interface), you get the ability to write your own scripts in PHP and upload them to the box. PHP isn’t going to win any language design awards, and there are restrictions like a total file size of 50KB and a limited palette of functions to call, but you can still get a lot done. Full details are here.
There are plenty of aspects of the eedomus that I simply wasn’t able to get to grips with in the time available, like the HTTP API, the external device support, the CCTV camera support, the 3G modem failover, the GPS features, notifications, or the plethora of configurable options around delayed or missing messages, or the intriguing sounding ‘thermal efficiency’ tab. In expert mode there is considerable Z-Wave tweakery on offer, including an interesting looking ‘radio show matrix’ which shows you the Z-Wave device routing and allows you to schedule periodic network optimisations.
It’s not the most polished controller I’ve seen and the user interface can be baffling and infuriating at times. You’ll probably spend a lot of time hunting around the UI muttering “I know I’ve seen an option to do X somewhere…”. The translations or lack thereof can be a bit tiresome, depending on how good your French is. In terms of sheer flexibility though, the eedomus is hard to beat; the ability to directly physically interface your own home-brew hardware without needing expensive Z-Wave ‘universal’ modules and the like is in my opinion a killer feature.
The only potential fly in the ointment here is the extremely limited functionality exposed by the LAN interface, which is due a refresh most urgently.
The ecosystem feels well established with a very great deal of documentation and discussion on the forums. Again much of this is in slightly more advanced French, so Google Translate is your friend here. Above all this is a box that encourages discovery and experimentation, oft-times because it’s not entirely clear what on earth the UI is going on about. It reminds me in many ways of an updated version of the elaborate MisterHouse and HomeSeer lash-ups that we were all fiddling with back in the 2000s, and that’s no bad thing. If you’re in the market for a mid-priced controller with a lot of expansion options, the £235 eedomus has to be a strong contender. It’s a tweakers’ paradise!
Ant Skelton has spent the last 20 years writing embedded software in various startups around Cambridge, UK, specialising in wireless networking and server-side technologies. A keen home-brew electronics enthusiast and prodigious bass guitarist, Ant has been dabbling with Home Automation since 1998. He is most likely to be heard saying “How much?! I’ll build my own!” as the hundreds of half-finished projects in his garage will testify.