Skip to content

Homebridge plugin to control blinds via Raspberry Pi GPIO pins.

License

Notifications You must be signed in to change notification settings

rsporny/homebridge-gpio-blinds

Repository files navigation

Homebridge GPIO Blinds

Homebridge plugin to control blinds via Raspberry Pi GPIO pins.

Motivation

I've got 16 windows with blinds in my house. Controlling them manually would be simply annoying. See how it works -> https://youtu.be/jc-fZn0_fBA

Installation

  1. install homebridge npm install -g homebridge
  2. install this plugin npm install -g homebridge-gpio-blinds
  3. update your ~/.homebridge/config.json file (use sample-config.json as a reference)

Configuration

Sample accessory:

"accessories": [
  {
    "accessory": "Blinds",
    "name": "Garage",
    "pinUp": 5,
    "pinDown": 11,
    "durationUp": 13000,
    "durationDown": 13000,
    "durationOffset": 1000,
    "pinClosed": 17,
    "pinOpen": 18,
    "activeLow": false,
    "reedSwitchActiveLow": false
  }
]

Fields:

  • accessory must always be Blinds
  • name room with blinds, e.g. Garage
  • pinUp pin for moving up (use gpio numbering, not physical)
  • pinDown pin for moving down
  • durationUp milliseconds to open blinds completely
  • durationDown milliseconds to close blinds completely
  • durationOffset [optional, default: 0] milliseconds added to durationUp and durationDown to make sure that blinds are completely open or closed
  • pinClosed [optional] pin connected to reed switch which is active when blind is closed, see reedActiveLow
  • pinOpen [optional] pin connected to reed switch which is active when blind is open, see reedActiveLow
  • activeLow [optional, default: true] true: relay activated by low state (0), false: relay activated by high state (1), affects pinUp, pinDown
  • reedSwitchActiveLow [optional, default: true] true: reed switch activated by low state (0), false: reed switch activated by high state (1), affects pinClosed, pinOpen

Raspberry Pi setup

  • Raspberry Pi 3 (should work with all versions)
  • GPIO expander - because I have more blinds than pins on raspberry pi (each blind takes 2 pins - singal up and down)
  • Relay module
  • Power supply for relay module
  • Some wires

Troubleshooting

  • check platform: Homebridge
  • check plugin dependency: rpio
  • or create issue