/ekey_home_rs485

ekey home converter LAN rs485 HomeAssistant integration

Primary LanguagePython

ekey home converter LAN rs485 HomeAssistant integration

This integration can only read the data from the so called home-protocol. When using the home-protocol the ekey home rs485 sends packets as a underscore delimited string.

home-protocol packet details:

1       _ 0046    _ 4         _ 80156809150025 _ 1      _ 2
^         ^         ^           ^                ^        ^
PAKETTYP  USER ID   FINGER ID   SERIENNR FS      AKTION   RELAIS

For details see ekey home rs 485 manual

Install

  • Download the zip file and extract it
  • Rename the folder to ekey_home_rs485
  • Move the folder to HomeAssistant config/custom_components/

⚠️ Important!

  • Ensure you configured the "Sender Port" and "Receiver IP address" correctly and the "Protocol type" is set to "home" in the "ekey home converter LAN config" Windows app.
  • Ensure other integrations do not already use the configured IP_ADDRESS:PORT combination, E.g. NodeRed might do this. So you have to configure a different port!

Configuration

This custom integration will add the platform ekey_home_rs485.

sensor:
  - platform: ekey_home_rs485
    ip_address: <ekey rs485 ip address>
    port: 56000 # Default port
    user_mapping:
      - ekey_user_id: 46 # The ekey user id without the leading zero(s)
        ha_username: david # HomeAssistant username/login for mapping
      - ekey_user_id: 47
        ha_username: maria

Todo

  • Fire an event when data changes. Trigger event even though the same finger was used.
  • Add config flow
  • Attach the sensor state to the user entity?!
  • [-] Autodiscovery would be nice, swipe on device let HA know that there is some sort of fingerprint device available?! Nah, this will not work.