Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

homebridge-freeathome-local

superyaro82MIT3.0.5TypeScript support: included

Platform Plugin to manage free@home accessories via HomeBridge using local API

homebridge-plugin, buschjaeger, busch-jaeger, free@home, freeathome, category-climate, category-lighting, category-video, category-security, category-media, hoobs-plugin, hoobs

readme

homebridge-freeathome-local

Homebridge platform plugin for free@home SmartHome devices.

npm npm GitHub issues GitHub pull requests

HomeKit UI

IMPORTANT: From v3.0.6 the Cloud API will not be supportet anymore! The cloud based code will be removed in a future release.

IMPORTANT: If you upgrade from < 2.0.0 please read the Upgrade Notes carefully before installing this plugin.

Features

  • Running on a local REST API
  • Control your Busch-Jäger Lights, Outlets, Blinds and more with Apple devices with Homekit
  • Setup automations with the HomeKit UI
  • Ask Siri to control your devices
  • Automatic reconnect to the SysAP

Supported accessories

  • Binary Sensors
  • Outlets
  • Lights
  • Dimmable Lights
  • Thermostats
  • Door Locks
  • Media Players (Sonos)
  • Smoke Sensors
  • Blinds / Shutters
  • Window Contact Sensors
  • Motion Sensors

Custom Actuators

  • A switch actuator can be exposed as a (video) DoorBell.
  • A switch actuator can be exposed as a Garage Door.

Requirements

  • free@home Access Point
  • A linux-based server on your home network that runs 24/7 like a Raspberry Pi.

Setup / Installation

  1. Install Homebridge
  2. npm install homebridge-freeathome
  3. Edit config.json and configure platform. See Configuration section.
  4. Start Homebridge
  5. Star the repository ;)

Configuration

You can configure the plugin in Homebridge Config UI X now: HomeKit UI Caveats: the mapping for blacklisted actuators doesn't work yet, since Homebridge Config UI X demands a different json structure.

Of course you can configure the Plugin still raw in the config.json:

{
    "platform": "free@home",
    "sysIP": "<IP>",
    "username": "<USERNAME>",
    "password": "<PASSWORD>",
    "isLocalAPI": <true|false>,
    "dimmActorMinValue": <0|100>,
    "mappings": {}
}

Replace <IP> with the IP of your System Access Point.

You can configure the mappings if you want to ignore an actuator or channel if they are not connected/unused to hide them from the HomeKit UI. However this is only needed in rare cases. Usually you can leave this blank.

{
    "platform": "free@home",
    "sysIP": "<IP>",
    "username": "<USERNAME>",
    "password": "<PASSWORD>",
    "isLocalAPI": <true|false>,
    "dimmActorMinValue": <0|100>,
    "mappings": {
        "<ACTUATOR-SERIAL>": {
            "blacklist": ["ch0000", "ch0001"],
        },
        "<ACTUATOR-SERIAL>": {
            "blacklist": ["*"],
        }
    }
}

You can find the actuator serial in the web interface of the free@home SysAp Interface.

Local REST API

You need to activate local API settings in the SysAP settings of the free@home next App: https://developer.eu.mybuildings.abb.com/fah_local/prerequisites/

This feature is NOT available in the web backend!

User/Password will be the same as for the Cloud API, the user "installer" seems to be the most reliable.

In your config.json you need to set "isLocalAPI": true,

That's it, good luck keeping your data at home!

(Video) DoorBell

See the DoorBell Tutorial on how to setup the free@home DoorBell in HomeKit.

Garage Door

See the GarageDoor Tutorial on how to expose a Switch actuator as a GarageDoor accessory.

Limitations

  • The door can not be controlled with HomeKit as the bus is not connected to the SysAp. Already implemented via free@HomeTouch 7 Panel
  • The door camera can not be accessed. You may want to use IP cameras that support the rtsp protocol and use the video door bell.

Notes

  • The accessories can only be controlled when you're at home in your local WiFi network. To manage your accessories remotely you need to setup an iPad/Homepod or Apple TV as a Home Hub.

