# \[APP\]\[Pro\] Better Logic Library - For Users

**URL:** <https://community.homey.app/t/app-pro-better-logic-library-for-users/71876>\
**Category:** Apps\
**Tags:** app, tools, homey-pro, logic, bll\
**Created:** [November 7, 2022, 10:13pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876 "2022-11-07T22:13:40Z")\
**Posts on this page:** 18\
**Page:** 13

<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:** [November 16, 2025, 8:51am UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/252 "2025-11-16T08:51:24Z")

</div>

> [@Peter\_Kawa](#):
>
> And when using the expression card for whatever reason, it’ll just needs backticks for this to work.

True, but tbh, single quotes or double quotes should work to afaik.

Anyway, using the expression card for this is kind of a waist for performance. The string is already combined/finished by the default homey way of inputting text with tokens, and running the javascript engine to just return it as string/text is not needed.

I do like that backticks work like this though 🤭

---

<div class="post-metadata">

**Author:** ![Paul\_Nas](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/paul_nas/32/80581_2.png) [@Paul\_Nas](https://community.homey.app/u/Paul_Nas)\
**Post date:** [December 3, 2025, 1:02am UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/253 "2025-12-03T01:02:32Z")

</div>

Hi all, I’m stuck and hope some people much cleverer than me can help.  
I have a FIFO buffer for logging to Google Sheets. Sheets is quite finnicky about rate limiting so I built a rate limiter which feeds my log lines slowly to Google Sheets. This works well although it’s overly complex and I’m trying to simplify. This is where I get stuck. I have a function in BLL:  
`function(s) {`  
`let a = s.split(‘|’);`  
`return {gesplitst:a};`  
`}`  
I then have a card

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/1/c1e19fe57e5d63e7c0caa42d8665c6df32e8c15f.png)  
which takes the input from variable bll.arr.ratelimit.queue:  
`[“Koelkast|02-dec-2025 23:40:07|721.31|35||||||”,“Weer|03-dec-2025 00:00:00|Bewolkt|100|1010|4.8|6.6|88|⇑ ZZO 2|9”,“Verbruik|03-dec-2025 00:00:00|335|31574.116|5806.75|0|0|3||”,“Badkamer|03-dec-2025 00:00:00|45.4|22.5||||||”,“Keuken|03-dec-2025 00:00:00|58|20|2|159||||”,“Natte ruimte|03-dec-2025 00:00:00|45.3|22.5||||||”,“Zolderkamer|03-dec-2025 00:00:00|53.9|21.1||||||”,“Werkkamer|03-dec-2025 00:00:00|47.4|21.4|47.4|21.4||||”,“Energieprijs|03-dec-2025 00:00:05|03-dec-2025|2025-12|0,1|0,34|0,2631|0|0|”,“Hoofdslaapkamer|03-dec-2025 00:00:00|49|20.7||||||”,“Hal|03-dec-2025 00:00:00|50.7|21||||||”,“Tuin|03-dec-2025 00:00:00|24|11|36|0|60|0||”,“Woonkamer|03-dec-2025 00:00:00|17|18.8|6.6|9|0.0050000000001091|||”,“Koelkast|03-dec-2025 00:00:28|721.32|33||||||”]`  
and peels off one item such as `[“Koelkast|02-dec-2025 23:40:07|721.31|35||||||”]` and then feeds the result `{“gesplitst”:[“Koelkast|02-dec-2025 23:40:07|721.31|35||||||]}` to JSON Handler:

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/a/9/a9ee2e3fd0e7d84ced0be02dbf9ce2cc098924c0.png)

This is then ready to be logged to different columns in Google Sheets.

So this all works great, but I want to get rid of the BLL function since it’s hard to maintain, troubleshoot etc. So I’ve been experimenting with HomeyScript cards (but they don’t do objects or JSON as tag, only text/boolean/number, so that won’t work with JSON Handler) and BLL cards _Execute BLL Expression (as tag)_ and _Execute text (as tag)_, but whatever I try, I get identical-looking output but JSON Handler keeps saying  
`Missing token value: action::87796ea1-afd6-45f9-8c29-f71f07a1d6c6::text`

