[RELEASE] Simple Kitchen Timer with Controls for use with Dashboards

*** BPTWorld apps are no longer being developed or maintained. Thanks ***

Introducing 'Simple Kitchen Timer'
Create a simple kitchen timer with controls for use with Dashboards!

Features:

  • Setup a working Kitchen Timer right on Dashboard tile
  • Each tile features up to 3 timer presets
  • Tile features working 'Start', 'Pause' and 'Reset' buttons.
  • Timer changes colors based on time left
  • Options when Timer is finished include - Announcement, Push, Device Control and/or Flash lights!
  • Wildcards can be used in Announcements/Push (ie. timer name)
  • Speech requires 'Follow Me'
  • Flash lights requires 'The Flasher'
  • Parent/Child/Driver App structure
  • Create as many child apps and Devices as needed
  • Each child app will automatically create the Tile Device if needed

Apps can be found on my GitHub or by using the Hubitat Package Manager.
(HPM is highly recommended)

When reporting problems...

  • Be sure you are on the latest version. I won't troubleshoot an older version.
  • Turn on debug and screenshot the issue happening in the log. One line or just the error doesn't cut it. I need a log.
  • Post the screenshot of the log with an explanation of the problem.

Thanks

4 Likes

Figured we need something to play with during this crisis... :grin:


Simple Kitchen Timer

Example parts of the tile:

  • Big top number is the countdown
  • 'Start', 'Pause' and 'Reset' are buttons to control the timer
  • '30', '300' and '600' are preset timers (user configurable in the app). Click on the number to use that preset.
2 Likes

Wow, so many use cases I can see for this Bryan, nice work. Some even stretch outside of the kitchen, such as a cheap way to get notifications on laundry being ready without the need for power or vibration sensors, or even timers for different home brew steps. Would you consider naming the different preset timers and displaying on the tile?

Also, was thinking having an option to flick a switch at the end of a timer would also be quite useful (sorry if this is available, haven't installed the app yet). People could use it to switch off a child's nightlight, or fan, or air conditioner, etc.

Great work,
Simon

Thanks!

Character count is already pretty tight. But I'll take a look.

great idea, I'll get that added.

thanks

1 Like

I was thinking that would be a factor. Perhaps a single timer per tile would be needed in that case, which would be a shame because of the repetition of the controls taking up dashboard real estate.. I'll leave it with you.

New version on GitHub...

Child:
V1.0.1 - 03/29/20 - Added switch control to Finished options, added timer name options, added Tile character count to Maint section

Driver:
v1.0.1 - 03/29/20 - Added code for naming timers

1 Like

Great work @bptworld, very quick turn around. I'll take a look in the next day or two.

Simon

1 Like

Got this error in the logs when creating a child:

java.lang.NullPointerException: Cannot invoke method currentValue() on null object on line 161 (pageConfig)

Sorry about that, try the new version on GitHub...

Child:
V1.0.2 - 03/29/20 - Bug hunting

That worked. Now I need to figure out the Make API stuff I suppose.

Also I found a typo: "Character cound" on line 164

1 Like

Hi @bptworld,

I've installed the timer app. When I added the tile to a dashboard using the attribute template the tile only displayed the timer names and the start, pause and reset buttons, it did not display the timer value at the top of the tile. It did eventually appear... strange. Perhaps I just needed to be patient the first time...?

Also, when I try to go into the devices section of HE and open the timer device, the HE interface just sits there with the spinning wheel as though it's loading the page, but never comes up. I can open other devices ok... It could be unrelated to the app, I did have something similar recently when I setup a rule incorrectly which I think impacted hub performance. I only mention it in case you have any ideas on what it could be.

I've enabled logging in the app but have not seen anything logged at this stage.

Thanks,
Simon

Ignore my last post, I might read the instructions a bit more closely, which do talk about some of the issues I mention above, sorry.

Simon

1 Like

All working now., just needed to finish the setup with the Maker API settings in the parent app.

1 Like

Hi @bptworld,

A couple of things I noticed. When I tried to setup a notification to be send to my phone, it produced an unexpected error when I tried to save this setting. The setting appeared to take hold, i.e. it was there when I went back into this section of the setup, and it did still send a message to my phone.

When it did send the message to my phone, it referenced the name of the child app but with "null" at the end. It would be good to have the ability to set the message text that is sent within this Notifications section of the child app config. Even better would be to have variables / wildcards available to reference in the text, including the timer name, e.g. from my earlier post Washing Cycle or Rinse Cycle, etc.

Simon

Aren't they all 'unexpected' ?? :wink:

I think I know what happened there. Fix in next release

Did you fill out the Message Options?

Good idea, I'll look into this.

thanks

So true.... Thanks for following up on this.

No, I hadn't will give that a try.

Simon

New version on GitHub...

Child:
V1.0.3 - 04/04/20 - Fixed push, fixed issue with 'unexpected error' with Notification page, added wildcard for timer name in message.

Driver:
v1.0.2 - 04/04/20 - Added currentTimer attribute

1 Like

Error when updating the child;;
Metadata Error: Parent App 'BPTWorld:Simple Timers' not found on line 51

Should be fixed, thanks

Hello Bryan, would you consider making this count up? I would love to use this for my dog. If dog hasn’t been walked in x hours, alert me? Is there a way for the whole family to see the last time a button was pushed?
Thank you