home-assistant.io/source/_components/switch.raspihats.markdown
Klaas Schoute 885aae317b Update Raspihats component configuration variable (#6852)
* Update Raspihats component configuration variable

* Update Raspihats component configuration variable

* Minor changes

* Minor changes

* Fix

* Test for build error

* Re-add initial_state

* Test it again

* Remove key

* Remove key
2018-10-17 09:35:09 +02:00

3.5 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 Raspihats Switch Instructions on how to integrate Raspihats add-on boards for Raspberry Pi into Home Assistant as a switch. 2017-05-15 04:20 true false true true raspihats.png DIY 0.45 Local Push

The raspihats switch platform allows you to control the digital outputs of your raspihats boards.

{% linkable_title Configuration %}

To use your raspihats boards in your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
switch:
  - platform: raspihats
    i2c_hats:
      - board: DI6acDQ6rly
        address: 0x60
        channels:
          - index: 0
            name: Fan Office
            invert_logic: true
            initial_state: true
          - index: 1
            name: Light Office

{% configuration %} i2c_hats: description: An array of used I2C-HATs. required: false type: list keys: board: description: The board name. required: true type: string address: description: The board I2C address as HEX value. required: true type: string channels: description: An array of used digital input channels. required: true type: list keys: index: description: The digital input channel index. required: true type: integer name: description: The friendly name to use for the frontend. required: true type: string invert_logic: description: Inverts the input logic. required: false default: false type: boolean initial_state: description: "The initial state, can be either true or false. none means no state is forced on the corresponding digital output when this switch is instantiated." required: false default: None type: boolean {% endconfiguration %}

{% linkable_title Directions for installing smbus support on Raspberry Pi %}

Enable I2c interface with the Raspberry Pi configuration utility:

# pi user environment: Enable i2c interface
$ sudo raspi-config

Select Interfacing options->I2C choose <Yes> and hit Enter, then go to Finish.

Install dependencies for use the smbus-cffi module and enable your homeassistant user to join the i2c group:

# pi user environment: Install i2c dependencies and utilities
$ sudo apt-get install build-essential libi2c-dev i2c-tools python-dev libffi-dev

# pi user environment: Add homeassistant user to the i2c group
$ sudo usermod -a -G i2c homeassistant

{% linkable_title Check the i2c address of the sensor %}

After installing i2c-tools, a new utility is available to scan the addresses of the connected sensors, so you can see the sensor address:

$ /usr/sbin/i2cdetect -y 1

It will output a table like this:

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- 23 -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: 40 -- -- -- -- -- UU -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- 77

For more details about the Raspihats add-on boards for Raspberry Pi, visit raspihats.com.