Power Menu in Android11 is interesting, but it can be a cluttered space. My house features 7 temperature sensors alone to support my advanced (but budget) DIY Smart Heating. The native Power Menu needs 7 tiles to display all that data. Thanks to my Power Menu made with Tasker – I only need one! It’s a space saver, and it gives you all the information at your fingertips when you need it most.
All Sensors – one tile
My initial Power Menu tutorial didn’t attract much attention, because I focused mostly on the framework and no-cloud functionality, rather than showcasing what can you do with it. While the sky is the limit, I had a series of showcases planned just for that. This one is about displaying environmental data from your entire home in a single tile.
All sensors -tile will display temperature/humidity/pressure metrics from all your sensors scattered around the house. It will also change the icon’s colours to highlight rooms that require your attention. The project supports the following temperature units: ℃|°F, pressure units hPa|inHg.
The project supports two modes:
- timed (rooms are displayed in a timed sequence)
- requested (tapping the tile takes you to the next room)
- mixed (you can combine both)
There are no limits to the number of sensors that you can display in a single tile, just bear in mind that if you have 20 sensors, it will take you a while to go through all of them. Another advantage of the system is that the environmental information is submitted every 5 min (you can change that) while cycling through individual rooms is done locally.
If this project inspired you to add more temperature sensors to your home automation, you can take a look at the sensors that I use:
- Sonoff Humidity & Temperature – ZigBee (Itead Store|AliExpress)
- Aqara Humidity, Temperature & Pressure – ZigBee (AmazonUK|AmazonUS|AliExpress|Banggood)
- Tuya Humidity & Temperature – ZigBee (AliExpress|Banggood)
I realise that Power Menu tiles are available on Android 11 devices only, but if you like the project you can replace the tile with permanent notification using AutoNotification instead. Take a look at this weather tutorial – perhaps it will inspire you.
Data can be submitted by any sensor connected to NodeRED. In this case, I’m using MQTT to gather the data. One of the requirements is to name each sensor by applying
msg.topic with the name of the room or location the sensor is at. This name will be displayed in the tile. Bear in mind that name is limited to 8 characters (limit of the subtitle field in Power Menu). In the settings node -> On Start tab, you will find preferences for preferred units.
Don’t worry if the sensor doesn’t support humidity or pressure, the system will take care of that. Just note that this project won’t store historical data. If you want to preserve the values and display these as charts – take a look at my Grafana and InfluxDB guide. It will teach you how to store the data and display it in a dashboard.
Magic happens in Tasker. You will need Join App to receive the data. As Tasker cannot add Power Menu tiles to the active selection, you need to run the initial task and then add the sensor tile manually. Once in the active roster, Tasker will take care of the rest.
I mentioned that icons will change colour based on the temperature of the room. I set some defaults, but to make it work, you will need to download the .zip file and unpack it to Tasker’s directory. Credit to icons8.com for the icons. Feel free to tweak these in Tasker (they are labelled). The values are:
|Temperature Range ℃|℉||Icon|
|<14 (57F)||cold.png (blue)|
|14-18 (56-64F)||medium.png (orange)|
|18-25 (64 -77F)||perfect.png (green)|
|25+ (77F)||hot.png (red)|
If you want to cycle through the rooms, link the PMS Update Tile (noAction) task with a Tick Event + Screen On State to preserve power. Set it to 10000 (10 sec) and your tile will update when the screen is on cycling every 10 seconds. This is the preferred option for the noAction tile.
If you want to tap the tile to move to another room, you will need to use the Button tile instead and link the command “sensorUpdate” to a Command Event instead. Alternatively, you can link both triggers to a single PMS Tile Update (button) to get the best of both worlds. Just remember that you need to be using the Button tile, not noAction.
In this simple way, you can get all sensor data in a single tile. It will save you some space while showing mission-critical info, so you always stay on top of your heating or AC. Next up, I’m going to take it further with a similar setup that will change more than one tile and display all tiles available in selected rooms. Impressed? Let me know, or submit your cool ideas via this Reddit thread.
Download project files here. Bear in mind that Patreon supporters have early access to project files and videos.