How can I get JSON Handler to play nice?

---

<div class="post-metadata">

**Author:** ![berggeit](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/berggeit/32/121733_2.png) [@berggeit](https://community.homey.app/u/berggeit)\
**Post date:** [January 5, 2026, 3:55pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/254 "2026-01-05T15:55:36Z")

</div>

How do you re-use a BLL-variable? I can set it, but I’ve tried everything I could think of, but I see no way to use one in a calculation. If I have for example VarName than the following don’t work: VarName, “VarName”, $VarName, [VarName], {VarName}, [{VarName}].

See the screenshot for example

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/4/f/4f14e8962424c61b5fdde8e51e4b3fde53e203fa.png)

EDIT: found it, if you press the “tag” icon they can actually be found and added…..

---

<div class="post-metadata">

**Author:** ![Chuck](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/chuck/32/146201_2.png) [@Chuck](https://community.homey.app/u/Chuck)\
**Post date:** [February 2, 2026, 4:21pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/255 "2026-02-02T16:21:34Z")

</div>

How do I save a value from another app (Find Me) to a BLL variable?  
Example: “When distance from Home(y) in mi becomes less than ‘# tracker distance’ (a BLL numeric variable) Then set ‘# tracker distance’ to distance from Home(y) in mi. I then do a “Send ‘# tracker distance’” to my phone.

The value I see in the ‘Send’ notification is 0.

FYI: I’m also posting this in the Find Me thread.

---

<div class="post-metadata">

**Author:** ![SunBeech](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sunbeech/32/111391_2.png) [@SunBeech](https://community.homey.app/u/SunBeech)\
**Post date:** [February 2, 2026, 6:11pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/256 "2026-02-02T18:11:52Z")

</div>

Normally you would use this flowcard:

 ![IMG_2440](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/3/a/3ac92859baa1726c0f1a3a436b30fba367c975f7.jpeg)

In the Number placeholder you select the respective tag or input a number directly.

---

<div class="post-metadata">

**Author:** ![Chuck](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/chuck/32/146201_2.png) [@Chuck](https://community.homey.app/u/Chuck)\
**Post date:** [February 2, 2026, 8:26pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/257 "2026-02-02T20:26:11Z")

</div>

I tried the expression version with “set var to {[round(var)]}” but it errors with “round is not defined”.

---

<div class="post-metadata">

**Author:** ![SunBeech](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sunbeech/32/111391_2.png) [@SunBeech](https://community.homey.app/u/SunBeech)\
**Post date:** [February 2, 2026, 8:45pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/258 "2026-02-02T20:45:55Z")

</div>

What if you try: `math.round(your_tag)`?

Leave out the `{` and `[` characters if you are using the BLL expression card, as they are not required in that specific card.

---

<div class="post-metadata">

**Author:** ![Chuck](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/chuck/32/146201_2.png) [@Chuck](https://community.homey.app/u/Chuck)\
**Post date:** [February 3, 2026, 2:08pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/259 "2026-02-03T14:08:50Z")

</div>

That works!!! Thank you so much.

---

<div class="post-metadata">

**Author:** ![Paul\_Sc](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/paul_sc/32/16562_2.png) [@Paul\_Sc](https://community.homey.app/u/Paul_Sc)\
**Post date:** [February 7, 2026, 12:14pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/260 "2026-02-07T12:14:34Z")

</div>

Hello Guys,

Using Homey pro 2023 v 12.11.0 & better logic library 3.4.16, i see that some of my variables, even if they seem ok in BLL, are not displayed in the homey insight graphs.

In the picture joined as example, the 3 BLL variables are defined the same way, but only 2 are displayed.

Going in the application, i can see the values of the variables are correctly defined.

(The history of values is usefull for debugging my heating system)

Any idea on how to solve this ?

Thanks

 ![BLL](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/7/d73fb6b1ba6991be9be8b6b18938bbf10d855ab4.png)

---

<div class="post-metadata">

**Author:** ![SunBeech](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sunbeech/32/111391_2.png) [@SunBeech](https://community.homey.app/u/SunBeech)\
**Post date:** [February 7, 2026, 12:35pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/261 "2026-02-07T12:35:55Z")

</div>

Looks like the a value for the first variable was never set. Wat happens is you manually set a value for that variable via the BLL app?

---

<div class="post-metadata">

**Author:** ![Paul\_Sc](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/paul_sc/32/16562_2.png) [@Paul\_Sc](https://community.homey.app/u/Paul_Sc)\
**Post date:** [February 7, 2026, 1:04pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/262 "2026-02-07T13:04:35Z")

</div>

In the app the values are all correctly defined !

 ![IMG_4225](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/4/1/41e5b8f66e0d03270163690328bad055950e67bb.png)

---

<div class="post-metadata">

**Author:** ![Paul\_Sc](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/paul_sc/32/16562_2.png) [@Paul\_Sc](https://community.homey.app/u/Paul_Sc)\
**Post date:** [February 7, 2026, 1:08pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/263 "2026-02-07T13:08:56Z")

</div>

ok forcing the value once’s in the app solves the problem.

Thanks for the idea 😉

---

<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:** [February 23, 2026, 7:22am UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/264 "2026-02-23T07:22:54Z")

</div>

> [@Rrrr](#):
>
> Anybody knows where to find documentation on BLL logic AND/OR and syntax?

FYI: this has been solved in BLL update. The issue is Homey since hp2023 sends a checkbox/cross character instead of true/false.

Within BLL expressions, I replace those characters with true/false, so it works normal again.

---

<div class="post-metadata">

**Author:** ![Avaatar](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/avaatar/32/122305_2.png) [@Avaatar](https://community.homey.app/u/Avaatar)\
**Post date:** [April 21, 2026, 7:17pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/265 "2026-04-21T19:17:50Z")

</div>

Hi Arie,

at first thank you for your work here with these apps. I’m quite new to Homey and learning still. I have problem with BLL, it seems to crash frequently. I’m using in Docker, no cpu or ram limit. During night I backup Homey, for this the container is being stopped.

During the day I can find them BLL is not working anymore. I’m using it in Device Capabilities and Flows. I recognize this because BLL expressions are not calculated anymore in DC.

When I restart BLL in Homey then I can see immediately BLL running again. How long I can’t say exactly.

After backup when the Homey container starts I already tried a flow which restarts BLL after 6 Minutes, sadly no success.

What can I do?

---

<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:** [April 22, 2026, 11:26pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/266 "2026-04-22T23:26:14Z")

</div>

Hi Avaatar,

Not a fix for BLL, but removing the cause can be considered a fix I think 😬  
There’s ways to backup without stopping the container:

> [@Homey Self-Hosted Server with Docker on Linux | Megathread](https://community.homey.app/t/homey-self-hosted-server-with-docker-on-linux-megathread/146441/36):
>
> With the rest of the server that the Docker container runs on? For instance, I make periodic snapshots of all my Docker data using ZFS snapshots, and a daily backup to another server.

> [@Homey Self-Hosted Server with Docker on Linux | Megathread](https://community.homey.app/t/homey-self-hosted-server-with-docker-on-linux-megathread/146441/38):
>
> I’m using filesystem snapshots so no need to take anything down. I think that for Homey SHS it’s acceptable to take live backups, so Duplicati should be fine.

---

<div class="post-metadata">

**Author:** ![Avaatar](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/avaatar/32/122305_2.png) [@Avaatar](https://community.homey.app/u/Avaatar)\
**Post date:** [April 23, 2026, 12:57pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/267 "2026-04-23T12:57:30Z")

</div>

Hi Peter,

thank you 🙂 Im using btrfs on Unraid on my cache where SHS data is stored. I was thinking over the snapshot backup too but I am honest, I didn’t look more deep into it. The backup and restore with Appdata Backup/restore works that great without any problems, I wouldn’t like to switch away from this 🙂  
I will try different things but keep your advise in my mind 🙂

Thank you again.

---

<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:** [October 6, 2026, 2:09pm UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/268 "2026-10-06T14:09:06Z")

</div>

# Version 4.0.0 is in test now

The BLL app has some new images and icons.

## Better Logic Library app image and icon

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/b/0b81bd06a5383a27be023caed210595a0068a830.jpeg)  
 ![icon](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/1/c1464696d241db6bf241bc706e5c70c141f533ce.svg)

## BitFlip image and icon

 ![xlarge](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/8/c839d05fcd9d0296851417cd6a2408c194c60e3e.jpeg)  
 ![icon](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/f/9/f9cd0aadd4e2ae0e13797eb389a78809045ce29f.svg)

## NumSlide image and icon

 ![xlarge](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/2/f/2f584cb1427e4ea6e6287b73918d0fd2a1fe7789.jpeg)  
 ![icon](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/e/0e8c4bd83b97d0e3db48a5981261be8c1629a4cb.svg)

## Trigger image and icon

 ![xlarge](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/a/4/a46eb9b1e8362e18d59dbbe3dbc3bc8cb70b0fef.jpeg)  
 ![icon](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/f/6/f68921a505828eb2ae84da488026508dbe503347.svg)

## Want to support development more?

Become a Patreon at [Arie J. Godschalk | Membership | Patreon](https://www.patreon.com/QlusterIT/membership)

> [@\[Profile\] Arie J. Godschalk](https://community.homey.app/t/profile-arie-j-godschalk/70663/3):
>
> Donations or Sponsorship. You can help with the development, maintenance and support for the Apps, by donating or becoming a sponsor. This would be much appreciated! The more donations i receive, the more time i can make free for development and support. slight_smileDonations can be done through: [[PP] PayPal](https://paypal.me/QlusterIT) Requires a PayPal account. [[GS] Github Sponsors](https://github.com/sponsors/XeroxQ) Allowes for CreditCard. Sponsorships can be done through: [[P] Patreon](https://www.patreon.com/QlusterIT/membership) Requires a Patreon account. [[GS] Github Sponsors](https://github.com/sponsors/XeroxQ) …

---

<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:** [October 7, 2026, 11:43am UTC](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876/269 "2026-10-07T11:43:40Z")

</div>

# Version 4.1.0 is now in test:

### New:

- Sustained flowcards.
- Better flowcard titles, descriptions, hints and argument names.
- Most used cards are highlighted, thus on the top of the list.
- The Return as Tag flowcards will always try to fill all Tags (text, number and yes/no) if possible.
- Improved support for JSON in Return as Tag cards.

### Sustained flowcards:

**The BLL App has 3 new flowcards:**  
`When [[variable]] is [[condition]] [[value]] for [[time]] [[unit]], execute [[execute]]`  
These cards will execute when a variable has been a certain value for a specific period.

When f.i. using a condition of ‘equal to 5 for 5 seconds’ Execute once means this card will be triggered once after the condition has been met and stays true for 5 seconds. Repeatedly means, as long as the condition is met, this card will be executed every 5 seconds.

**Keeps working after Homey/App Restart.**

 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/2/3/23bcec6fe73140bf2159ea2f18a419a69c544bbf.png)  
 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/6/1/619eb8d939f4b699b22fb0a6bd05c8a6b905402a.png)

### Return as Tag:

The Return as Tag flowcards will always try to fill all Tags (text, number and yes/no) if possible.  
(So, no need to use Number.parseInt f.i.).

 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/3/0/30e050f21beb1ffd154d8de58cbdcba7ae8fc898.png)

 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/8/6/866a69ff7eb2e99b73b2c7133efafa68c417e717.png)

 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/d/0d87c5e15db82c1286c0d2581dd93a24c49b6314.png)

 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/c/dc7841fac94bcca80e734bd7fc6841e41b4540c7.png)

 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/7/a/7a3d7bf16fd28b3e47ee27fc834a731787f08bbc.png)

[Previous page](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876.md?page=12)
