IP Cameras, Arduinos, Kodi and Efergy Energy Monitors now supported

Another month has passed and some great new features have landed in Home Assistant. This month release has been made possible by balloob, ettisan, fabaff, gyran, jamespcole, michaelarnauts, miniconfig and rmkraus.

This release includes some architectural changes by me. The first is that the frontend is now based on a NuclearJS JavaScript backend. This has greatly helped to organize and optimize the frontend code. Another change is that Home Assistant will now install dependencies on-demand instead of installing dependencies for all supported devices.

IP Camera Support James has worked very hard to add support for IP cameras to Home Assistant which is included in this release. The initial release focusses on providing generic IP camera support. This means that any webcam that can exposes a JPEG image via a URL can be integrated.

Home Assistant will route the requests to your camera via the server allowing you to expose IP camera’s inside your network via the Home Assistant app.

# Example configuration.yaml entry
camera:
  platform: generic
  name: my sample camera
  username: MY_USERNAME
  password: MY_PASSWORD
  still_image_url: http://194.218.96.92/jpg/image.jpg

To update to the latest version, run scripts/update. Please report any issues on GitHub.

Arduino ![](upload://1wN8z8t9zPJHtEIAnm9DBwNdDVA.png) Fabian has contributed support for interfacing with Arduinos. This makes it possible to connect your Arduino via USB and expose pins as sensor data and write to pins via switches. Have a look at the docs for an extensive guide to get started.

# Example configuration.yaml entry
switch:
  platform: arduino
  pins:
    11:
      name: Fan Office
      type: digital
    12:
      name: Light Desk
      type: digital
sensor:
  platform: arduino
  pins:
    1:
      name: Door switch
      type: analog
    0:
      name: Brightness
      type: analog

Kodi (XBMC) ![](upload://tEec8v81zHCP8DpJI7koQbKA8JB.png) Ettisan has contributed a Kodi (XBMC) platform for the media player component. This allows you to track all the media that you are playing and allow you to control it.

# Example configuration.yaml entry
media_player:
  platform: kodi
  name: Kodi
  url: http://192.168.0.123/jsonrpc
  user: kodi
  password: my_secure_password

TP-Link ![](upload://4oD50DhXujbfPdfJPxRyru8mVsx.png) Michael has added TP-Link support to the device tracker. This allows you to now detect presence if you have a TP-Link router.

# Example configuration.yaml entry
device_tracker:
  platform: tplink
  host: YOUR_ROUTER_IP
  username: YOUR_ADMIN_USERNAME
  password: YOUR_ADMIN_PASSWORD

Efergy energy monitor ![](upload://yJCKclZqjXia2ApV4HfI6TP1Z7n.png) Miniconfig has contributed support for the Efergy energy meters. To get an app token, log in to your efergy account, go to the Settings page, click on App tokens, and click “Add token”.

# Example configuration.yaml entry
sensor:
  platform: efergy
  app_token: APP_TOKEN
  utc_offset: UTC_OFFSET
  monitored_variables:
    - type: instant_readings
    - type: budget
    - type: cost
      period: day
      currency: $

Forecast.io Fabian has added support for Forecast.io to get weather forecasts for Home Assistant. You need an API key which is free but requires a registration. To add Forecast.io to your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
sensor:
  platform: forecast
  api_key: YOUR_APP_KEY
  monitored_conditions:
    - summary
    - precip_type
    - precip_intensity
    - temperature
    - dew_point
    - wind_speed
    - wind_bearing
    - cloud_cover
    - humidity
    - pressure
    - visibility
    - ozone

This is a companion discussion topic for the original entry at https://home-assistant.io/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/