Version 0.5.17 is live now.
So everyone can test the vacuum integration now.
Hi, Rob and Bob are doing fine!!
Glad Iâm not the only one who names their minions I have 2 vacuums, Bob & Kevin
New test version 0.6.1:
I added two helper entities:
- Timer
- Schedule
Timer:
You can define a timer helper entity in HA and set a duration.
From Homey you can control this timer using the device buttons (start, pause, stop, finish) or flow cards.
There are device flow events that can be used ro react on timer events (started, finishedâŚ).
You can change the timer duration using the âstart timerâ flow card with a duration amount (time or seconds). Or set the new duration in device settings. This value will be used with the next timer start (button/flow).
The timer remaining time will only change on actions/events because HA doesnât send updates for a running timer.
Scheduler:
Define a schedule plan in HA. This plan will set up time slices where the schedule is âactiveâ (or âonâ).
The Homey device will change its alarm state if the schedule event starts or ends. You can use these events as flow trigger to switch devices on or off based on the schedule.
I think I found a bug for the vacuum cleaner because my house is not cleaned for serveral days now⌠There is dust on the floor everywhere!
And as soon as I checked the app of my vacuum cleaner, I saw it did not cleaned for 5 days now while it normally does that every day.
I thought, something is wrong in my flows, but they are all correct.
So I tried some things to replicate the bugâŚ
It seems that the AND cards are not working. Strange thing is that this is working when I test the flow manually.
Here an example; In this case the light is turning on or off, but the vacuum doesnt start cleaning. But when I start the flow manually it worksâŚ
Any idea?
Hi @Marcel_Visser
thanks for reporting. I changed the condition checks in the new test version 0.6.2. Please report if itâs working now.
Hi @JB2K
I changed the way of changign timer duration. The text value is removed. Instead there are hours, minutes and seconds as flow argument or device settings. I hope itâs easier now to set the target duration.
Itâs working fine now! Thanks for the quick fix!
New test version 0.7.0
Minimum Firmware required: 8.1.0
Here comes the long awaitet update of the pairing dialog
New features:
- Multi selection is possible now (starting with one selected device to prevent accidentially adding of all devices)
- Continue button is disabled if no device is selected
- Enter a search term. The device list is filtered using the search term. All devices are shown where teh saearch term is includes in device name. You will see the amount of yound devices in the selec/deselect all button
- You can select/deselect all devices like in the Athom dialog. Check the amount of devices. Filter the list with a search term is the list is too long (especially for sensor pairing)
- If you select more the one device, you can still choose a custom icon. If a custom icon is selected, the image file is assigned for all devices as independent copy. So you can change the icon for one device afterwards without affecting other devices.
Firmware requirements
The pairing dialog uses the new Athom view added with firmware 8.1.0. The used elements and CSS styles require at least firmware 8.1.0.
If your Homey is running a lower firmware version, you wonât be able to update the app. Please upgrade your Homey to the current firmware.
Some examples:
Start the pairing (some test buttons ):
First device is selected. âSelect allâ button shows the amount of selectable devices. Then select multiple devices:
Search for devices (red mark). The Select all button is showing the current amount of found devices (green mark).
The âButton 3â keeps selected. All previously selected devices which are filtered out now got deselected. Deselect all devices will gray out the Continue button.
The new pairing dialog is based on the html/js code from Athoms dialog. The Atom code is copied and extended with the needed functionality, especially the search function which will be very helpful for very long sensor lists.
Many thanks to Harwin from Athom who gave me a lot of technical support to implement the view
Very very nice, m8! Youâve reached is a new Homey level for the user interface, and user friendlyness, and⌠time saving!
If in the selected device category no device listed at all, the Continue button is blue and it works. So when I push the button the next screen appears and itâs possible to choose an icon.
Is that the way it is supposed to be?
No, it shouldnât. Thanks for reporting.
There is a special check for this condition where I have to hide the button. Iâll fix it tomorrow.
The duplicated button in pairing dialog (in case of no decvices found) should be fixed with test version 0.7.1.
@DirkG: It woul be nice if could check again
Works perfect!
Thx
Push app to stable version 1.0.0 (no changes since 0.7.1).
New test version 1.0.1:
-
Flow action added for lights to set a relative light temperature (+ or - a percentage value).
-
Added possibility to use deep JSON paths in Compound definition.
Example: a weather entity with an array of forecast attributes:
This entity has an attribute âforecastâ of type array. You can access the lines using the index (starting with 0).
weather:
name: Wetter
capabilities:
measure_temperature.current: weather.dwd_weather_mainz_zdf.temperature
measure_temperature.0d: weather.dwd_weather_mainz_zdf.forecast[0].temperature
measure_temperature.1d: weather.dwd_weather_mainz_zdf.forecast[1].temperature
measure_temperature.2d: weather.dwd_weather_mainz_zdf.forecast[2].temperature
capabilitiesTitles:
measure_temperature.current: "Temp. aktuell"
measure_temperature.0d: "Temp. Vorh."
measure_temperature.1d: "Temp. Vorh. +1d"
measure_temperature.2d: "Temp. Vorh. +2d"
New test version 1.0.2:
- Fix for Compound update issue for entity states.
- Added app flow trigger for HA events.
- Changed pairing view to start without a selected device
Please take a look on the apps memory usage, as there are many events the app could process a flow trigger for. Please report if you see an high memory usage or rapid increase.
You can start flows depending on an HA event (filtered by event or entity).
The events canât be provided as selection list, so you have to check what events are triggered by your entities. Or make a short trace with this flow:
Events, which are already processed by the app (entity update, started scrips/automations, timers) are not available here because that would cause a massive load and memory usage to process all updates.
New test version 1.0.3:
-
New filter fields are added to the app flow trigger âEvent has been triggeredâ.
Use these fields to filter the eventy by up to three field from the data JSON object. Example:
Hue event:
Log the events with filter âhue_eventâ to the HomeyLog. Copy the field names and values:
Then input the values into the flow card:
This way you can react with this card on a single events (and type) of a single device.
This example reacts on the first click (initial_press) on the 1st button (subtype) of a Hue DimSwitch control (unique_id). -
Possibility to update Homey devices (capabilities) on changes on HA side.
This can be used to update the capabilities of a Homey device without deleting/re-adding it (and breaking flows). This is useful if a light buld is changed (white->color) using the same HA entity. Update the the device in Homey to add the color capabilities.
Another use case is updating a compound device in HA (new capabilities, changed conversionsâŚ). Update the Homey device to import the new changes to your Homey device.
This functionality can be found in the repair view of your Homey device:
This update will remove all existing capabilities from the device and re-adds them depending on the current HA entity. So if capabilities are removed on HA side, they get removed in Homey, too.
Hi Ronny,
The âUpdate capabilitiesâ works great up 'til now.
Something else, I try to add a compound with PIR sensor values.
The state values are on / off, but the device in Homey doesnât âseeâ the motion alarm.
How can I translate it to true / false?
pir_hal_sensor:
name: pir Hal (HA)
#icon: mdi:account
icon: alarm_motion
capabilities:
alarm_motion: binary_sensor.pir_hal_iaszone
Iâve tried this
alarm_motion:
from: (state) => { "on"; }
to: (value) => { true; }
and this
alarm_motion:
{%- if is_state("binary_sensor.pir_hal_iaszone", "on") -%}
true
{%- else -%}
false
{%- endif -%}
Hi Peter,
I assume, the state attribute of your sensor has values like âonâ or âoffâ, right?
For these states you donât need a conversion. Just use the capabilities without capabilitiesConverters
like:
pir_hal_sensor:
name: pir Hal (HA)
icon: alarm_motion
capabilities:
alarm_motion: binary_sensor.pir_hal_iaszone
If you want to add a converter, it must return a value.
capabilitiesConverters:
measure_numeric:
from: (state) => { return Math.round(state*100) / 100; }
The âstateâ is the entity attribute in this case. The function returns the calculated value.
PS:
If the used entity attribute is a real boolean value (true/false) I think I have to add an additional check to the capability conversion. Now it allows 'on//âoffâ as values as thatâs the default for entity states. So if you want to use another attribute than state than has bool values, I think it wonât work. So please check what values your entity has (in HAs developer view).
Thanks Ronny,
In short: it now works, no clue why. Iâve only added some capabilities to the homey.yaml pir_hal_sensor:
entry, and removed them later on.
Long version:
Yes, state values are âonâ and âoffâ
It did not respond without a conversion, and all other sensor values were updated correctly (device temp, illuminance, battery etc).
(Note: When I add the same sensor to Homey as new device, type âsensorâ, that one works fine.)
So, I added all capabilities and in different types, to see what is going on, and to my surprise, the motion alarm started to work.
pir_hal_sensor:
name: pir Hal (HA)
icon: alarm_motion
capabilities:
alarm_motion: binary_sensor.pir_hal_iaszone
alarm_generic.iaszone: binary_sensor.pir_hal_iaszone
measure_generic.iaszone: binary_sensor.pir_hal_iaszone
alarm_generic.occupancy: binary_sensor.pir_hal_occupancy
measure_generic.occupancy: binary_sensor.pir_hal_occupancy
measure_luminance: sensor.pir_hal_illuminance
measure_temperature: sensor.pir_hal_temperature
measure_numeric.rssi: sensor.pir_hal_rssi
measure_battery: sensor.pir_hal_battery
capabilitiesTitles:
alarm_motion: "Motion"
alarm_generic.iaszone: "iaszone (motion) alarm"
measure_generic.iaszone: "iaszone (motion)"
alarm_generic.occupancy: "occupancy alarm"
measure_generic.occupancy: "Occupancy"
measure_temperature: "Device Temp."
measure_numeric.rssi: "RSSI"
measure_battery: "Battery"
Then, I brought the file back again to only one line:
pir_hal_sensor:
name: pir Hal (HA)
icon: alarm_motion
capabilities:
alarm_motion: binary_sensor.pir_hal_iaszone
and now that also works.
Iâm confused. Iâm happy it works, but not knowing why it didnât work at first is a bit annoying. Iâm going to add another PIR and see how that goes.
~Peter