# \[APP\]\[Pro\] Timey - Make your time flows dynamic with variables

**URL:** <https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139>\
**Category:** Apps\
**Tags:** app, flow, homey-pro\
**Created:** [October 14, 2024, 5:09pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139 "2024-10-14T17:09:57Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![kjeet90](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kjeet90/32/45190_2.png) [@kjeet90](https://community.homey.app/u/kjeet90)\
**Post date:** [October 14, 2024, 5:09pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/1 "2024-10-14T17:09:58Z")

</div>

# Timey

Use text variables in time flow cards with a 24-hour format: ‘H:mm’, ‘H.decimal’ or ‘H’

00:00 is the earliest, 23:59 is the latest.

### Current version

- Stable: [1.5.0](https://homey.app/en-us/app/no.kjeet90.timey)
- Test:

### Why a own app for time flow cards?

I wanted to set the time in one place and have it reflect in all my flows. The built in time flow cards does not support to set the time through variables, and the alarms did not have all the flow cards I needed. So I made a app which behaves like the built in time flow cards, just with the option to set the time with text variables. Maybe you’ll find it useful too?

Tip: Add the time to the variable name to make it more readable in the flows.  
 ![variable-name](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/7/0/70f280f2e32868659034d2ea5aae222f4402ea4c.png)  
 ![flow-with-variable](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/4/7/475ced6a835b57520e2a99bba3824ebf78705f4b.png)

You can of course also use a normal text input directly as a timestamp.  
 ![flow-with-text](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/4/0/40275d72c787328eba1be429da4dd5f4389a30f8.png)

* * *

# Formats

Three formats are accepted.

## 1. Exact time (HH:mm)

- 00:00

- 01:05

- 12:30

- 23:59

**Notes:** Minutes must be two digits (strict). Hours may be 1 or 2 digits (0–23).

This format also accepts wildcards

## 2. Decimal hours (H.decimal)

- 7.5 → 07:30

- 12.25 → 12:15

## 3. Single hours (H)

- 2 → 02:00

- 14 → 14:00

## Invalid formats

### Single-digit minutes

- 23:3

- 0:5

- 12:7

**Notes:** Minutes must be two digits unless a wildcard is used.

### Invalid hour or minute numbers

- 24:00 → hour too high

- 12:60 → minute too high

- -1:00 → negative hour

- 12:-5 → negative minute

### Invalid wildcard usage

- `*:*1*` → ❌ mixed wildcard in one field

- `**:*` → ❌ double `*` in a field

- `20:4**` → ❌ double `*` in minutes

# Wildcards

Wildcards can only be used in the Exact time HH:mm format

## Full wildcard (_:_)

- `*:*` → every hour and every minute

**Notes:** Colon is mandatory; both hour and minute are required.

## Hour wildcard (\*) only

- `*:00` → every hour at minute 00

- `*:30` → every hour at minute 30

- `*:45` → every hour at minute 45

## Minute wildcard (\*) only

- `12:*` → hour 12, every minute

- `1*:*` → hours 10–19, every minute

- `2*:*` → hours 20–23, every minute

## Prefix wildcard (n\*)

- `1*:00` → hours 10–19, minute 00

- `2*:30` → hours 20–23, minute 30

- `20:4*` → hour 20, minutes 40–49

## Suffix wildcard (\*n)

- `*1:30` → hour ends with 1 (1, 11, 21), minute 30

- `2*:*0` → hours 20–23, minutes ending with 0 → 20:00, 20:10 … 23:50

- `*:*5` → every hour, minutes ending in 5 → 00:05, 01:05 … 23:55

**Notes:** Both hour and minute can have prefix or suffix wildcards, but a single field cannot have both (e.g., `*1*` is invalid).

# Expressions

You can use expressions to set the timestamp. You have two options, BLL or Homeys built in logic, but the result of the expressions needs to match the valid timestamps as mentioned above.

## Better Logic Library

You need to first have the Better Logic Library (BLL) installed: [Homey App Store](https://homey.app/en-us/app/net.i-dev.betterlogic/Better-Logic-Library/)

Then wrap your expressions with brackets like this: `{[expression]}` and the result must match one of the valid formats mentioned above

Read more about BLL here: [Community Topic](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876)

## Homeys built in logic

Use Homeys built in expression brackets: `{{ expression }}`

# Changelog

## 1.5.0

- Added wildcard support

## 1.4.1

### Bugfix

- Fixed issue where decimal to timestamp would sometimes be incorrect

## 1.4.0

### Feature

- Added time1 is earlier/later than time2 flow cards.

### Bugfix

- Fixed wording in existing earlier/later flow cards

## 1.3.0

### Feature

- Added support for BetterLogicLibrary

## 1.2.0

### Feature

- Added support ‘H’ format

## 1.1.1

- Bugfixes

## 1.1.0

### Feature

- Added support for ‘H.decimal’ format

## 1.0.1

- Updated app description

## 1.0.0

- Initial version

## Issues and bugs 🐛

Bugs should be reported [here](https://github.com/kjeet90/homey-timey/issues)

## Donations 💰

If you like this app, please consider donating [through paypal](https://www.paypal.com/paypalme/kjetilhaugland)

---

<div class="post-metadata">

**Author:** ![Patrick\_Van\_Deursen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/patrick_van_deursen/32/56539_2.png) [@Patrick\_Van\_Deursen](https://community.homey.app/u/Patrick_Van_Deursen)\
**Post date:** [October 14, 2024, 5:57pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/2 "2024-10-14T17:57:33Z")

</div>

Cool, did have a need for this already a couple of times, so interested to see it approved and hopefully useful in my cases

---

<div class="post-metadata">

**Author:** ![Robin\_De\_Lange](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robin_de_lange/32/25173_2.png) [@Robin\_De\_Lange](https://community.homey.app/u/Robin_De_Lange)\
**Post date:** [October 14, 2024, 7:09pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/3 "2024-10-14T19:09:43Z")

</div>

there is no flow cart to set a tag to a alarm, could this do the job?

with the shortcut app from apple I set a alarm on my phone and set a tag within a webhook to homey 15 minutes before the alarm goes off. so I set alarm to 07:00 the webhook will send 06:45. with this tag I want to set the alarm in homey, and with this alarm I start al wakeup flow.

only the thing is. there is no flow card with set alarm to (tag).

---

<div class="post-metadata">

**Author:** ![kjeet90](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kjeet90/32/45190_2.png) [@kjeet90](https://community.homey.app/u/kjeet90)\
**Post date:** [October 15, 2024, 7:54am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/4 "2024-10-15T07:54:18Z")

</div>

You’ll get the option to use a flow trigger with “The time is” which could use your variable from the webhook, as long as it’s in the format HH:mm. Then that trigger will be executed at the time set to the variable. So if I understand you correct, this could solve that, yes 🙂

---

<div class="post-metadata">

**Author:** ![Robin\_De\_Lange](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robin_de_lange/32/25173_2.png) [@Robin\_De\_Lange](https://community.homey.app/u/Robin_De_Lange)\
**Post date:** [October 15, 2024, 8:03am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/5 "2024-10-15T08:03:16Z")

</div>

Aah i think you understand me correct😁 will try this when it can. Thank you!

---

<div class="post-metadata">

**Author:** ![kjeet90](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kjeet90/32/45190_2.png) [@kjeet90](https://community.homey.app/u/kjeet90)\
**Post date:** [October 17, 2024, 8:03am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/6 "2024-10-17T08:03:02Z")

</div>

@Robin_De_Lange @Patrick_Van_Deursen

It’s now live. Link to app in App store can now be found in the first post 🙂

---

<div class="post-metadata">

**Author:** ![Robin\_De\_Lange](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robin_de_lange/32/25173_2.png) [@Robin\_De\_Lange](https://community.homey.app/u/Robin_De_Lange)\
**Post date:** [October 17, 2024, 11:31am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/7 "2024-10-17T11:31:30Z")

</div>

@kjeet90 it works, thank you very much!

---

<div class="post-metadata">

**Author:** ![Patrick\_Van\_Deursen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/patrick_van_deursen/32/56539_2.png) [@Patrick\_Van\_Deursen](https://community.homey.app/u/Patrick_Van_Deursen)\
**Post date:** [October 25, 2024, 6:51am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/8 "2024-10-25T06:51:52Z")

</div>

This works like a charm!! have added links in different discussions already, as this was a recurring feature request from others as well!

Question, does this work with BLL:

> [@\[APP\]\[Pro\] Better Logic Library - For Users](https://community.homey.app/t/app-pro-better-logic-library-for-users/71876?page=4):
>
> BLL is Live! If you are an App Developer and want to know more about how to include this into your App or how to let your App support BLL coding, goto the [[APP][Pro] Better Logic Library - For Developers](https://community.homey.app/t/app-pro-better-logic-library-for-developers/71761) Forum Topic. Part of: [Better Logic Library - Just some better logic, variable and library management](https://community.homey.app/t/app-pro-better-logic-just-some-better-logic-and-variable-management/5568)Homey’s first real Library: Better Logic Library! The [Better Logic](https://homey.app/a/net.i-dev.betterlogic/) App has a new addition: A library and library management for other apps to consume. This Topic describes how users can use th…

Within all flowcards that supports BLL coding, you can add any BLL expression within the next codeblock: `{[expression]}` .

---

<div class="post-metadata">

**Author:** ![kjeet90](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kjeet90/32/45190_2.png) [@kjeet90](https://community.homey.app/u/kjeet90)\
**Post date:** [October 25, 2024, 7:22am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/9 "2024-10-25T07:22:40Z")

</div>

There are currently no support for this, but it is something I could look into adding. Do you have some usecase examples, as I’m not very familiar with the use of BLL.

---

<div class="post-metadata">

**Author:** ![Patrick\_Van\_Deursen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/patrick_van_deursen/32/56539_2.png) [@Patrick\_Van\_Deursen](https://community.homey.app/u/Patrick_Van_Deursen)\
**Post date:** [October 25, 2024, 7:48am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/10 "2024-10-25T07:48:35Z")

</div>

@kjeet90 , thanks for the reply.

My usecase is that I want to have the radiators turn on at a specific time, which I calculate based on the current temperature, the to be achieved temperature, the heating speed and the time it needs to be warm. Based on those variables, I want the heater to start at a specific moment.

I would used BLL for that to calculate and then use that tag in the rest of the flow. However, as for this one, I start the flow with timey, there is no way to have BLL first do the calculations, so would need to embed that in the time variable of Timey.

Is that clear?

---

<div class="post-metadata">

**Author:** ![kjeet90](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kjeet90/32/45190_2.png) [@kjeet90](https://community.homey.app/u/kjeet90)\
**Post date:** [October 25, 2024, 8:07am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/11 "2024-10-25T08:07:41Z")

</div>

I won’t be able to do anything about it until next week at earliest 🫤 But I will take a look into it if it’s something that I should add

Possible workaround?: Do the calculations with BLL and write the result to a normal string variable and use that variable in the trigger card of Timey?

---

<div class="post-metadata">

**Author:** ![Patrick\_Van\_Deursen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/patrick_van_deursen/32/56539_2.png) [@Patrick\_Van\_Deursen](https://community.homey.app/u/Patrick_Van_Deursen)\
**Post date:** [October 25, 2024, 8:10am UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/12 "2024-10-25T08:10:40Z")

</div>

Yes indeed possible, and will take that route otherwise.

thanks for looking into it, no rush though!

---

<div class="post-metadata">

**Author:** ![Marius\_Stensrod](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/marius_stensrod/32/56540_2.png) [@Marius\_Stensrod](https://community.homey.app/u/Marius_Stensrod)\
**Post date:** [October 28, 2024, 4:41pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/13 "2024-10-28T16:41:54Z")

</div>

@kjeet90 , This app is very good, thanks for developing! I had a post a time a go " [How to start a flow at a spesific time stored in variabel, with built in functions (Solution - Check every 60 minutes or use the app "Timey")](https://community.homey.app/t/how-to-start-a-flow-at-a-spesific-time-stored-in-variabel-with-built-in-functions-solution-check-every-60-minutes-or-use-the-app-timey/109853) " , and your app can do actually what I was searching for, a way to start a flow at a given time from a variabel. Thanks again, much appreciated!

---

<div class="post-metadata">

**Author:** ![Patrick\_Van\_Deursen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/patrick_van_deursen/32/56539_2.png) [@Patrick\_Van\_Deursen](https://community.homey.app/u/Patrick_Van_Deursen)\
**Post date:** [November 1, 2024, 2:22pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/14 "2024-11-01T14:22:04Z")

</div>

Hi @kjeet90 ,

I have a little challenge. I use a calculation to set the HH and MM for timey. however, if I do the calculation and it ends up being 5 min (as in 5 min past 9 f.i) Timey errors out, as it needs HH:MM. if it get 8:5 (5 minutes past 8) it doesnt work (neither for the 8 nor the 5… they both need the leading 0). Anything you can do in that case?

Or maybe different/better/easier for me, could we also get it to work with just decimal numbers, i.e. f.i. 9.752346 would be 09:45

---

<div class="post-metadata">

**Author:** ![kjeet90](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kjeet90/32/45190_2.png) [@kjeet90](https://community.homey.app/u/kjeet90)\
**Post date:** [November 1, 2024, 2:38pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/15 "2024-11-01T14:38:47Z")

</div>

It’s only required with a leading zero on the minute part, you can actually do 9:50. The minutes part will continue to require leading zero because I don’t know if the user wants 9:5 to be 9:05 or 9:50.

The 9.752346 format is something I could look into adding 🤔

---

<div class="post-metadata">

**Author:** ![Patrick\_Van\_Deursen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/patrick_van_deursen/32/56539_2.png) [@Patrick\_Van\_Deursen](https://community.homey.app/u/Patrick_Van_Deursen)\
**Post date:** [November 1, 2024, 2:51pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/16 "2024-11-01T14:51:51Z")

</div>

Understand that 05 or 5 or 50 would indeed be confusing. in the decimal version that would solve itself, as 9.5 would clearly be 09:30

Would really help remove a number of calculations on my part (with removing the need of adding the leading 0 when needed), so 🤞🏻🤞🏻. The point is that you can immediately use the result from a calculation and would not need to add a step in formatting. would make timey more universally useable. Now I need to do:

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/a/0a3f85a11430b1f35cb2f10e09c57e6651d35626.png)  
And this also does not work, due to the leading 0. I thus need to check if the mm part is lower than 10, and then in a text box add a 0 to that number, make that a text (as in a number string, the leading 0 gets dropped again), and then add it to Timey…

and indeed the leading 0 is only needed on the MM part not the HH

---

<div class="post-metadata">

**Author:** ![Marius\_Stensrod](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/marius_stensrod/32/56540_2.png) [@Marius\_Stensrod](https://community.homey.app/u/Marius_Stensrod)\
**Post date:** [November 1, 2024, 4:07pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/17 "2024-11-01T16:07:00Z")

</div>

@Patrick_Van_Deursen , as you are calculating time, why would it help that you have to convert .5 to .30, besides adding a leading 0? As times must be given with 05 and 50. There must be something i misunderstand.

---

<div class="post-metadata">

**Author:** ![Patrick\_Van\_Deursen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/patrick_van_deursen/32/56539_2.png) [@Patrick\_Van\_Deursen](https://community.homey.app/u/Patrick_Van_Deursen)\
**Post date:** [November 1, 2024, 4:46pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/18 "2024-11-01T16:46:16Z")

</div>

I need to convert my decimal calculation to a hh:mm standard. I thus need to extract the decimals, convert those to minutes, check that there is not a need to add a leading zero. And then pass that together with the hour to timely in a hh:mm format

Unless I am doing something overleg complex

Why not immediately take the result (in decimals) is what my question is here.

---

<div class="post-metadata">

**Author:** ![Marius\_Stensrod](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/marius_stensrod/32/56540_2.png) [@Marius\_Stensrod](https://community.homey.app/u/Marius_Stensrod)\
**Post date:** [November 1, 2024, 5:10pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/19 "2024-11-01T17:10:00Z")

</div>

> [@Patrick\_Van\_Deursen](#):
>
> Why not immediately take the result (in decimals) is what my question is here.

I do understand the question. If the app can calculate from decimals, then you do not need to do it. The usecase is clear, thank you 🙂

---

<div class="post-metadata">

**Author:** ![kjeet90](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kjeet90/32/45190_2.png) [@kjeet90](https://community.homey.app/u/kjeet90)\
**Post date:** [November 1, 2024, 6:07pm UTC](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139/20 "2024-11-01T18:07:20Z")

</div>

@Patrick_Van_Deursen I’ve published a test version with decimal support. Can you check if this works for you?

[Next page](https://community.homey.app/t/app-pro-timey-make-your-time-flows-dynamic-with-variables/118139.md?page=2)
