diff --git a/content/core/firmware-updates.mdx b/content/core/firmware-updates.mdx
index 306e75a..0b34e06 100644
--- a/content/core/firmware-updates.mdx
+++ b/content/core/firmware-updates.mdx
@@ -34,29 +34,12 @@ The userspace ARM64 binaries (`frankenfirmware`, `libnats`, `nats-server`) run a
---
-## Option 1: Factory reset and official OTA (safest)
-
-If you are using matching hardware (such as a Pod 3 hub with a Pod 3 cover, or a Pod 4 hub with a Pod 4 cover) and want the safest path to the latest vendor firmware, use the official factory reset procedure.
-
-1. **Perform a hardware factory reset:**
- Follow the firmware reset photos for your model in [free-sleep's installation guide](https://github.com/throwaway31265/free-sleep/blob/e5172139874a274d1ced12c8da052ab2cbaa286d/INSTALLATION.md). The hub boots from its factory backup partition and resets network settings.
-2. **Pair with the official Eight Sleep app:**
- Temporarily pair the Pod to the official mobile app over Wi-Fi. Allow the hub to connect to Eight Sleep's servers and download official over-the-air (OTA) updates. Wait until all firmware and subsystem updates finish applying.
-3. **Re-gain root access and reinstall sleepypod:**
- Once the official firmware is up to date, re-open the root shell using the hardware serial procedure described in [Open your Pod and get root](/core/root-access/), then install sleepypod following [Install and update Core](/core/installation/).
-
-
- **Limitation:** Official OTA will not resolve cross-generation hardware pairings (for example,
- official servers will not push STM32G0 Pod 4 cover firmware to a registered Pod 3 hub). For
- mismatched hardware or offline setups, use Option 2 below.
-
-
----
-
-## Option 2: Manual subsystem update (surgical extraction)
+## Method 1: Manual subsystem update
This method extracts universal 64-bit ARM binaries and STM32 microcontroller firmware from an official `.swu` release and stages them directly on your rooted Pod.
+This procedure replaces selected subsystem files without installing a complete stock operating system. It does not intentionally change your SSH keys or masked update services. That narrower scope does not guarantee compatibility or recovery: use only the verified hardware combination and keep the backups below.
+
### Step 1: Back up the existing pod state
Connect to your Pod over SSH as `root` (port 8822) and back up the current daemon and firmware directory:
@@ -367,9 +350,12 @@ Finally, check `/persistent/sleepypod-data/biometrics.db` to confirm that `cap_s
This procedure is strictly limited to boards running on the verified **Slot A** eMMC boot path (`/dev/mmcblk0p5`, `rootfs_a`) described in the [root access guide](/core/root-access/#6-boot-a-temporary-administrator-shell). Do not run this on SD-card installations (such as Pod 3 with an SD card), systems booted from Slot B, or unknown partition layouts.
-**Leaving Slot B untouched is recommended.** If Slot B retains its original factory installation, a hardware factory reset will safely boot into a pristine stock environment. If you overwrite Slot B, factory reset will boot into this modified environment instead.
+**Weighing Slot B synchronization:**
+
+- **Leaving Slot B untouched:** If Slot B retains its original factory installation, a hardware factory reset boots that factory environment. If stock update services are active and the hub has internet access, it may then install newer firmware. The root-access procedure has not been verified against every resulting firmware version.
+- **Synchronizing Slot B:** Copying SSH keys, configurations, and subsystem binaries to Slot B is intended to preserve access and the verified subsystem combination after failover. It does not guarantee access: this script does not disable Slot B’s stock update services, and a later OTA may replace the copied files. Synchronizing Slot B also modifies the factory backup.
-Only synchronize Slot B if you are completely confident in your installation and want to prevent a lockout or firmware mismatch if the hardware ever fails over to Slot B.
+Only synchronize Slot B if you are completely confident in your installation and want to prevent a firmware mismatch or loss of SSH access if the hardware ever fails over to Slot B.
@@ -502,4 +488,32 @@ ssh -p 8822 root@POD_IP "
---
+## Alternative: Official OTA via factory reset
+
+
+ **Root access after OTA is not guaranteed.**
+
+Factory reset and pairing with the official app can install newer vendor firmware. The pinned root-access instructions describe particular hardware and firmware; they do not establish that the same serial/UART procedure works after every future update.
+
+Do not assume that you can regain root access or reinstall sleepypod afterward. This guide has no verified firmware-version evidence establishing a permanent UART lockout, so it does not claim that a particular update patches that method.
+
+**Do not use this method if you plan to keep root access or run sleepypod.** Only follow these steps if you are returning the device permanently to stock operation and will only use the official Eight Sleep service.
+
+
+
+For matched hardware returning to stock, first confirm that Slot B is untouched. **If Slot B was synchronized or its state is unknown, stop: do not continue to app pairing under this procedure.** A reset into modified Slot B is not a verified stock-restoration method. If you need to keep root access, use Method 1 only for a supported subsystem update.
+
+1. **Perform a hardware factory reset:**
+ Follow the firmware reset photos for your model in [free-sleep's installation guide](https://github.com/throwaway31265/free-sleep/blob/e5172139874a274d1ced12c8da052ab2cbaa286d/INSTALLATION.md). If Slot B remains untouched, the hub boots from its factory backup partition and resets network settings. If you previously synchronized Slot B, a factory reset boots that modified environment instead of pristine factory stock.
+2. **Pair with the official Eight Sleep app:**
+ Pair the Pod to the official mobile app over Wi-Fi. Allow the hub to connect to Eight Sleep's servers and download official over-the-air (OTA) updates until all firmware and subsystem updates finish applying.
+
+
+ **Hardware limitation:** Official OTA will not resolve cross-generation hardware pairings (for
+ example, official servers will not push STM32G0 Pod 4 cover firmware to a registered Pod 3 hub).
+ For cross-generation hardware, use Method 1 above.
+
+
+---
+
**Source reference:** [`sp-status` output format](https://github.com/sleepypod/core/blob/9bbc7232924fd2b18c7176c259556151aecc6412/scripts/bin/sp-status) · [Root SSH key resolution in the Core installer](https://github.com/sleepypod/core/blob/9bbc7232924fd2b18c7176c259556151aecc6412/scripts/lib/ssh-helpers) · [free-sleep firmware reset and slot check](https://github.com/throwaway31265/free-sleep/blob/e5172139874a274d1ced12c8da052ab2cbaa286d/INSTALLATION.md) · [Archived Pod 3 `.swu` releases](http://web.archive.org/web/*/fw.8slp.net/pod3-updates/pod3/releases/*). Stream limits, subject rates, serial port mapping, and the Slot B `sshd` configuration were checked on an MT8365 Pod 3 hub (`pn 20500`, revision `0504`) with a Pod 4 cover, using artifacts extracted from release `77af88bd8b941fed81786c09a9ac3cdb1e97b126`.