Tips & Tricks

  • Do not restart Homebridge if you are either updating the SysAp or an actuator as the accessory may be removed from HomeKit if it is not detected during discovery.

Changelog

The changelog can be viewed here.

Upgrade Notes

Upgrade Notes can be found in the CHANGELOG.

Help

If you have any questions or help please open an issue on the GitHub project page.

Contributing

Pull requests are always welcome. If you have a device that is not supported yet please open an issue or open a pull request with your modifications.

License

The project is subject to the MIT license unless otherwise noted. A copy can be found in the root directory of the project LICENSE.

changelog

3.0.5

Features
  • added support for "Window Sensor Accessory 6222/1 AP-64-WL"
  • added wireless thermostat accessory "Heizkörperthermostat Basic 6256/1-WL"

Many thanks to Dennis Nikolas Falk https://github.com/dennis-nikolas-falk for this great contribiution!

Bug Fixes
  • fix for "Window Contact Sensor Sensor/Schaltaktor 8/8-fach 6251/8.8": they not have the window status on the datapoint odp0000 but on the datapoint odp000c. Now the pairingID 53 is searched and the corresponding datapoint is assigned.
Bump Dependencies
  • axios ^0.26.1 → ^0.27.2
  • express ^4.17.3 → ^4.18.1
  • ip ^1.1.5 → ^1.1.8
  • npm ^8.7.0 → ^8.13.2
  • ws ^8.5.0 → ^8.8.0
  • @types/node ^17.0.25 → ^18.0.0
  • @types/pako ^1.0.3 → ^2.0.0
  • typescript ^4.6.3 → ^4.7.4

3.0.4

  • Reconnect Limit setting in config (default 30s)
  • Cleanup unused code

3.0.4-beta.2

  • Destroy existing Socket before Reconnect
  • Debug Logger repaired

3.0.4-beta.1

  • Reconnect Websocket if connection is lost or no broadcast messages will be retrieved in any 30s interval
  • Update npm modules to current versions

3.0.4-beta.0

  • Config setting for TLS or Plain communication (UseTLS)
  • Attic window actuator & Awning actuator added
  • Update npm modules to current versions

3.0.3

  • Config UI fixed

3.0.2

  • Fixed a bug in BuschJaegerDimmAktorAccessory wich stopped the plugin from working
  • New Setting "dimmActorMinValue"
  • Removed useless reading from "Input Datapoints"

3.0.0 (2022-01-11)

  • Ready for SysAP v3.0
  • Homebridge UI config
  • Readme

2.6.1 (2022-01-06)

  • Ping timeout websocket
  • Better logging information on connect
  • Return to old UUID to avoid loosing accessories configuration (like automisation, room assignments or custom nameing) in Home.app

2.6.0 (2022-01-03)

  • Added experimental support for the local REST API (instead of the Jabber Cloud solution)

2.0.3 (2020-08-19)

  • Fix issue which would prevent accessories from reading correct datapoint values

2.0.2 (2020-08-16)

  • Correctly expose motion sensors
  • Add debug option to log requests from/to SysAP
  • Fix contact sensor state inverted

2.0.1 (2020-08-12)

Features
  • Added support for shutters
  • Added support for motion sensors
  • Added support for window contact sensors

2.0.0 (2020-08-11)

Features
  • Use freathome-api as a library
  • Automatically detect accessory type based on functionId
  • Expose Sonos speakers as speaker to HomeKit
  • Added support for smoke sensors
  • automatically detect light bulbs
  • renamed plugin
Upgrade Notes

To upgrade from < 2.0.0 please follow below steps:

  1. Uninstall old Plugin homebridge-buschjaeger
  2. Install the new Plugin homebridge-freeathome
  3. Edit homebridge's config.json:
    1. Change the platform to free@home
    2. Change the SysIP to the IP/Hostname of the System Access Point
    3. Set the username and password previously used for the freeathome-api
    4. Remove the updateInterval option if set
    5. Remove any unnecessary mappings. Unused accessory will automatically be detected
  4. Start Homebridge

