diff --git a/docs/assets/mtr1-corner-mount-view.svg b/docs/assets/mtr1-corner-mount-view.svg
new file mode 100644
index 0000000000..335757e6d9
--- /dev/null
+++ b/docs/assets/mtr1-corner-mount-view.svg
@@ -0,0 +1,42 @@
+
diff --git a/docs/products/general/setup/apollo-mmwave-dashboard-setup.md b/docs/products/general/setup/apollo-mmwave-dashboard-setup.md
index 80b473f1ad..13f4b39c7a 100644
--- a/docs/products/general/setup/apollo-mmwave-dashboard-setup.md
+++ b/docs/products/general/setup/apollo-mmwave-dashboard-setup.md
@@ -1,6 +1,6 @@
---
title: Set up the Apollo mmWave dashboard
-description: Install the Apollo mmWave integration from HACS and get an auto-built Home Assistant dashboard with a tuning or zone map tab for every Apollo radar sensor.
+description: Install the Apollo mmWave integration from HACS or the Home Assistant Marketplace and get an auto-built Home Assistant dashboard with a tuning or zone map tab for every Apollo radar sensor.
---
# Set up the Apollo mmWave dashboard
@@ -27,32 +27,51 @@ If you built the [MSR-2 tuning dashboard](/products/msr2/setup/msr2-tuning-dashb
[](https://my.home-assistant.io/redirect/info/)
- - HACS 2.0.5 or newer is installed and set up. HACS is a community store for Home Assistant that installs and updates custom integrations like this one. If you don't have it yet, follow the [HACS download guide](https://hacs.xyz/docs/use/download/download/) and then the [initial configuration guide](https://hacs.xyz/docs/configuration/basic). Setup asks you to sign in with a free GitHub account. On Home Assistant OS, the button below opens the **Get HACS** app that the download guide uses.
+ - You have a way to install community integrations like this one. Which one depends on your Home Assistant version:
+ - **Home Assistant 2026.11 or newer** has the **Marketplace** built in, under **Settings → Marketplace**. It replaces HACS, and it moves an existing HACS setup over on its own, Apollo mmWave included. Adding a repository from a link needs a free GitHub account, which the Marketplace asks you to connect the first time. A GitHub connection you made for HACS carries over.
+ - **Home Assistant 2026.10 or earlier** needs HACS 2.0.5 or newer, installed and set up. HACS is a community store for Home Assistant that installs and updates custom integrations. If you don't have it yet, follow the [HACS download guide](https://hacs.xyz/docs/use/download/download/) and then the [initial configuration guide](https://hacs.xyz/docs/configuration/basic). Setup asks you to sign in with a free GitHub account. On Home Assistant OS, the button below opens the **Get HACS** app that the download guide uses.
- [](https://my.home-assistant.io/redirect/supervisor_app/?app=cb646a50_get&repository_url=https%3A%2F%2Fgithub.com%2Fhacs%2Faddons)
+ [](https://my.home-assistant.io/redirect/supervisor_app/?app=cb646a50_get&repository_url=https%3A%2F%2Fgithub.com%2Fhacs%2Faddons)
- Your Apollo sensor is already in Home Assistant through the ESPHome integration. If it isn't, work through [getting started](/products/general/setup/getting-started.md) first.
-## Install Apollo mmWave through HACS
+## Install Apollo mmWave through HACS or the Marketplace { #install-apollo-mmwave-through-hacs }
-Apollo mmWave installs from its GitHub repository, so you add that repository to HACS once as a custom repository. From then on HACS tracks updates for it like any other integration. The button under step 1 covers steps 1 to 5: it adds the repository, after HACS asks you to confirm, and opens Apollo mmWave so you can go on at step 6.
+Apollo mmWave installs from its GitHub repository. On Home Assistant 2026.11 or newer you install it from the built-in **Marketplace**, and on older versions from HACS, so pick the tab for your version (**Settings → About** shows it). The button under step 1 works with both.
+
+Apollo mmWave has been accepted into the community list that HACS and the Marketplace both search, but it may not show up in a search yet. Until it does, you add its repository once yourself. From then on, updates arrive like any other integration's.
If you installed Apollo mmWave from the original repository, bharvey88/apollo-mmwave, which is no longer on GitHub, follow [From the original Apollo mmWave repository](#from-the-original-apollo-mmwave-repository) instead. It switches HACS over without setting anything up again.
-1. Open **HACS** from your Home Assistant sidebar.
+=== "Marketplace (Home Assistant 2026.11 or newer)"
- [](https://my.home-assistant.io/redirect/hacs_repository/?owner=ApolloAutomation&repository=apollo-mmwave-main&category=integration)
+ 1. Go to **Settings → Marketplace**. Or use the button below: it opens Apollo mmWave in the Marketplace, and if the Marketplace doesn't list it yet, it shows an **Add custom repository** box first. Click **Add** there and go on at step 4.
-2. Click the three-dot menu in the upper right corner and choose **Custom repositories**.
-3. Paste `https://github.com/ApolloAutomation/apollo-mmwave-main` into the **Repository** field.
-4. Set **Type** to **Integration** and click **Add**. The repository shows up in the list; close the dialog.
-5. Search HACS for **Apollo mmWave** and open it.
-6. Click **Download**, then confirm with **Download** in the dialog that opens.
-7. Restart Home Assistant: go to **Settings → System**, click the power icon in the upper right corner, choose **Restart Home Assistant**, then click **Restart**. Wait for it to come back.
+ [](https://my.home-assistant.io/redirect/hacs_repository/?owner=ApolloAutomation&repository=apollo-mmwave-main&category=integration)
- [](https://my.home-assistant.io/redirect/system_dashboard/)
+ 2. Search for **Apollo mmWave**. If it's listed, open it and go on at step 4.
+ 3. If it isn't listed, click **Add from link**. Paste `https://github.com/ApolloAutomation/apollo-mmwave-main` into the **GitHub link** field and click **Add**. If a **Type** field appears, set it to **Integration** and click **Add** again. Then search for **Apollo mmWave** and open it.
+ 4. Click **Install**, then **Install** again in the dialog that opens.
+
+ Adding a repository from a link needs a connected GitHub account. If yours isn't connected yet, **Add** opens **Connect GitHub** first, which gives you a code to enter on GitHub. The button above shows **Connect GitHub to add the custom repository ApolloAutomation/apollo-mmwave-main, then open the link again.** instead: connect GitHub, then click the button again.
+
+=== "HACS (Home Assistant 2026.10 or earlier)"
+
+ 1. Open **HACS** from your Home Assistant sidebar. Or use the button below: it opens Apollo mmWave in HACS, and if HACS doesn't list it yet, it shows an **Add custom repository** box first. Click **Add** there and go on at step 4.
+
+ [](https://my.home-assistant.io/redirect/hacs_repository/?owner=ApolloAutomation&repository=apollo-mmwave-main&category=integration)
-Home Assistant only loads a new integration when it starts, so the restart is what makes Apollo mmWave available to add in the next step.
+ 2. Search HACS for **Apollo mmWave**. If it's listed, open it and go on at step 4.
+ 3. If it isn't listed, click the three-dot menu in the upper right corner and choose **Custom repositories**. Paste `https://github.com/ApolloAutomation/apollo-mmwave-main` into the **Repository** field, set **Type** to **Integration**, and click **Add**. The repository shows up in the list. Close the dialog, then search HACS for **Apollo mmWave** and open it.
+ 4. Click **Download**, then confirm with **Download** in the dialog that opens.
+
+The Marketplace can usually load a new integration without a restart. If it opens the Apollo mmWave setup dialog after the install, skip the restart and go on at step 3 of [Add the integration](#add-the-integration).
+
+Otherwise, restart Home Assistant: go to **Settings → System**, click the power icon in the upper right corner, choose **Restart Home Assistant**, then click **Restart**. Wait for it to come back. Until then, HACS lists Apollo mmWave as **Pending restart**, and the Marketplace as **Restart required**.
+
+[](https://my.home-assistant.io/redirect/system_dashboard/)
+
+With HACS, Home Assistant only loads a new integration when it starts, so the restart is what makes Apollo mmWave available to add in the next step.
## Add the integration
@@ -62,7 +81,7 @@ This is the step that builds your dashboard. You add Apollo mmWave once and it c
[](https://my.home-assistant.io/redirect/config_flow_start/?domain=apollo_mmwave)
-2. Search for **Apollo mmWave** and select it. If it isn't in the list, refresh the browser page (your browser may still hold the list from before the restart) and search again.
+2. Search for **Apollo mmWave** and select it. If it isn't in the list, refresh the browser page (your browser may still hold the list from before the restart) and search again. In the Home Assistant app, close the app fully and open it again instead.
3. The dialog notes that the integration serves its own cards and dashboard, with nothing else to download, and offers to add the dashboard for you. Leave both boxes ticked (they're on by default) to get the dashboard this guide describes:
- **Add the Apollo mmWave dashboard to the sidebar** creates the dashboard once, when you click **Submit**. Untick it only if you'd rather place the cards on your own dashboards; you can still add the dashboard later from the integration options.
- **Only administrators can see it** keeps the dashboard out of other users' sidebars. Untick it to show the dashboard to everyone in your home. You can change this later in the dashboard's settings under **Settings → Dashboards**.
@@ -173,13 +192,44 @@ The cards also work on their own: in the card picker they're listed as **Apollo
If this is your first Apollo dashboard, skip this section and [calibrate your radar](apollo-mmwave-dashboard.md#calibrate-with-an-empty-room) or [draw your zones](apollo-mmwave-dashboard.md#draw-zones-on-the-r-pro-1-and-mtr-1). [Troubleshooting](#troubleshooting) is at the end of this page if something didn't load.
-Before any upgrade, make a full Home Assistant backup under **Settings → System → Backups**, so you can go back if something goes wrong. After you update Apollo mmWave in HACS, restart Home Assistant, then refresh the dashboard in your browser so it loads the new cards.
+Before any upgrade, make a full Home Assistant backup under **Settings → System → Backups**, so you can go back if something goes wrong. Then update Apollo mmWave, restart Home Assistant, and reload the dashboard so it loads the new cards, as the next two sections show.
[](https://my.home-assistant.io/redirect/backup/)
+### Update Apollo mmWave
+
+Home Assistant lists an Apollo mmWave update with its other updates under **Settings → System → Updates**: open it and click **Update**. You can also update from the Marketplace or HACS, which is also where you pick a different version:
+
+=== "Marketplace (Home Assistant 2026.11 or newer)"
+
+ 1. Go to **Settings → Marketplace** and open **Apollo mmWave**. The **Installed** tab lists it. When a new version is out, its page reads **Update available**.
+ 2. Click **Update**, then **Update** again in the dialog that opens.
+
+ To install a different version, open the three-dot menu in the upper right corner of the Apollo mmWave page and choose **Install another version**. Pick the version under **Version**, then click **Update**. The dialog reminds you that restoring a backup is the safer way to go back to an earlier version, so use the backup you made when you can.
+
+=== "HACS (Home Assistant 2026.10 or earlier)"
+
+ 1. Open **HACS** and open **Apollo mmWave**. When a new version is out, HACS lists it as **Pending update**.
+ 2. Click the three-dot menu in the upper right corner, choose **Redownload**, and click **Download** in the dialog that opens. The dialog names the version it downloads.
+
+ To install a different version, open **Need a different version?** in the same dialog and pick it under **Release** before you click **Download**. HACS warns there that a rollback is better done by restoring a backup, so use the backup you made when you can.
+
+### Load the new cards
+
+An update takes effect after a restart, and a browser or the Home Assistant app can keep showing the previous version's cards until it loads them again:
+
+1. Restart Home Assistant: go to **Settings → System**, click the power icon in the upper right corner, choose **Restart Home Assistant**, then click **Restart**. Until you do, HACS lists Apollo mmWave as **Pending restart**, and the Marketplace as **Restart required**.
+
+ [](https://my.home-assistant.io/redirect/system_dashboard/)
+
+2. In a browser on a computer, reload the dashboard with **Ctrl+Shift+R** (**Cmd+Shift+R** on a Mac). If a card still looks old, reload once more.
+3. In the Home Assistant app on a phone or tablet, close the app fully (swipe it away in the app switcher) and open it again. If a card still looks old, clear the app's cache:
+ - **Android**: **Settings → Companion app → Troubleshooting → Reset frontend cache**.
+ - **iPhone and iPad**: **Settings → Companion app → Debugging → Clear web view cache**, then **Clear Cache**. Older versions of the app call it **Reset frontend cache**.
+
### Updating to Apollo mmWave 2.3.0
-In most setups 2.3.0 needs nothing from you. After the restart and a refresh, each tab gets the new layout: **Start here** and **Radar setup** at the top, locked sliders, the zone map in your units with the LD2450's cards beside it, and the **Device** card at the bottom. Check these if they apply to you:
+In most setups 2.3.0 needs nothing from you. After the restart and a reload, each tab gets the new layout: **Start here** and **Radar setup** at the top, locked sliders, the zone map in your units with the LD2450's cards beside it, and the **Device** card at the bottom. Check these if they apply to you:
- **Zones drawn before 2.2.7 with Home Assistant in US customary units.** Before 2.2.7, the zone map read the radar's positions in inches as if they were millimeters, so the dots sat at or near the sensor. A zone drawn around those dots may not cover where people show up now. Walk through the room, watch the dots, and redraw any zone that's off.
- **A dashboard you took control of** keeps the cards it had. To get the new ones, see [Use your own layout](#use-your-own-layout).
@@ -194,7 +244,7 @@ Up to 2.2.5, Apollo mmWave rebuilt its dashboard every time it loaded, and the *
- If it still builds itself (you never took control of it), the integration records it as the dashboard it created. The options can then remove it or write a device selection into it, and deleting the integration deletes it too. A dashboard you took control of is yours, and the integration leaves it alone.
- If you had turned the auto-create option off, the integration records no dashboard, and setup no longer deletes a dashboard you made yourself at `apollo-mmwave`. Add the integration's dashboard from the options whenever you want it.
-Going back to 2.2.5 or earlier from HACS turns the old behavior back on, as if the auto-create option were on: the dashboard is recreated or rewritten at every start, even if you had turned the option off. To go back, restore the backup you made before updating.
+Going back to 2.2.5 or earlier with HACS or the Marketplace turns the old behavior back on, as if the auto-create option were on: the dashboard is recreated or rewritten at every start, even if you had turned the option off. To go back, restore the backup you made before updating.
### From the MSR-2 tuning dashboard
@@ -218,7 +268,7 @@ Your thresholds, detection range, and every other setting live on the sensor its
4. At the bottom, delete the `ld2410_` templates under `streamline_templates:`. If nothing else on your dashboards uses Streamline Card, delete the whole `streamline_templates:` block.
5. Click **Save**.
-If no other cards use them, you can also remove Streamline Card and Plotly Graph Card from HACS. Apollo mmWave doesn't need either.
+If no other cards use them, you can also remove Streamline Card and Plotly Graph Card from HACS, or from the Marketplace on Home Assistant 2026.11 or newer. Apollo mmWave doesn't need either.
### From the original Apollo mmWave repository
@@ -226,6 +276,10 @@ Apollo mmWave used to install from the original repository, bharvey88/apollo-mmw
If the old copy is version 1.x or 2.0, not everything carries over on its own. Read the [upgrade notes in the changelog](https://github.com/ApolloAutomation/apollo-mmwave-main/blob/main/CHANGELOG.md#upgrading-to-20) first. Some cards and automations need a change by hand, and [From Apollo mmWave 1.x zone mapping](#from-apollo-mmwave-1x-zone-mapping) below sums them up.
+!!! warning "Switch before Home Assistant 2026.11"
+
+ These steps need HACS, so make the switch while Home Assistant is on 2026.10 or earlier. Home Assistant 2026.11 moves HACS into the built-in Marketplace, old entry included, and the Marketplace can't make this switch: under **Custom repositories** it won't remove an entry that's still installed (**Uninstall it first**), and it won't install the new repository while the old entry owns the `custom_components/apollo_mmwave` folder. Don't uninstall the old entry to get around this. While your Apollo mmWave entry exists, the Marketplace only offers **Delete and uninstall**, which deletes that entry with its dashboard, zones, and saved calibration values. If you're already on 2026.11, [contact Apollo support](/products/general/contact-us/contact-us-support.md) before you change anything.
+
!!! warning "Keep your Apollo mmWave entry in Home Assistant"
The switch happens in HACS only. If you choose **Delete** from the three-dot menu on the entry under **Settings → Devices & services → Apollo mmWave**, Home Assistant asks **Delete Apollo mmWave?** and warns that its devices and entities will be permanently deleted. Deleting it also deletes the Apollo mmWave dashboard it created, every zone, and the saved calibration values that **Undo** uses. Setting it up again starts from nothing.
@@ -234,7 +288,7 @@ If the old copy is version 1.x or 2.0, not everything carries over on its own. R
Both Apollo mmWave entries in HACS use the same `custom_components/apollo_mmwave` folder. **Remove**, on either entry, first shows **Integration is configured** and tells you to delete the configuration. Don't: **Navigate** leads to the integrations page, where **Delete** wipes your zones. **Ignore**, or closing the box, opens a **Remove** box whose **Remove** button deletes the folder, new download included, so Apollo mmWave won't load after the next restart. **Redownload** on the old entry fails because its repository is gone, and the folder can end up missing. Step 3 takes the old entry off the list without touching any files.
-1. Check two versions first. Home Assistant needs to be 2026.8.1 or newer (**Settings → About**). In **HACS**, click the three-dot menu in the upper right corner, choose **About HACS**, and check that **Integration version** is 2.0.5 or newer. The new repository won't download on older versions. Then make a full Home Assistant backup under **Settings → System → Backups** (see [Upgrade from an older setup](#upgrade-from-an-older-setup)).
+1. Check two versions first. Home Assistant needs to be 2026.8.1 or newer, and older than 2026.11 (**Settings → About**). In **HACS**, click the three-dot menu in the upper right corner, choose **About HACS**, and check that **Integration version** is 2.0.5 or newer. The new repository won't download on older versions. Then make a full Home Assistant backup under **Settings → System → Backups** (see [Upgrade from an older setup](#upgrade-from-an-older-setup)).
2. In **HACS**, click the three-dot menu in the upper right corner and choose **Custom repositories**.
3. Find the row whose second line reads **bharvey88/apollo-mmwave (integration)** and click the trash can icon on that row. There's no confirmation, so read the second line before you click: removing the wrong row deletes no files, but you have to add that repository again. This only takes the old entry off the HACS list. The files in `custom_components/apollo_mmwave` stay where they are, and Apollo mmWave keeps running.
- If you already added the new repository, there are two rows. Remove only the bharvey88/apollo-mmwave one.
@@ -250,7 +304,7 @@ If the old copy is version 1.x or 2.0, not everything carries over on its own. R
[](https://my.home-assistant.io/redirect/system_dashboard/)
-After the restart, HACS shows one **Apollo mmWave** entry with the status **Downloaded**. Everything else is where you left it: your same entry under **Settings → Devices & services → Apollo mmWave**, the Apollo mmWave dashboard in the sidebar, your zones on the zone map, your previous calibration values behind **Undo**, and the same entity IDs. If a card looks old or doesn't load, do a hard refresh with **Ctrl+Shift+R** (**Cmd+Shift+R** on a Mac). From here on, HACS tracks updates from the new repository.
+After the restart, HACS shows one **Apollo mmWave** entry with the status **Downloaded**. Everything else is where you left it: your same entry under **Settings → Devices & services → Apollo mmWave**, the Apollo mmWave dashboard in the sidebar, your zones on the zone map, your previous calibration values behind **Undo**, and the same entity IDs. If a card looks old or doesn't load, reload it as [Load the new cards](#load-the-new-cards) shows: **Ctrl+Shift+R** (**Cmd+Shift+R** on a Mac) in a browser, or close the Home Assistant app fully and open it again. From here on, HACS tracks updates from the new repository, and Home Assistant 2026.11 hands that over to the Marketplace.
HACS may leave its own update entity for the old repository behind, showing as unavailable. It belongs to HACS, not Apollo mmWave, so deleting it is optional and doesn't touch your zones.
@@ -292,7 +346,7 @@ Work through these in order:
- If it isn't listed, the integration has no dashboard: you unticked **Add the Apollo mmWave dashboard to the sidebar** during setup, setup couldn't create it, or it was deleted. Apollo mmWave never recreates it on its own, so add it from the integration options with **Add the Apollo mmWave dashboard** (see [Manage the dashboard](#manage-the-dashboard)).
- If another dashboard already uses the `apollo-mmwave` address, such as one you made yourself, the integration leaves that one as it is and doesn't create its own. Adding it from the options then shows **The dashboard could not be created. Another dashboard may already use /apollo-mmwave; the Home Assistant log says why. You can add one from Settings > Dashboards > Add dashboard > Apollo Radar Tuning instead.**
-- Open **Settings → System → Logs** and look for a warning that starts with **Apollo mmWave:**. If setup or the options couldn't create the dashboard, the warning says why and points you to the dashboard picker: **Add one from Settings > Dashboards > Add dashboard > Apollo Radar Tuning (strategy type 'custom:apollo-radar-tuning').** You'll also see a warning that `apollo_mmwave` is a custom integration Home Assistant hasn't tested. Every custom integration installed through HACS logs that one, so you can ignore it.
+- Open **Settings → System → Logs** and look for a warning that starts with **Apollo mmWave:**. If setup or the options couldn't create the dashboard, the warning says why and points you to the dashboard picker: **Add one from Settings > Dashboards > Add dashboard > Apollo Radar Tuning (strategy type 'custom:apollo-radar-tuning').** You'll also see a warning that `apollo_mmwave` is a custom integration Home Assistant hasn't tested. Every custom integration installed through HACS or the Marketplace logs that one, so you can ignore it.
[](https://my.home-assistant.io/redirect/logs/)
@@ -332,7 +386,7 @@ The **Start here** card adds **Offline right now.**, and the **Radar setup** car
### An Apollo card shows an error after an update
-After you update Apollo mmWave through HACS and restart, a browser that still holds the previous version's files can show the Apollo cards as error boxes that read **Custom element doesn't exist**. Refresh the page. Each release loads its cards under a new versioned address, so a fresh page load picks up the current version. If the error is still there, do a hard refresh with **Ctrl+Shift+R** (**Cmd+Shift+R** on a Mac). If that doesn't clear it either, check **Settings → System → Logs** for a warning that starts with **Apollo mmWave:** about Lovelace resources. On a system that manages its dashboard resources in YAML, the warning lists the two resource addresses to add by hand.
+After you update Apollo mmWave and restart, a browser that still holds the previous version's files can show the Apollo cards as error boxes that read **Custom element doesn't exist**. Refresh the page. Each release loads its cards under a new versioned address, so a fresh page load picks up the current version. If the error is still there, do a hard refresh with **Ctrl+Shift+R** (**Cmd+Shift+R** on a Mac). In the Home Assistant app on a phone or tablet, close the app fully and open it again, then clear its cache if the error stays, as [Load the new cards](#load-the-new-cards) shows. If that doesn't clear it either, check **Settings → System → Logs** for a warning that starts with **Apollo mmWave:** about Lovelace resources. On a system that manages its dashboard resources in YAML, the warning lists the two resource addresses to add by hand.
[](https://my.home-assistant.io/redirect/logs/)
diff --git a/docs/products/msr1/setup/apollo-mmwave-dashboard-setup.md b/docs/products/msr1/setup/apollo-mmwave-dashboard-setup.md
index 9b6af07db1..73c5380c76 100644
--- a/docs/products/msr1/setup/apollo-mmwave-dashboard-setup.md
+++ b/docs/products/msr1/setup/apollo-mmwave-dashboard-setup.md
@@ -1,6 +1,6 @@
---
title: Set up the Apollo mmWave dashboard for the MSR-1
-description: Install the Apollo mmWave integration from HACS and get an auto-built Home Assistant dashboard with a radar tuning tab for your Apollo MSR-1.
+description: Install the Apollo mmWave integration from HACS or the Home Assistant Marketplace and get an auto-built Home Assistant dashboard with a radar tuning tab for your Apollo MSR-1.
---
# Set up the Apollo mmWave dashboard for the MSR-1
diff --git a/docs/products/msr1/setup/sensor-definitions.md b/docs/products/msr1/setup/sensor-definitions.md
index 2648fd9032..f1456dc7bf 100755
--- a/docs/products/msr1/setup/sensor-definitions.md
+++ b/docs/products/msr1/setup/sensor-definitions.md
@@ -10,6 +10,12 @@ Once added to Home Assistant you can configure different settings for your MSR-1
The **Default Update** column is how often each entity refreshes. Radar entities update in real time as targets move. The **LTR390 Light** and **LTR390 UV Index** sensors use the interval set by the **LTR390 Update Interval** number (60s by default).
+!!! tip "Lights that turn off while someone sits still"
+
+ Run room lights from **Radar Target**. It's on while the radar detects anyone, moving or still. The zone sensors also depend on the distance readings, so they can drop out while Radar Target stays on. Use a zone sensor only when you need one part of the room, and then leave **Reduce DB Reporting** off.
+
+ If the lights still turn off while someone sits still, raise **Radar Timeout** to 60 seconds or more. A longer timeout carries **Radar Target** through short dips and only delays the lights going off after everyone leaves. Changing **Radar Timeout** restarts the radar, and the radar may not find someone sitting still again until they move, so change it while nobody's sitting in the room, or ask them to move once afterward.
+
=== "Controls"
| Control | What it does |
@@ -38,9 +44,9 @@ Once added to Home Assistant you can configure different settings for your MSR-1
| **Radar Target** | real-time | Whether the radar detects a still or moving target. Good for triggering occupancy automations. |
| **Radar Moving Target** | real-time | Whether the radar currently has a moving target it is tracking. |
| **Radar Still Target** | real-time | Whether the radar currently has a still target. |
- | **Radar Moving Distance** | real-time | Distance to the moving target. Holds the last value when no moving target is present, so it can be misleading. |
- | **Radar Still Distance** | real-time | Distance to the still target. Holds the last value when no still target is present, so it can be misleading. |
- | **Radar Detection Distance** | real-time | The last detected distance by the radar. Holds the last known value, so it can sometimes be misleading. |
+ | **Radar Moving Distance** | real-time | Distance to the moving target in cm. Reports *Unknown* when no moving target is present. |
+ | **Radar Still Distance** | real-time | Distance to the still target in cm. Reports *Unknown* when no still target is present. |
+ | **Radar Detection Distance** | real-time | Distance to the target the radar detects, in cm. Reports *Unknown* when the radar detects nobody. |
| **Radar Move Energy** | real-time | The amount of movement measured by the LD2410. Faster movements report a higher percentage. |
| **Radar Still Energy** | real-time | The energy of the current still target. |
| **Radar Zone 1 Occupancy** | real-time | Whether someone is in Zone 1, a configurable distance band from the sensor. Defined by **Radar Zone 1 Start** and **Radar End Zone 1**. |
@@ -58,7 +64,7 @@ Once added to Home Assistant you can configure different settings for your MSR-1
| **BME280 Temperature Offset** | 14.54 °C | Calibrates the BME280 temperature reading to a known value. See the temperature & humidity calibration guide. |
| **BME280 Humidity Offset** | -18.86 % | Calibrates the BME280 humidity reading to a known value. See the temperature & humidity calibration guide. |
| **LTR390 Update Interval** | 60 s | How often the LTR390 light and UV sensors poll (1 to 300 seconds). Disabled by default. |
- | **Radar Timeout** | — | The time in seconds that the radar's presence stays detected after the target is lost. |
+ | **Radar Timeout** | 5 s | How long **Radar Target** stays on, in seconds, after the radar last detects someone. Raise it to 60 s or more if lights turn off while someone sits still. Changing it restarts the radar (see the tip above). |
| **Radar Max Move Distance** | — | Maximum distance gate for movement detection. Value between 2 and 8 inclusive. |
| **Radar Max Still Distance** | — | Maximum distance gate for still detection. Value between 2 and 8 inclusive. |
| **Radar Distance Resolution** | — | Best kept at 0.75 m in most cases. At 0.25 m the first few gates become very sensitive and the maximum detection distance shrinks a lot. Disabled by default. |
@@ -71,7 +77,7 @@ Once added to Home Assistant you can configure different settings for your MSR-1
| **Radar Control Bluetooth** | Off | Turns on the LD2410's Bluetooth so you can connect with the HLK Radar phone app (for example, to update the radar chip's own firmware, not the MSR-1 in general). |
| **Radar Engineering Mode** | — | Enables the radar's engineering mode, which exposes the per-gate energy readings used for tuning. |
| **Startup Light Blink** | On | Blinks the RGB LED on startup to show the device's connection status. |
- | **Reduce DB Reporting** | Off | Filters out small sensor changes so fewer values are logged to your Home Assistant database. |
+ | **Reduce DB Reporting** | Off | Sends fewer updates to Home Assistant, so its database grows more slowly. While it's on, **Radar Move Energy** and **Radar Still Energy** stop updating, the three distance sensors report only changes of 5 cm (2 in) or more, and the light, UV, and ESP temperature sensors only report larger changes, at least once an hour. **Radar Target**, **Radar Moving Target**, **Radar Still Target**, and the g0-g8 energies aren't affected. With it on, after the radar briefly loses someone and finds them again at almost the same distance, the distance sensors can stay *Unknown* and the zone sensors Clear while **Radar Still Target** is on, until the distance changes by 5 cm or more. Leave it off if you automate on the zone sensors. |
| **query params** | — | Queries the LD2410 for its current parameters. |
| **Factory Reset Radar** | — | Sets the radar's move and still thresholds back to the manufacturer's original values. |
| **Factory Reset ESP** | — | Erases settings and returns the device to factory firmware defaults. Disabled by default. |
diff --git a/docs/products/msr2/setup/apollo-mmwave-dashboard-setup.md b/docs/products/msr2/setup/apollo-mmwave-dashboard-setup.md
index d8f3748ea8..052d99f260 100644
--- a/docs/products/msr2/setup/apollo-mmwave-dashboard-setup.md
+++ b/docs/products/msr2/setup/apollo-mmwave-dashboard-setup.md
@@ -1,6 +1,6 @@
---
title: Set up the Apollo mmWave dashboard for the MSR-2
-description: Install the Apollo mmWave integration from HACS and get an auto-built Home Assistant dashboard with a radar tuning tab for your Apollo MSR-2.
+description: Install the Apollo mmWave integration from HACS or the Home Assistant Marketplace and get an auto-built Home Assistant dashboard with a radar tuning tab for your Apollo MSR-2.
---
# Set up the Apollo mmWave dashboard for the MSR-2
diff --git a/docs/products/msr2/setup/msr2-sensor-definitions.md b/docs/products/msr2/setup/msr2-sensor-definitions.md
index 3fb18f2a58..6e8e039609 100755
--- a/docs/products/msr2/setup/msr2-sensor-definitions.md
+++ b/docs/products/msr2/setup/msr2-sensor-definitions.md
@@ -10,6 +10,12 @@ Once added to Home Assistant you can configure different settings for your MSR-2
The **Default Update** column is how often each entity refreshes. Radar entities update in real time as targets move. The **LTR390 Light** and **LTR390 UV Index** sensors use the interval set by the **LTR390 Update Interval** number (60s by default).
+!!! tip "Lights that turn off while someone sits still"
+
+ Run room lights from **Radar Target**. It's on while the radar detects anyone, moving or still. The zone sensors also depend on the distance readings, so they can drop out while Radar Target stays on. Use a zone sensor only when you need one part of the room, and then leave **Reduce DB Reporting** off.
+
+ If the lights still turn off while someone sits still, raise **Radar Timeout** to 60 seconds or more. A longer timeout carries **Radar Target** through short dips and only delays the lights going off after everyone leaves. Changing **Radar Timeout** restarts the radar, and the radar may not find someone sitting still again until they move, so change it while nobody's sitting in the room, or ask them to move once afterward.
+
!!! note "Ensure that the LD2410 firmware version is V2.04.23022511 or later for proper integration functionality."
The newer version of the firmware includes an "auto calibrate" function, so you might want to test it out.
@@ -42,7 +48,7 @@ Once added to Home Assistant you can configure different settings for your MSR-2
| **Radar Still Target** | real-time | Whether a stationary target is currently detected. |
| **Radar Moving Distance** | real-time | Distance to a moving target in cm. Reports *Unknown* when no moving target is present. |
| **Radar Still Distance** | real-time | Distance to a still target in cm. Reports *Unknown* when no still target is present. |
- | **Radar Detection Distance** | real-time | Last detected distance from the radar in cm. Holds the last value, so it can be misleading when nothing is present. |
+ | **Radar Detection Distance** | real-time | Distance to the target the radar detects, in cm. Reports *Unknown* when the radar detects nobody. |
| **Radar Move Energy** | real-time | Amount of movement measured by the LD2410. Faster movement reads as a higher percentage. |
| **Radar Still Energy** | real-time | Energy of the current still target. |
| **Radar Zone 1 Occupancy** | real-time | Whether someone is in Zone 1. Zones are distance bands from the sensor, set with **Radar Zone 1 Start** and **Radar End Zone 1**. |
@@ -58,7 +64,7 @@ Once added to Home Assistant you can configure different settings for your MSR-2
| **Factory Reset ESP** | — | Erases settings and returns the device to factory firmware defaults. Disabled by default. |
| **Factory Reset Radar** | — | Resets the LD2410 radar to its factory move and still thresholds. |
| **Restart Radar** | — | Restarts the LD2410 radar module. |
- | **Radar Timeout** | — | How long presence stays detected, in seconds, after the target is lost. |
+ | **Radar Timeout** | 5 s | How long **Radar Target** stays on, in seconds, after the radar last detects someone. Raise it to 60 s or more if lights turn off while someone sits still. Changing it restarts the radar (see the tip above). |
| **Radar Max Move Distance** | — | Maximum distance gate for movement detection (gate 2 to 8). Use it to ignore movement past a chosen distance. |
| **Radar Max Still Distance** | — | Maximum distance gate for still detection (gate 2 to 8). Use it to ignore still targets past a chosen distance. |
| **Radar Zone 1 Start** | 0 cm | Start distance of Zone 1 from the sensor, in cm (0 to 800). |
@@ -74,7 +80,7 @@ Once added to Home Assistant you can configure different settings for your MSR-2
| **DPS310 Pressure Offset** | 0.0 hPa | Calibration offset for the DPS310 pressure reading (-100 to +100 hPa in 0.1 hPa steps). Disabled by default. A small subset of devices do not include a DPS310 sensor; if this reads *Unknown*, your device may be one of these units. |
| **DPS Temperature Offset** | 14.54 °C | Offsets heat from the ESP chip for a more accurate DPS310 temperature reading. A small subset of devices do not include a DPS310 sensor. |
| **CO2 Auto Calibration** | On | Keeps the SCD40 CO₂ sensor calibrated automatically. The sensor assumes it sees fresh air (about 420 ppm) at least once a week and corrects its baseline to match. Turn it off if the device sits in a space that rarely gets fresh air, then calibrate manually with **Calibrate SCD40 To 420ppm** every 1 to 2 years. |
- | **Reduce DB Reporting** | Off | Applies filters so many entities only report when they cross a threshold, using less Wi-Fi airtime and less Home Assistant database space. |
+ | **Reduce DB Reporting** | Off | Applies filters so many entities only report when they change by a set amount, using less Wi-Fi airtime and less Home Assistant database space. While it's on, **Radar Move Energy** and **Radar Still Energy** stop updating, the three distance sensors report only changes of 5 cm (2 in) or more, and the light, UV, pressure, and ESP temperature sensors only report larger changes, at least once an hour. **Radar Target**, **Radar Moving Target**, **Radar Still Target**, and the g0-g8 energies aren't affected. With it on, after the radar briefly loses someone and finds them again at almost the same distance, the distance sensors can stay *Unknown* and the zone sensors Clear while **Radar Still Target** is on, until the distance changes by 5 cm or more. Leave it off if you automate on the zone sensors. |
| **Startup Light Blink** | On | Blinks the RGB LED during the MSR-2's initial boot. |
=== "Diagnostic"
diff --git a/docs/products/mtr1/faq.md b/docs/products/mtr1/faq.md
index fa8cb97ac1..c2580e8238 100755
--- a/docs/products/mtr1/faq.md
+++ b/docs/products/mtr1/faq.md
@@ -44,7 +44,13 @@ description: Frequently asked questions about the MTR-1 mmWave sensor.
11\. **How do I adjust the sensitivity of the motion detection?**
-* Sensitivity can NOT be adjusted via the ESPHome configuration. The MTR-1 LD2450 mmWave sensor cannot be tuned like the MSR-2 can. The MTR-1 can set zones and track multiple users instead.
+* The LD2450 radar in the MTR-1 has no sensitivity setting, and ESPHome has none to offer, so it can't be tuned gate by gate like the MSR-2. Here's what you can adjust instead:
+ * **Where it's mounted and where it points.** This decides what the radar sees, including a little of the next room and reflections off mirrors and glass. See the [mounting tips](setup/general-tips.md#mounting).
+ * **Zones.** Draw zones on the [Apollo mmWave zone map](setup/apollo-mmwave-dashboard.md#draw-zones-on-the-r-pro-1-and-mtr-1) and automate on a zone's presence sensor: only someone inside the zone turns it on.
+ * **Spots to ignore.** Leave a spot outside every zone, such as a mirror, a fan, or the doorway to the next room, and nobody there turns a zone on.
+ * **Timeout** (**Radar Timeout** on the Apollo mmWave dashboard). It sets how long **LD2450 Presence** stays on after the radar stops seeing anyone in its whole view. It doesn't hold the zones you draw.
+ * **A delay in your automation.** Give the "turn off" trigger a delay, such as 2 minutes, so a short dropout doesn't turn the lights off.
+* Judge detection only while the MTR-1 is mounted where it will stay. Held in your hand, the whole room moves around the radar, so the dots and zones won't match the room.
12\. **Can the MTR-1 detect motion through walls?**
diff --git a/docs/products/mtr1/setup/apollo-mmwave-dashboard-setup.md b/docs/products/mtr1/setup/apollo-mmwave-dashboard-setup.md
index a7c9f5d7b9..70c228aa7e 100644
--- a/docs/products/mtr1/setup/apollo-mmwave-dashboard-setup.md
+++ b/docs/products/mtr1/setup/apollo-mmwave-dashboard-setup.md
@@ -1,6 +1,6 @@
---
title: Set up the Apollo mmWave dashboard for the MTR-1
-description: Install the Apollo mmWave integration from HACS and get an auto-built Home Assistant dashboard with a zone map tab for your Apollo MTR-1.
+description: Install the Apollo mmWave integration from HACS or the Home Assistant Marketplace and get an auto-built Home Assistant dashboard with a zone map tab for your Apollo MTR-1.
---
# Set up the Apollo mmWave dashboard for the MTR-1
diff --git a/docs/products/mtr1/setup/general-tips.md b/docs/products/mtr1/setup/general-tips.md
index c8805b1ed7..fe00e696f9 100755
--- a/docs/products/mtr1/setup/general-tips.md
+++ b/docs/products/mtr1/setup/general-tips.md
@@ -20,6 +20,15 @@ The onboard RGB LED will trigger the light sensor. Be cognizant of this when mak

+Where you mount the MTR-1 decides what its radar sees, and the zones you draw only match the room from that spot. Keep these in mind before you pick one:
+
+- **A corner mount sees a little past both walls.** The radar's view is 120 degrees wide and a corner is 90, so aimed along the corner's diagonal, the view reaches about 15 degrees past each wall. Through a thin wall it can pick up someone a short way into the next room, close to the sensor. The radar sees nothing behind itself, so where you can, put a neighboring room behind the sensor rather than beside its view.
+- **Mirrors, glass, and tile make ghosts.** Radar bounces off mirrors, glass shower doors, windows, and tiled walls, so a bathroom in particular can show a target where nobody is, or show one person twice. Aim the sensor away from large mirrors and glass where you can.
+- **Keep zones off shared walls.** Draw a Room zone about 30 cm (1 ft) inside any wall it shares with another room, so someone on the other side of the wall doesn't turn it on.
+- **Zones belong to the mounted sensor.** A zone matches the room only while the sensor stays mounted the way it was when you drew it. Move it or turn it and the whole room moves around the radar, so redraw your zones after you move it. Never judge detection with the MTR-1 in your hand: hold it and the dots and zones won't match the room.
+
+
+
## **LD2450 performance and electrical parameters**
## [**LD2450 datasheet**](https://www.tinytronics.nl/index.php?route=product/product/get_file&file=6000/HLK-LD2450-Instruction-Manual.pdf)
diff --git a/docs/products/mtr1/setup/sensor-definitions.md b/docs/products/mtr1/setup/sensor-definitions.md
index e2fb796730..76c27ed605 100755
--- a/docs/products/mtr1/setup/sensor-definitions.md
+++ b/docs/products/mtr1/setup/sensor-definitions.md
@@ -58,7 +58,7 @@ Once added to Home Assistant you can configure different settings for your MTR-1
|---------|:-------:|--------------|
| **ESP Reboot** | — | Restarts the device. Helpful for troubleshooting or refreshing the connection. |
| **Multi Target Tracking** | from module | Turns multi-target tracking on or off. Initial state is read from the LD2450 at boot. |
- | **Timeout** | 5 s | How long presence stays detected after the target is lost. See the ESPHome LD2450 docs. |
+ | **Timeout** | 5 s | How long **LD2450 Presence**, **LD2450 Moving Target**, and **LD2450 Still Target** stay on after the radar stops seeing a target of their kind. **LD2450 Presence** starts counting only once the radar sees nobody anywhere in its view, so it stays on while any target is in view. **LD2450 Moving Target** and **LD2450 Still Target** each count on their own, from the last moving or the last still target. It holds only those three, not zones: a zone you draw on the Apollo mmWave zone map turns off as soon as nobody is in it, because Apollo mmWave 2.3.0 zones have no hold. The Apollo mmWave dashboard calls this setting **Radar Timeout**. See the ESPHome LD2450 docs. |
| **Zone Type** | Disabled | Zone detection mode: `Disabled`, `Detection` (only detect targets inside the zone), or `Filter` (exclude the zone from detection). With `Detection` and no zones set, the radar detects nobody, so keep `Disabled` unless you use the radar's own zones (the **Zone-1 / Zone-2 / Zone-3** settings below). |
| **Zone-1 / Zone-2 / Zone-3 X1, X2** | — | Start and end X coordinates of the zone in mm (-4860 left to 4860 right). |
| **Zone-1 / Zone-2 / Zone-3 Y1, Y2** | — | Start and end Y coordinates of the zone in mm (0 to 7560). |
diff --git a/docs/products/mtr1/setup/zones-hlk.md b/docs/products/mtr1/setup/zones-hlk.md
index a087340b9e..76123c57cc 100755
--- a/docs/products/mtr1/setup/zones-hlk.md
+++ b/docs/products/mtr1/setup/zones-hlk.md
@@ -48,7 +48,7 @@ With the app installed, you'll turn on the radar's Bluetooth, connect to it from
!!! tip "There are three ways to use your MTR-1!"
- You can use any of these three choices to control your MTR-1 differently. The most common option is **Area Detection**, which lets you set up three areas and track three targets within them. **Close detection** (Disabled in Home Assistant): zone detection is off **Area Detection** (Detection): only detects targets inside your zones **Area Filtering** (Filter): ignores targets inside your zones
+ You can use any of these three choices to control your MTR-1 differently. If you draw zones on the Apollo mmWave dashboard, pick **Close detection** (Zone Type **Disabled**): the dashboard recommends it, because its zone map replaces the app's areas. Pick **Area Detection** only when you use the app's three areas instead of the zone map. **Close detection** (Disabled in Home Assistant): zone detection is off **Area Detection** (Detection): only detects targets inside your zones **Area Filtering** (Filter): ignores targets inside your zones
Close detection lets you use the sensor as a basic presence sensor, and Area Filtering lets you filter out an area and detect everything else, which is useful to avoid a fan!
diff --git a/docs/products/rpro1/setup/apollo-mmwave-dashboard-setup.md b/docs/products/rpro1/setup/apollo-mmwave-dashboard-setup.md
index dcf4c9d2d0..1d723f33d1 100644
--- a/docs/products/rpro1/setup/apollo-mmwave-dashboard-setup.md
+++ b/docs/products/rpro1/setup/apollo-mmwave-dashboard-setup.md
@@ -1,6 +1,6 @@
---
title: Set up the Apollo mmWave dashboard for the R PRO-1
-description: Install the Apollo mmWave integration from HACS and get an auto-built Home Assistant dashboard with a zone map tab for your Apollo R PRO-1, plus radar tuning for the optional LD2412 addon.
+description: Install the Apollo mmWave integration from HACS or the Home Assistant Marketplace and get an auto-built Home Assistant dashboard with a zone map tab for your Apollo R PRO-1, plus radar tuning for the optional LD2412 addon.
---
# Set up the Apollo mmWave dashboard for the R PRO-1
diff --git a/docs/products/rpro1/setup/zones-hlk.md b/docs/products/rpro1/setup/zones-hlk.md
index 85c6066692..4eb9dd47c6 100755
--- a/docs/products/rpro1/setup/zones-hlk.md
+++ b/docs/products/rpro1/setup/zones-hlk.md
@@ -52,7 +52,7 @@ Follow these steps to turn on the LD2450's Bluetooth and set up its zones in the
!!! tip "There are three ways to use your R PRO-1!"
- You can use any of these three choices to control your R PRO-1 differently. The most common option is "Detection" which lets you set up three areas and track three targets within them. **Disabled**: Disables multi-zone area detection and tracks one big area. **Detection**: Only detects targets within each of the three zones. **Filter**: Excludes a zone from detection and detects presence everywhere else.
+ You can use any of these three choices to control your R PRO-1 differently. If you draw zones on the Apollo mmWave dashboard, pick **Close detection** (**LD2450 Zone Type** **Disabled**): the dashboard recommends it, because its zone map replaces the radar's built-in zones. Pick **Area Detection** (**Detection**) only when you use the app's three areas instead of the zone map. **Disabled**: Disables multi-zone area detection and tracks one big area. **Detection**: Only detects targets within each of the three zones. **Filter**: Excludes a zone from detection and detects presence everywhere else.
Disabled allows you to use the sensor as a "basic" presence sensor and "Filter" lets you filter out an area and detect everything else, which is useful to avoid a fan!