Browse documentation
All documentation
Getting started
Screens & scenes
Widgets
Integrations
The assistant
Household & presence
Reception & visitors
Menus, art & broadcast
Account, plans & data
API & self-hosting
Troubleshooting

The scene editor

The scene editor is where you arrange a screen's widgets on a twelve-column grid, watch the real widgets render behind them, and push the result to the wall.

What a scene is

A scene is one arrangement of widgets — what a screen shows at a given moment. A screen can hold several of them, typically something like Morning, Day and Night, and the schedule decides which one is on the wall. Every screen has at least one scene, and one of them is marked as the default: the scene shown when no schedule rule applies. Mirra will not let a screen be left with no scenes, because a screen with no scenes shows nothing at all.

A scene belongs to the screen it was made for. Most scenes stay there and nobody should have to think about where they live. A scene you want on a second screen has to be switched to shared first, and that is not bureaucracy — editing a shared scene changes it on every screen it is on, and that ought to be something you opted into rather than something you discover from the other end of the house.

Opening the editor

Kitchen mirrorMorning ▾the scene you are editingPreview onreal widgets behind the gr…1920 × 1080 ▾the shape being drawnSave & pushwrites and notifiesCanvas12 columns × 8 rowsLayerstopmost firstSchedulethis screen's rulesTheme accentfive swatchesAdd widgetgrouped by categoryPresencecamera and greetingsWidget settingsappears when one is selectedScreen commandsidentify, reload, diagnose
The editor: toolbar across the top, canvas and palette on the left, per-screen panels down the right.
  1. Go to Screens

    Screens in the top bar lists every screen paired to the household, with the time each was last seen.

  2. Click the screen you want to work on

    That opens its editor. The heading is the screen's name, and ← Screens takes you back.

  3. Choose the scene

    The first button in the toolbar names the scene you are editing, with a star beside it if it is this screen's default. Open it to switch scenes, to make a new one with New scene…, or to open Scenes on this screen… — which is where you add one of the household's shared scenes, reorder them, or change which one is the default.

Twelve columns, eight rows

The canvas is twelve columns wide. It is eight rows tall in landscape and eighteen rows tall in portrait. Portrait gets more rows on purpose: twelve by eight on a tall panel makes every cell a letterbox, and eighteen rows keeps a cell roughly square so a widget occupies a sensible shape.

The canvas is drawn at the shape of the real screen, not the shape of whatever happens to be arranged on it. Set the screen's size from the toolbar and the canvas takes that aspect ratio — so what you arrange is what appears on the wall, and the canvas does not get shorter because you removed a widget from the bottom of it.

A scene borrowed from a screen mounted the other way round is drawn in the shape it was drawn in, not this screen's, and a line under the toolbar says so. You are editing the original; this screen re-flows it on the way out, and the screens it is already on keep exactly what they have.

ClockNoteWeatherDateAgendaPhotos
A landscape scene on the twelve-column grid — the six widgets a new scene starts with.

Adding a widget

  1. Make sure you are on the right scene

    Widgets are added to the scene named in the toolbar, not to the screen. A screen with three scenes needs the widget on whichever of them you want it to appear in.

  2. Find it under Add widget

    The palette sits beneath the canvas, grouped into Time, Calendar, Photos & art, Smart home, Information and Household. A button like + Clock adds that widget immediately.

  3. Or open an integration's own picker

    Home Assistant, WLED, Calendar, Spotify and Twinview each appear as a single entry — “+ Home Assistant…” — because between them they account for most of the catalogue, and thirty buttons in a row buries the clock. The dialog asks what you want first and which of your devices second, with a count beside each choice, so “Camera — no cameras found” is answered before you place it rather than after.

  4. Skip the device if the kit is not installed yet

    Skip for now adds the widget with nothing chosen. It sits on the scene showing nothing until you pick a device in its settings, which is the right behaviour when you are laying out a screen before the hardware arrives.

  5. Move it where you want it

    A new widget lands in the first free space large enough for its default size, or in the top-left corner if the scene has no room left. It is selected as soon as it is added, so its settings panel is already open below the canvas.

A widget shown greyed with an Upgrade pill exists but is above your plan — it is shown rather than hidden, because the only other way to find out what a paid plan buys would be to buy it. A widget missing from the palette altogether belongs to an integration the household has switched off; the line under the palette names those and links to Integrations.

Moving, resizing and removing

  • Drag anywhere on a widget to move it. Drag its bottom-right corner to resize it.
  • Nothing compacts. A widget stays in the row you put it in rather than sliding up to close a gap, so a deliberate space stays a space.
  • Widgets are free to overlap. That is what makes a clock over a full-bleed photograph possible, and it is why the layer settings exist.
  • Nothing can leave the canvas. Drags and resizes are bounded by the grid, and no widget can be made wider than twelve columns or taller than the grid it is on.
  • Selection happens on press rather than on click. Any movement at all counts as a drag and a drag suppresses the click, so click-to-select used to miss whenever the pointer shifted a pixel.
  • The ✕ in a widget's top-right corner removes it. So does Remove in its settings panel below the canvas.
  • A widget's label on the canvas carries its name, the layer it is on when that is not Normal, and a summary of its visibility rule when it has one — 07:00–09:00 · weekdays · someone here.