Speakers need to be re-added. Just add another accessory and they should show up as Smart Speaker. The freeathome-api can be stopped and uninstalled as it is not needed anymore.

1.7.1 (2020-04-14)

Features
  • Actuator: Added support for:
    • Dimmaktor 4-fach (1022)

1.7.0 (2020-04-13)

Features
  • Actuator: Added support for:
    • Sensor/ Schaltaktor 2/1-fach (100E)
    • Sensor/Dimmaktor 1/1-fach (1017)
    • Sensor/Dimmaktor 2/1-fach (1019)
    • automatically set accessory name based on free@home device layout
Improvements
  • BuschJaegerDimmAktorAccessory:
    • limit minimum brightness based on free@home setting

1.6.0 (2019-07-17)

Features
  • Actuator: Added support for:
    • free@homeTouch 7 (1038) [Door Lock Only]

1.5.5 (2019-04-12)

Improvements
  • If no response has been received from the SysAp within 5 seconds the accessory will show an error within HomeKit and the pending event will be cleaned up. This prevents the HomeKit UI from not responding for up to 1 minute with left over event which eventually may crash homebridge.

1.5.4 (2019-04-01)

Improvements
  • BuschJaegerJalousieAccessory:
    Moving the shutters is now more reliable (than ever) and should not cause the shutters to stop and start when the position is changed multiple times while moving. Additionally position changes should now be exact and reflect the actual window.

1.5.3 (2019-01-25)

Bug Fixes
  • Fixed crash if all channels of an actuator were blacklisted.

1.5.2 (2018-09-18)

Features
  • The thermostat accessory now reports temperature in 0.5 steps for increased accuracy. As this is a non-breaking feature it will included in a patch release.

1.5.1 (2018-09-05)

Bug Fixes
  • Fixed a bug that caused (switch) actuators not to react if they are turned on, on homebridge start

1.5.0 (2018-07-04)

Features
  • Custom Actuator Added support for:
    • Garage Door
Bug Fixes
  • BuschJaegerThermostatAccessory:
    • fixed Thermostat heating to 35 °C / cooling to 7 °C
    • fixed incorrect temperature readout
    • set min value to 7 °C and max to 35 °C
    • enable heating mode before changing target temperature when mode is off
    • fixed incorrect current heating state

1.4.0 (2018-06-26)

Features
  • Custom Actuator Added support for:
    • (Video) Door bell

1.3.0 (2018-06-05)

Features
  • Actuator Added support for:
    • Sensor/ Schaltaktor 2/2-fach (1010)

1.2.0 (2018-04-16)

Features
  • Actuator: Added support for:
    • Sensor/ Schaltaktor 1/1-fach (100C)

1.1.0 (2018-04-01)

Features
  • Actuator: Added support for:
    • Schaltaktor 4-fach, 16A, REG (B002)

1.0.0 (2018-03-28)

Features
  • Actuator: Added support for:
    • Dimmaktor 4-fach (101C)
    • Sensor/ Jalousieaktor 2/1-fach (1015)
    • Sensor/ Jalousieaktor 1/1-fach (1013)
    • Sonos Media Player (0001)
Bug Fixes
  • Accessory: Fix lockup of JalousieAccessory
Improvements
  • API: Make the UI more reactive by listening for websocket events from the SysAp
  • API: Update only once every 60 seconds by default to reduce load
Upgrade Notes

0.0.2 (2018-03-09)

Features
  • Actuator: Added support for:
    • Raumtemperaturregler (1004)
    • Jalousieaktor 4-fach, REG (B001)
    • Sensor/ Schaltaktor 8/8fach, REG (B008)
    • Dimmaktor 4-fach (1021)
  • Configuration: Allow to ignore some actuators/channels
  • Performance: The UI is now more responsive.

Bug Fixes

  • HomeKit: Under some circumstances if the API can not authenticate against the SysAp the plugin will report zero accessories and all accessories are removed from the HomeKit database.
  • API: If the connection to the API is lost Homebridge crashes.

Improvements

  • Documentation: Improved documentation.