[APP][Pro] VarView — show a temperature or energy reading on your Nest Hub or in your browser

**Nederlands topic: Nieuwe app: VarView (een temperatuur of verbruiksmeting tonen op bijv. je Nest Hub of in je web browser)

VarView turns any device value in your home into a calm, full-screen display. Pick up to three values (a battery level, a temperature, the current power usage), give each one a label of your own, and set the background and text colour to match the room. A clock and a date can optionally be shown alongside them. A Flow can also put a message on the display for a set number of seconds, so the doorbell or a finished washing machine announces itself.

The app serves the result on your own network as both a web page and an image, so you can show it on a Google Nest Hub, a Chromecast, a wall-mounted tablet or simply a browser tab. The IP port is configurable and the full address is shown in the app settings. The clock and text size can be set per screen by adding a parameter to the address (for example ?clock=18), and the display shrinks by itself when the content no longer fits. A page cast to a Nest Hub or Chromecast stays on instead of falling back to the clock after ten minutes; add ?cast=0 to keep the old behaviour. All communication stays within your own network and no account is required.

About the permission: Homey asks for full API access because that is the only permission that lets an app read values from devices belonging to other apps; Homey offers no read-only variant. VarView uses it purely to read the values you selected yourself. It never switches, changes or controls anything, and it touches no device other than the ones you picked.

This is how it looks in my living room, with ?clock=25&date=8 added to the address.

Version 4.0.0 is live!

What’s new:

1. Messages from a flow. Three new flow cards: “Show a message” (with a tag from your flow in the text, 1 to 3600 seconds, three styles), “Clear the message” and the condition “A message is showing”. A message now appears on the display the moment the flow runs, instead of waiting for the next refresh.

This is how I’ve set it up myself, for the doorbell and the washer and dryer:


Attention style: for something you need to act on right now.

Subtle style: for something that only needs to be mentioned. There’s a normal style as well. An attention message interrupts a normal one, which then resumes afterwards.

2. Clock and text size per screen. You can add ?clock=, ?date=, ?scale= and ?fit= to the web page address, and the display now shrinks automatically when the content no longer fits, instead of running off the screen.

This is deliberately in the address and not in the settings: one Homey can drive multiple screens, and a 7-inch Nest Hub, a wall tablet and a browser tab on a large monitor each need a different size. A central setting would force one size on all of them. The settings page now shows an example underneath the cast address with your own IP address filled in, so copy and paste is all it takes. Combine parameters with an &: http://192.168.1.2:8034/page?clock=25&date=8

3. Casting no longer stops after ten minutes. If you’d rather keep the old behaviour, add ?cast=0 to the address.

Nest Hub behaviour can differ per firmware version. If something goes wrong: add ?cast=0 and you’re back to the “normal” behaviour.

It is a wonderful APP … thank you very much for that.

Dennis

How does it handle the display being changed by the Hub, for example if I ask it to play music or a radio station?

Thanks

Stephen

Hi Stephen, short answer: VarView doesn’t survive it, and that’s a Cast platform limitation rather than something the app can work around.

A Cast device runs only one receiver app at a time. VarView is shown by casting a web page, so when you ask the Hub to play music or a radio station, that media app takes over and the VarView session ends. When playback stops the Hub returns to its own clock or photo screen. Cast has no way to resume the previous app.

It works the other way round too. If you cast the VarView URL while the radio is playing, the radio stops. Same mechanism. So if you want the display and the audio at the same time, the only real answer is to send the audio to a different speaker and leave the Hub on the display.

To get VarView back automatically after listening, you can build a flow with the Google Chromecast app:

  • WHEN Chromecast stopped playing
  • AND (after a delay of 60 seconds) Chromecast is not playing
  • THEN Cast a website, with your VarView URL

The delay keeps it from jumping in between two tracks. One caveat I’d rather state up front: music you start by voice on a Nest Hub doesn’t always register in Homey as a Chromecast playing state, so the trigger may not fire for everyone.

I would avoid a fallback flow on a timer for the same reason. If the check for “is not playing” misses voice playback, it will cut your radio off mid song.

Dennis

Is it possible to dynamically pass device values into the “Show a message” flow card? For example, can I use a tag to show the boiler temperature in one flow, and the floor temperature in another?

Yes, that works. The message field of the Show a message card is a normal text argument, so you can drop tags into it just like anywhere else in Homey. Type your own text around the tag and Homey fills in the value when the flow runs.

So you can have:

  • Flow A → Show a message: Boiler: [temperature] °C
  • Flow B → Show a message: Floor: [temperature] °C

Same card, different tag in each flow — that’s exactly how it’s meant to be used.

I was distracted

I am writing to provide some feedback. I have tested it, and it works perfectly.
As a request, the date language for “Maandag?!” should be in English at least, or ideally, selectable. :slight_smile:
For this project, it would be a great addition to have a selected sound play when a message is sent. A second page with toggles for the project settings would work perfectly. :slight_smile: