# \[APP\]\[Pro\] Device Capabilities - Enhance the capabilities of devices

**URL:** <https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287>\
**Category:** Apps\
**Tags:** flow, virtual-device, homey-pro, device-capabilities, avd\
**Created:** [February 19, 2021, 8:20am UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287 "2021-02-19T08:20:51Z")\
**Posts on this page:** 20\
**Page:** 75

<div class="post-metadata">

**Author:** ![Sharkys](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sharkys/32/54029_2.png) [@Sharkys](https://community.homey.app/u/Sharkys)\
**Post date:** [July 20, 2023, 12:35pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1509 "2023-07-20T12:35:27Z")

</div>

You can try with this one…

> [@A script to check sensor last update](https://community.homey.app/t/a-script-to-check-sensor-last-update/63142/25):
>
> Updated script I posted above - added counter of non responding devices - eg, in case you would like to initiate some action based on number of not-responding devices - please note this is the version I’m using, so feel free to change relevant variables below the section // Filter devices to check Changelog : 0.1 - update - converting notReportingCount to a number - if you used previous version of script, delete tag by await tag(‘notReportingCount’, null);\* 0.2 - added filtering based on dev…

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [July 20, 2023, 2:09pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1510 "2023-07-20T14:09:15Z")

</div>

Yeah I’ve adjusted it today with a variant of the script @Sharkys posted.  
The TEF is also updated.

> [@The Flow Exchange(r) - Exchange Your Flows with Others!](https://community.homey.app/t/the-flow-exchange-r-exchange-your-flows-with-others/68981/13):
>
> Sensor (or any device) Connection Check. Sometimes, you’ll discover a sensor or other device doesn’t report it’s status or value anymore, but it does NOT notify you of being offline… Well, this flow checks the, most recent update time of your sensors. You can run the flow every day, twice a day, just add or remove a time triggercard. The ‘inactive time’ can be edited as well (24hrs as default) and you can choose to not send notifications when all sensors did report inside the ‘inactive time…

---

<div class="post-metadata">

**Author:** ![Arjan-21](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/arjan-21/32/27181_2.png) [@Arjan-21](https://community.homey.app/u/Arjan-21)\
**Post date:** [July 20, 2023, 5:04pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1511 "2023-07-20T17:04:35Z")

</div>

Thanks!

---

<div class="post-metadata">

**Author:** ![t\_F](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/t_f/32/12457_2.png) [@t\_F](https://community.homey.app/u/t_F)\
**Post date:** [July 21, 2023, 9:47am UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1512 "2023-07-21T09:47:21Z")

</div>

Still fiddling around with my flows and AVD’s trying to ease system load.

Off course there are many roads that lead to Rome and for me it’s not always obvious which option comes with the least load, if there is any difference at all.

For example, is there any difference in how following scenario would play out?

‘regular’ sensor changes number capability \> use **Listen (watch) Card** to get the new value \> do some BLL-calculation within a flow card \> store the altered value in a BLL-variable \> use reflection to **load the BLL-variable** in an AVD

_or_

‘regular’ sensor changes number capability \> use reflection to **load the device-value** in an AVD and alter it directly within the AVD with some BLL-calculation

Are there any **fundamental technical differences** between these two options? Will one of the two options result in **significant higher system stress** (adding up whenever the specific action will occur a lot of times)?

On a more practical level there are quite a few differences. For example, the latter does not require any flows making it somewhat leaner. On the other hand , the first stores a BLL-var as an intermediate step making it possible to retrieve that value for further processing even if the Device Capability is malfunctioning (though the app is needed to get it updated in above scenario).

---

<div class="post-metadata">

**Author:** ![Arie\_J\_Godschalk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/arie_j_godschalk/32/63027_2.png) [@Arie\_J\_Godschalk](https://community.homey.app/u/Arie_J_Godschalk)\
**Post date:** [July 21, 2023, 10:03am UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1513 "2023-07-21T10:03:15Z")

</div>

> [@t\_F](#):
>
> there any **fundamental technical differences** between these two options? Will one of the two options result in **significant higher system stress**

No, the listen (watch) card is just as “heavy” as reflection.  
However, normal flowcard triggers (from the devices themself) are less heavy, because they do not require an homey-api listener (which is what uses a load of resources).  
I hope to put time in updating to the new homey-api next week, right now i have a holiday with the kids.

---

<div class="post-metadata">

**Author:** ![t\_F](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/t_f/32/12457_2.png) [@t\_F](https://community.homey.app/u/t_F)\
**Post date:** [July 22, 2023, 9:52am UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1514 "2023-07-22T09:52:25Z")

</div>

Thanks for responding! (Even on your vacation.)

Just wondering then, if ‘regular’ device trigger-cards are easier on Homey because they don’t need the homey-api listener, would the use of a flow with a **set** action-card to populate AVD-fields rather than using direct reflections be lighter then? For example, will the second option below use more system resources?

- ‘regular’ sensor changes number capability \> use **Set Card** to store the value in an AVD-field  
_vs_
- ‘regular’ sensor changes number capability \> use **reflection** to load the device-value directly in an AVD-field

How does the homey-api listener actually work when a flow gets executed? Will it get invoked only once (when needed) in a flow (even though multiple cards rely on it)? Or will the earlier example (see below) invoke the api twice, once for each card that rely on it? Resulting in a higher system load.

- ‘regular’ sensor changes number capability \> use **Listen (watch) Card** to get the new value \> do some BLL-calculation within a flow card \> store the altered value in a BLL-variable \> use **reflection** to load the BLL-variable in an AVD

Since apparently it is the homey-api listener that potentially stresses the system, it could be useful to have a list of flow-cards and device-properties that rely on the api as a reference. That way users could estimate and compare themselves the need and cost of using different options to get something done.

Related to above contemplation but somewhat off topic (because on a more general level) I have always been wondering at what point a flow actually begins using considerable amounts of system recourses (relatively speaking). For example;

- Sometimes I have just some isolated _when_-cards (trigger) lying around in different flows. Those could be work in progress, deprecated or random clutter. Without _than_-cards (action) linked to them, nothing gets executed effectively. Should this be avoided nonetheless from a system-load point of view?

- Similarly, when I have a flow with a specific _and_-card (condition) in order to decimate the number of triggers from a particular _when_-card before going to a ‘heavy’ action follow-up, is this good practice? Or _could_ the sheer number of false triggers before the condition is met already stress the system considerably?

- Should these scenarios play out differently when using the **Listen (watch) Card** as a trigger?

Sorry for digging deep in this matter. I am probably making it far too complicated. 🫣 (If my H23 wouldn’t be stressed out so often, I probably wouldn’t care that much.)

In any case, don’t feel obligated to answer during your vacation.

---

<div class="post-metadata">

**Author:** ![Mats\_Johnson](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/mats_johnson/32/56590_2.png) [@Mats\_Johnson](https://community.homey.app/u/Mats_Johnson)\
**Post date:** [July 23, 2023, 2:14pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1515 "2023-07-23T14:14:58Z")

</div>

When using the “When x is greater than for y minutes” card, it does not trigger if the value is specified as a number variable. If I replace the tag with its value, then it triggers.

This version works

 ![Screenshot 2023-07-23 at 16.11.47](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/6/6/66972cbe409b5b8ce05d1c4efffebe5e3eb7a855.png)

---

<div class="post-metadata">

**Author:** ![Mats\_Johnson](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/mats_johnson/32/56590_2.png) [@Mats\_Johnson](https://community.homey.app/u/Mats_Johnson)\
**Post date:** [July 23, 2023, 4:35pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1516 "2023-07-23T16:35:57Z")

</div>

This version does not trigger

 ![Screenshot 2023-07-23 at 18.35.25](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/4/4/44cd2286d6b2da123070798460c240a14d177c3c.jpeg)

---

<div class="post-metadata">

**Author:** ![Arie\_J\_Godschalk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/arie_j_godschalk/32/63027_2.png) [@Arie\_J\_Godschalk](https://community.homey.app/u/Arie_J_Godschalk)\
**Post date:** [July 23, 2023, 4:48pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1517 "2023-07-23T16:48:26Z")

</div>

No, tags cannot be used in this flowcard. I thought i had that written in the info of the card.

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [July 23, 2023, 6:17pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1518 "2023-07-23T18:17:19Z")

</div>

Yups, loud and clear

> ![Screenshot_20230723-201614_Homey](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/f/df36aa16ba257df65f621e5d065dd17373df2065.jpeg)

---

<div class="post-metadata">

**Author:** ![Heula](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/heula/32/31852_2.png) [@Heula](https://community.homey.app/u/Heula)\
**Post date:** [July 24, 2023, 6:49am UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1519 "2023-07-24T06:49:53Z")

</div>

I have created a lot of AVD’s for all kinds of things and the memory use is reallly high for Device Capabilities.  
Around 87 mb after a Homey restart but soon after the restart it is rising to 125 mb and higher.

I see a lot of restarts for the Device Capabilities app according to the red marks on my avd tiles.  
Homey is crashing also and asking me to empty the cache.

 ![Screenshot_20230724_083709_Homey](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/1/e193da56dcf88b4811b8807152256cb83510e414.jpeg)

I hope you can find the time to reduce the memory use for the app. 😉

6befa3b0-6554-442e-89f0-4f054f3013e1

Thanks.

---

<div class="post-metadata">

**Author:** ![Bulletcather](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/bulletcather/32/13738_2.png) [@Bulletcather](https://community.homey.app/u/Bulletcather)\
**Post date:** [July 24, 2023, 5:15pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1520 "2023-07-24T17:15:32Z")

</div>

At this moment i have a MQTT server that pushes messages.  
I made this flow

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/1/c1999985009f0c317d8d75084ede996eb73c7d22.png)

There is difference between the MQTT message that are revieced on the MQTT server then that are displayed on the device. It looks like there is a delay and the delay is become bigger and bigger.  
If i reset the MQTT client app the delay is gone for a few minuts.

---

<div class="post-metadata">

**Author:** ![Sharkys](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sharkys/32/54029_2.png) [@Sharkys](https://community.homey.app/u/Sharkys)\
**Post date:** [July 24, 2023, 6:39pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1521 "2023-07-24T18:39:27Z")

</div>

> [@Bulletcather](#):
>
> If i reset the MQTT client app

So sounds rather as MQTT app issue, or?

---

<div class="post-metadata">

**Author:** ![Bulletcather](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/bulletcather/32/13738_2.png) [@Bulletcather](https://community.homey.app/u/Bulletcather)\
**Post date:** [July 24, 2023, 7:02pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1522 "2023-07-24T19:02:31Z")

</div>

This sound logic. But it worked fine for more than one year. Mqtt cliënt app is not changed and my flow is also not changed.

This app changed a lot and the firmware of the homey 2023 is changed.  
The problem is now 2 weeks i think

---

<div class="post-metadata">

**Author:** ![Arie\_J\_Godschalk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/arie_j_godschalk/32/63027_2.png) [@Arie\_J\_Godschalk](https://community.homey.app/u/Arie_J_Godschalk)\
**Post date:** [July 24, 2023, 8:30pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1523 "2023-07-24T20:30:04Z")

</div>

> [@Bulletcather](#):
>
> It looks like there is a delay and the delay is become bigger and bigger.

Use a logger and see if the delay is also there. If it is, it’s in the mqtt app.

---

<div class="post-metadata">

**Author:** ![JB2K](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jb2k/32/134070_2.png) [@JB2K](https://community.homey.app/u/JB2K)\
**Post date:** [July 24, 2023, 9:34pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1524 "2023-07-24T21:34:42Z")

</div>

Added a new request on bitbucket 😆

A New “Flow And” card:

“And , is for

‌

example:

the shower is on when there is water running and the motion sensor is on but only if the water wasnt running for more then 2 minutes.

When is on

And , is \<10\> for \<2 Minutes\>

Flip the switch.

---

<div class="post-metadata">

**Author:** ![Mats\_Johnson](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/mats_johnson/32/56590_2.png) [@Mats\_Johnson](https://community.homey.app/u/Mats_Johnson)\
**Post date:** [July 25, 2023, 12:58pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1525 "2023-07-25T12:58:26Z")

</div>

Sorry, I don’t know how to open this verbose card editor. In my UI I don’t see this text. I see a tag icon, I can choose a tag and it is displayed correctly. Took me a while to understand why it wouldn’t trigger. Not a huge problem, although being able to use named constants would’ve been useful.  
Anyway, this card simplifies my flows a lot!

---

<div class="post-metadata">

**Author:** ![Arie\_J\_Godschalk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/arie_j_godschalk/32/63027_2.png) [@Arie\_J\_Godschalk](https://community.homey.app/u/Arie_J_Godschalk)\
**Post date:** [July 25, 2023, 2:23pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1526 "2023-07-25T14:23:31Z")

</div>

> [@Mats\_Johnson](#):
>
> Not a huge problem, although being able to use named constants would’ve been useful.

Yeah i know, unfortunately, thats just not possible, because i would then get a token id, not the updating value. So the app would not be able to know what to compare the capability-value with.

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [July 25, 2023, 5:17pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1527 "2023-07-25T17:17:23Z")

</div>

> [@Mats\_Johnson](#):
>
> Sorry, I don’t know how to open this verbose card editor. In my UI I don’t see this text. I see a tag icon, I can choose a tag and it is displayed correctly.

Yeah, the earlier screenshot was from the standard flow editor (mobile Homey app), but in the Adv. flow editor, the same alert really is shown also:

 ![Screenshot_20230725-190606_Chrome](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/a/d/adbf33655c7d9a3433237d34b02042e42eac041b.jpeg)

I don’t know of any other flow UI’s.

> [@Mats\_Johnson](#):
>
> I see a tag icon, I can choose a tag and it is displayed correctly. Took me a while to understand why it wouldn’t trigger.

App creators don’t have the possibility to hide the tag icon (and link).  
While Arie explores the edges of Homey’s possibilities, this is one of the little ‘need to knows’

I’m curious which flow editor UI you use! I was under the impression these ‘helper’ texts, like `Value - No tags!` are not flow GUI specific

---

<div class="post-metadata">

**Author:** ![Arie\_J\_Godschalk](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/arie_j_godschalk/32/63027_2.png) [@Arie\_J\_Godschalk](https://community.homey.app/u/Arie_J_Godschalk)\
**Post date:** [July 29, 2023, 6:48pm UTC](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287/1528 "2023-07-29T18:48:03Z")

</div>

Okay, the update for DC is not done yet, and next week i have holidays.  
I’ll continue in 2 weeks.

[Previous page](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287.md?page=74)

[Next page](https://community.homey.app/t/app-pro-device-capabilities-enhance-the-capabilities-of-devices/43287.md?page=76)
