Belkin WeMo and Ubiquiti mFi Home Automation Platforms Reviewby Ganesh T S on April 27, 2015 8:00 AM EST
mFi Controller Setup, Usage and Open APIs
The mFi product family has multiple members. All of them are capable of stand-alone operation. However, in order to present a unified interface to all the members in a particular network and also to implement the rules and scenes where one member can alter the state of another, we have a mFi controller instance running on a PC or supported embedded platform.
In order to configure the device, a PC or a mobile device is made to connect to its Wi-Fi SSID (a unique one for each device that appears when it has not been set up to connect to another SSID).
The details of the network to which it will connect to is configured, after which it can get an address via DHCP. Each device runs a web server and can be accessed for further configuration by logging into it with the default username / password combination - ubnt / ubnt.
The setup process of the InWall Light Switch and Dimmer as well as the InWall Outlet is similar to the one described in our initial mPower review. The gallery below shows how the InWall Light Switch and Dimmer was configured. By default, the device comes up in the switch mode (suitable for lights and also other devices - up to 120V @ 15 A). Altering the unit to the dimmer mode reduces the maximum load rating (to 120V @ 5A). We can also see how altering the dimming slider affects the power consumption of the lights.
The latest firmware allows many standalone operation options such as scheduling, vacation mode, port mirroring (keeping states of the outlets in sync) and automatic power shutoff (with minimums for voltage and maximums for voltage and current).
The adoption of the controller is a feature we didn't discuss in our earlier review. The mFi controller software is available for many platforms. Even the Raspberry Pi can be used. In our setup, we chose to install the software on Ubuntu.
We already have the QNAP TS-853Pro in long term testing and decided to install Ubuntu in a VM using the Virtualization Station package. Following the steps given in the Ubiquiti forums, we were able to get our mFi controller up and running in a VM on the QNAP NAS.
The controller can be used to set up rules and scenes as well as control the member devices, as shown in the gallery below.
The prevalence of smartphones and tablets have made mobile apps an indispensable part of any automation ecosystem (in both residential and business settings). Only recently has there been renewed interest in this area from Ubiquiti Networks. The officially-sanctioned Android app is still in beta, but delivers basic functionality for the mPower and InWall devices. The mPort devices are not supported yet.
However, the controller also has a mobile interface accessible at: https://<IP>:6443/mobile for comprehensive access to the system. A shortcut to the URL on the home screen of the mobile device can act as a very good substitute for a mobile app.
The interface allows control, viewing of instantaneous power consumption, rules and scenes.
All mFi devices run a Linux kernel. SSH access is available. HTTP APIs are well documented. Note that the availability of WebSockets allows for event-driven reactions and avoids the overhead caused by polling when trying to integrate mFi devices into other automation systems. Password protection provides security. As long as one's Wi-Fi network is secure, there is no security risk - mFi doesn't need any ports to be made open to the Internet. The security aspect is easily understood even by novice users.
That brings us to the only downside (in addition to the requirement of a standalone PC or embedded platform capable of running the mFi controller) - there is no way to access the controller and/or devices from an external network. This is easily solved by port forwarding. For a more secure solution, a VPN is preferable.