peribeir / homeassistant-rademacher

This custom integration provides access to Rademacher Devices connected to a HomePilot (or Start2Smart) bridge.
GNU General Public License v3.0
58 stars 11 forks source link

Wishlist: Binary sensor, class update: Homepilot Update Available #11

Closed hklages closed 2 years ago

hklages commented 2 years ago

Hi - 1.3.2 works fine and I am now replacing my HomePilot scenes rest_command by Home Assistant scenes:

blinds_set_scene:
  url: "http://hkHomepilot.fritz.box/scenes/{{sid}}/actions"
  method: POST
  payload: '{ "request_type": "EXECUTESCENE", "trigger_event": "TRIGGER_SCENE_MANUALLY_EVT" }'

So last open topic is:

For all my systems I monitor "status running", "recent backups done" and whether "updates are available". Is it possible to have the "update available" for the HomePilot 2 in you integration?

Currently I do that with the following sensors: (HomePilot 2 is available at hkHomePilot.fritz.box = 192.168.178.15 - that is discovered by your integration (dhcp discovery))

in file binary sensor

- name:  "SHS Homepilot Update Available"
    state: "{{ state_attr('sensor.homepilot_update_and_version', 'update_status') != 'NO_UPDATE_AVAILABLE' }}"
    device_class: update

in in configuration yaml:

rest:   
# SHS System Health Service: HomePilot get update and version as attributes every day
  - resource_template: "http://hkHomepilot.fritz.box/service/system-update-image/status"
    method: "GET"
    scan_interval: 86400
    sensor: 
      name: "HomePilot Update And Version"
      value_template: "{{ now() }}"
      json_attributes:
      - update_status
      - version
hklages commented 2 years ago

By the way, here is my list of Rademacher commands, compiled from different sources.


http://{{ipHomepilot}}/v4/devices/v4/devices
http://{{ipHomepilot}}/v4/devices?devtype=Sensor
http://{{ipHomepilot}}/v4/devices?devtype=Transmitter
http://{{ipHomepilot}}/v4/devices?devtype=Camera
http://{{ipHomepilot}}/v4/devices?devtype=Actuator
http://{{ipHomepilot}}/v4/devices/10002

http://{{ipHomepilot}}/v4/scenes
http://{{ipHomepilot}}/v4/scenes/5025

http://{{ipHomepilot}}/v4/groups/devicegroups
http://{{ipHomepilot}}/automation

http://{{ipHomepilot}}/service/system/networkmgr/v1/nodename
http://{{ipHomepilot}}/service/system/networkmgr/v1/interfaces
http://{{ipHomepilot}}/service/system/networkmgr/v1/interfaces/wlan0/ip_config
http://{{ipHomepilot}}/service/system/networkmgr/v1/interfaces/eth0/ip_config

http://{{ipHomepilot}}/service/system/leds/status

http://{{ipHomepilot}}/service/system-update-image/version
http://{{ipHomepilot}}/service/system-update-image/status

http://{{ipHomepilot}}/newdevices

http://{{ipHomepilot}}/service/system/twilight
set position:
  url: "http://{{ipHomepilot}}/devices/{{did}}"
  method: PUT
  content_type: "application/json; charset=utf-8"
  payload: '{"name": "GOTO_POS_CMD", "value": {{ (100 - position)|int }} }'

up:
    url: "http://{{ipHomepilot}}/devices/{{did}}"
    method: PUT
    payload: '{"name":"POS_UP_CMD"}'

down:
    url: "http://{{ipHomepilot}}/devices/{{did}}"
    method: PUT
    payload: '{"name":"POS_DOWN_CMD"}'

stop:
    url: "http://{{ipHomepilot}}/devices/{{did}}"
    method: PUT
    payload: '{"name":"STOP_CMD"}'

set scene:
  url: "http://{{ipHomepilot}}/scenes/{{sid}}/actions"
  method: POST
  payload: '{ "request_type": "EXECUTESCENE", "trigger_event": "TRIGGER_SCENE_MANUALLY_EVT" }'

backup - will also start a download so should be don in browser
 url: "http://{{ipHomepilot}}/service/system/backup/actions"
 method: POST
 payload: {"request_type":"STARTBACKUP"}
peribeir commented 2 years ago

Hi @hklages It's a good idea to add some more info about the hub itself. Actually I had already thought abou that.

I personally don't have the Home Pilot hub, I have the smaller Start2Smart, which doesn't have all the functionalities. For instance, I don't have Scenes, Groups and Automations.

For the scenes, maybe it makes sense to add custom services that you can call from within HA.

But I can start on the other info, like the FW Update / Version and others. Which I can actually test myself. I'll keep you posted on that.

Also, thanks for providing the list of API endpoints, I think the /devices part is pretty much covered, at least for the Actuators and Sensors part.

hklages commented 2 years ago

Hi Pedro - thats fine for me.

In my opinion the Start2Smart is the better choice - smaller, cheeper. I now use scenes/automation in Home Assistant and only use the HomePilot hub for teaching in new devices.

By the way: In my installation the sensor do not provide any information/event. According to the operation manual they only work in a specific automation mode - I use manual.

have a nice day, Henning

peribeir commented 2 years ago

Hi @hklages Can you provide me the output of the following endpoint on your HomePilot? /service/system-update-image/version

I'm wondering if hw_platform and sw_platform can provide info of what is the hardward used (HomePilot or Start2Smart). on mine it returns:

{
  "version": "5.4.9",
  "df_stick_version": "2.1",
  "hw_platform": "ampere",
  "sw_platform": "bridge"
}

Meanwhile I'm going to add two new entities, the FWUpdate Sensor, and a Switch for the LEDs.

Thank you.

hklages commented 2 years ago

{"version":"5.4.9","df_stick_version":"0.10","hw_platform":"curie","sw_platform":"homepilot"}

If I remember right, I had to insert this stick into the HomePilot usb