Repository navigation
Card PictureElements
A floor plan of your home with buttons placed on it: tap a lamp on the plan to switch it. It can also show your robot vacuum where it is, and the people detected by an mmWave radar (e.g. LD2450).
In the builder (since 1.2.9): pick the plan among your icons, add buttons, and — when the builder is opened from the remote — click the plan to place the selected button. The vacuum and radar blocks are under Advanced, as JSON.
- Your own image as the background, a PNG of your floor plan. The card takes the image's proportions.
-
Buttons placed in % of the width and height: they stay in place whatever the size.
- With an
entity_id: tap toggles it. The button lights up amber (or youron_color) while the entity ison. - With a
service: tap calls it, once per entity oftargets(e.g. all the lights of a room off).
- With an
- Robot vacuum: drawn at its dock, or in the room it's cleaning. It wobbles while it moves. Tap it to open the full Vacuum panel in a popup.
- Radar: numbered dots showing where each person detected by an mmWave sensor stands, live.
| Parameter | Type | Default | Description |
|---|---|---|---|
type |
string | — | picture_elements |
image |
string | /sdcard/astrion/floorplan.png |
Path of the floor plan image on the remote. |
aspect |
number | 1.3 |
Width / height ratio, used only until the image is loaded. |
elements |
list | — | The buttons, see below. |
vacuum |
object | — | Robot vacuum on the plan, see below. |
radar |
object | — | Radar targets, see below. |
Uploading the plan: upload it like an icon on the web page, then use its path, e.g. /sdcard/astrion/icons/floorplan.png. A large image is fine: it's scaled down to the screen.
| Parameter | Type | Default | Description |
|---|---|---|---|
left |
number | 50 |
Horizontal position, in % of the width. |
top |
number | 50 |
Vertical position, in % of the height. |
entity_id |
string | — | Entity to toggle. Lit while it's on. |
service |
string | — | Service to call instead, e.g. light.turn_off. |
targets |
list | — | Entities the service is called on. |
icon |
string | bulb |
power for a power icon, or a PNG path (1.2.9+). Otherwise a bulb. |
on_color |
string | amber | Background while on, #RRGGBB or #AARRGGBB (1.2.9+). |
The Vacuum card's options (they fill the popup), plus where to draw the robot:
| Parameter | Type | Description |
|---|---|---|
entity_id |
string | The vacuum entity. Required.
|
dock_position |
[left, top] |
Where the dock is on the plan, in %. |
room_entity |
string | An entity whose state is the room being cleaned (many integrations have a current room sensor). |
room_positions |
object | Each room name (as that entity reports it) → [left, top] in %. |
The robot is drawn at the dock when docked or charging, in its current room otherwise, else at the dock.
Reads the target coordinates from sensors named <prefix>_<n>_x and <prefix>_<n>_y (n = 1, 2, 3…).
| Parameter | Type | Default | Description |
|---|---|---|---|
prefix |
string | — | Sensor name prefix, e.g. sensor.ld2450_target. Required.
|
targets |
int | 3 |
Number of targets. |
origin_left / origin_top
|
number |
50 / 10
|
Where the sensor is on the plan, in %. |
scale_x / scale_y
|
number | 8 |
% of the plan per sensor unit. |
scale_x_right |
number | scale_x |
A different scale for the right side (rooms that aren't symmetrical). |
top_offset_left |
number | 0 |
Extra vertical offset on the left side. |
rotation |
number | 0 |
Rotate the sensor's axes, in degrees. |
flip_x / flip_y
|
bool | false |
Mirror an axis. |
blend |
string | overlay |
How dots blend with the plan: overlay, multiply, screen, softlight, hardlight, difference, none. |
{
"type": "picture_elements",
"options": {
"image": "/sdcard/astrion/icons/floorplan.png",
"elements": [
{ "entity_id": "light.living_room", "left": 30, "top": 40 },
{ "entity_id": "light.kitchen", "left": 72, "top": 35 },
{ "service": "light.turn_off", "targets": ["light.living_room", "light.kitchen"],
"icon": "power", "left": 92, "top": 8 }
],
"vacuum": {
"entity_id": "vacuum.roborock_s7",
"map_image": "image.roborock_s7_ground_floor",
"dock_position": [12, 85],
"room_entity": "sensor.roborock_s7_current_room",
"room_positions": { "Kitchen": [72, 40], "Living room": [30, 45] },
"rooms": [ { "name": "Kitchen", "id": 16 }, { "name": "Living room", "id": 17 } ]
},
"radar": { "prefix": "sensor.ld2450_target", "targets": 3, "origin_left": 50, "origin_top": 5 }
}
}💡 Without the builder: to find left / top, divide the pixel position in your plan by the image's width or height, times 100.
See also: Card Vacuum · Card Light
🚀 Getting started
- Coming from Harmony
- Installation
- The remote's web page
- The builder
- Updates & beta
- FAQ & troubleshooting
🧩 Cards
- Light · Cover · Switch
- Climate · Fan
- Media player · Source select · Speaker group
- Select · Monitor
- Camera · Vacuum · Clock & weather
- Plex · Picture elements
- Title · Row
- Button grid · Scene grid
- TV remote / Apple TV remote
🎮 Control
- Physical keys & hotkeys
- Activities
- Harmony Hub
- IR devices & IR database
- IR extenders
- Apple TV (direct)
🏡 Home Assistant
🔋 The remote
📄 Reference