Skip to main content

A remote control client for Ubiquiti's mFi system

Project description

https://travis-ci.org/kk7ds/mficlient.svg?branch=master

The APIs in this library (and tool) should not be considered stable!

To install:

$ pip install mficlient

To get started, set your connection information like this:

$ export MFI="https://user:password@192.168.1.123:6443"

Then you can run the client, doing something like:

$ mfi dump_sensors
               Model |                Label |        Tag  |      Value | Extra
-------------------------------------------------------------------------------
          Output 12v |        Relay Control |     output  |          0 | 0.0
          Output 24v |                Relay |     output  |          0 | 0.0
    Ubiquiti mFi-THS |                 Temp | temperature |       14.3 | None
       Input Digital |          Garage Door |      input  |          1 | None
              Outlet |       Heater Control | active_pwr  |   5.810242 | 1.0
     Ubiquiti mFi-CS |              Furnace |       amps  |     1.0539 | None
     Ubiquiti mFi-CS |         Water Heater |       amps  |        0.0 | None

$ mfi control_device --device 'Heater Control' --state on

Client API example:

>>> c = mficlient.MFiClient('192.168.1.123', 'admin', 'password')
>>> p = c.get_port(label='Water Heater Control')
>>> p.model
'Outlet'
>>> p.value
5.746462
>>> p.tag
'active_pwr'
>>> p.data
{'rpt_time': 1456258144771, 'mac': 'redacted', 'locked': False, 'label': 'Water Heater Control', 'wattHours': 8001.875, 'y': 222.18320610687024, 'map_id': 'redacted', 'output': 1.0, 'fovrotation': 0, 'active_pwr': 5.746462, 'pf': 0.678653, 'reported_val': 1.0, '_id': 'redacted', 'i_rms': 0.069931, 'fovradius': 10, 'v_rms': 121.082737, 'val_time': 1456258144000, 'port': '1', 'energy_sum': 8001.875, 'wattHoursBase': 0.0, 'tag': 'active_pwr', 'val': 5.746462, 'wh_rpt_time': 1456258144761, 'model': 'Outlet', 'x': 564.8839694656489, 'fovangle': 1.5707963267948966, 'output_val': 1.0}
 >>> p.control(False)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for mficlient, version 0.3.0
Filename, size File type Python version Upload date Hashes
Filename, size mficlient-0.3.0.tar.gz (8.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page