The Layers list in the right-hand sidebar selects anything on the scene, including a widget completely covered by another one. When a full-screen backdrop has swallowed something, that list is how you reach it.

The live preview

Preview on — which is how the editor opens — renders the real screen behind the layout grid, with your real data in it: your photographs, your calendar, the actual temperature outside. The widget boxes become dashed outlines so the content shows through, and all the dragging still happens in the grid layer on top.

It is not a mock-up. It is the same renderer the wall runs, embedded in the page and fed the layout you are editing, which is why it is worth trusting about legibility and about how much text fits in a box.

Preview off turns the canvas back into plain grey boxes. That is easier to aim at when you are placing a dozen widgets quickly, and it is the honest fallback when the preview cannot start — in which case the canvas says Live preview unavailable and everything else carries on working.

The toolbar and the sidebar

Scene picker
Which scene you are editing. Also holds New scene… and Scenes on this screen…, the dialog for adding a shared scene, reordering the list and choosing the default.Default: The screen's first scene — though a reload keeps you on the one you were already editing
⋯ (scene actions)
Rename…, Make default, Show on screen now, Stop showing and Delete scene. Delete is unavailable while a scene is a screen's default or its only one.Default: —
Share / Shared ✓
Lets any screen in the household use this scene, and lets the scheduler put it on one. Turning it off again takes the scene off every other screen and deletes the times it was scheduled for there, so Mirra names those screens and asks first.Default: Off — a scene belongs to the screen it was made for
Preview on / Preview off
Renders the real screen behind the layout grid.Default: On
Screen size
The shape the canvas and the preview draw. Ten common panel sizes, a custom width × height, or “No exact size” with just landscape or just portrait. A size wider than it is tall is landscape and one taller than it is wide is portrait — that follows from the numbers rather than being a separate choice. This changes what you are designing against, not the screen itself.Default: No exact size — 16:9 in landscape, 9:16 in portrait
Rotation
Automatic, 90° (turned clockwise), 180° (upside down) or 270° (turned anticlockwise). This turns the picture on the wall and takes effect within a minute. It deliberately does not re-flow anything: orientation decides the grid a scene is laid out on, rotation decides which way up the panel is, and a monitor on its side is portrait whichever way you turned it.Default: Automatic — turn the picture only when the layout's shape disagrees with the panel's
Layers (sidebar)
Everything on the scene, topmost first, with the layer named beside each row. Click a row to select that widget; the arrows move it up or down a layer.Default: —
Schedule (sidebar)
This screen's rules: a scene, a start time and the days it runs. Saved by Save & push along with the layout.Default: No rules — the default scene shows all day
Theme accent (this scene)
Five accent colours. It is a property of the scene rather than of a widget, so everything on the scene picks up the same one.Default: #7dd3fc, the pale blue

Show on screen now puts the scene you are editing on the wall immediately, ignoring the schedule, and holds it there until you choose Stop showing or the screen restarts. It is the fastest way to check something on real glass; it is also easy to walk away and leave on. The sidebar also carries Presence, Screen commands and the Danger zone — those belong to the screen rather than to the scene.

Saving and pushing

Only the scenes you actually changed are written. That matters once scenes are shared: pushing every scene on the screen would rewrite a shared one that was merely being looked at, and tell three other walls to reload for nothing.

Every screen showing a changed scene is told to refetch, not just the one whose editor you had open. A shared scene edited once has to reach all of them, and a screen that is not notified simply keeps yesterday's layout until it next restarts.

  1. Make your changes

    Unsaved changes appears in the header as soon as anything moves, is added, is removed or has a setting changed.

  2. Press Save & push

    The button is inactive until there is something to save, so a page you have only been reading cannot be saved by accident.

  3. Watch for Saved & pushed ✓

    It appears for a couple of seconds. The screens update within moments — there is nothing to re-upload and nothing to restart.

Several controls on this page save on their own and are not covered by Save & push: the screen's size and rotation, the presence and gesture settings, and the list of scenes on the screen. Changing the screen's shape in a way that changes its orientation reloads every scene; if you have unsaved layout changes, Mirra asks first, and going ahead loses them.

Related

  • Screen settingsEvery setting on a screen's own page that belongs to the screen rather than to a scene — its shape, which way up it is, its camera and gestures, the commands you can send it, and unpairing.
  • Widget appearanceEvery widget carries its own appearance settings — the layer it sits on, the surface behind it, how its contents are aligned, how large and how solid — and these are what make overlays possible.
  • The schedulerSchedule rules say which scene a screen shows from a given time on given days, and the Scheduler draws every screen's day as a timeline you can drag scenes onto.
  • Every widget there isThe complete list of widgets Mirra ships with, grouped the way the scene editor groups them, with what each one shows and what it needs before it will show anything.
  • Screen types, and what a screen can doWhat hardware can act as a Mirra screen, what each display reports about itself, and exactly what the capability record does and does not cover.
  • Pairing a screenHow a display joins your household: the six-character code it shows, what to type into Mirra, what pairing creates, and what happens when you unpair.