3.9 KiB

layout, title, description, date, sidebar, comments, sharing, footer, logo, ha_category, ha_release, ha_iot_class
layout title description date sidebar comments sharing footer logo ha_category ha_release ha_iot_class
page Axis Instructions on how to setup devices from Axis Communications within Home Assistant. 2017-04-30 23:04 true false true true axis.png Hub 0.45 Local Polling

Axis Communications devices are surveillance cameras and other security-related network connected hardware. Sensor API works with firmware 5.50 and newer.

Home Assistant will automatically discover their presence on your network.

{% linkable_title Dependencies %}

$ sudo apt-get install python3-gi gir1.2-gstreamer-1.0

Depending on how you run Home Assistant, you may need to symlink the gi module into your environment.

Hassbian:

$ ln -s /usr/lib/python3/dist-packages/gi /srv/homeassistant/lib/python3.4/site-packages

Raspberry Pi All-In-One Installer:

$ ln -s /usr/lib/python3/dist-packages/gi /srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages

You can also manually configure your devices by adding the following lines to your configuration.yaml file:

# Example configuration.yaml entry
axis:
  m1065lw:
    host: IP ADDRESS
    include:
      - camera

Configuration variables:

{% linkable_title Configuration variables %}

  • device (Required): Unique name
  • host (Required): The IP address to your Axis device.
  • username (Optional): The username to your Axis device. Default 'root'.
  • password (Optional): The password to your Axis device. Default 'pass'.
  • trigger_time (Optional): Minimum time (in seconds) a sensor should keep its positive value. Default 0.
  • location (Optional): Physical location of your Axis device. Default not set.
  • include (Required): This cannot be empty else there would be no use adding the device at all.
    • camera: Stream MJPEG video to Home Assistant.
    • motion: The built-in motion detection in Axis cameras.
    • vmd3: ACAP Motion Detection app which has better algorithms for motion detection.
    • pir: PIR sensor that can trigger on a motion.
    • sound: Sound detector.
    • daynight: Certain cameras have day/night mode if they have built-in IR lights.
    • tampering: Signals when camera believes that it has been tampered with.
    • input: Trigger on whatever you have connected to device input port.

A full configuration example could look like this:

# Example configuration.yaml entry
axis:
  m1065lw:
    host: IP ADDRESS
    username: USERNAME
    password: PASSWORD
    include:
      - camera
      - motion
      - pir
      - sound
      - daynight
    trigger_time: 0
    location: köket

If you are using Python 3.6, you might need to replace the 34m with 36m in the _gi.*.so filename in the gi folder.

Any specific levels for triggers needs to be configured on the device.

It is recommended that you create a user on your Axis device specifically for Home Assistant. For all current functionality, it is enough to create a user belonging to user group viewer.

{% linkable_title Device services %}

Available services: vapix_call.

{% linkable_title Service axis/vapix_call %}

Send a command using Vapix. For details please read the API specifications.

Service data attribute Optional Description
name no Name of device to communicate with.
param no What parameter to operate on.
cgi yes Which cgi to call on the device. Default is param.cgi.
action yes What type of call. Default is update.

Response to call can be subscribed to on event vapix_call_response