A DEAD META PORTAL TURNED INTO A HOME ASSISTANT PANEL
Meta wound the Portal platform down. A free MIT-licensed launcher called Immortal installs over USB-C with ADB and turns it into a device you actually own.
HomeAutomation
- difficulty
- ●●○○○
- time
- an evening
- license
- MIT
- repo
- repo ACTIVE201 stars
●●○○○ · an evening · MIT · 201 stars · repo ACTIVE
WHAT YOU’LL NEED
Jump to section
COMPAREE VERDICT
Immortal is a custom launcher for discontinued Meta Portal devices: Portal, Portal+, Portal TV, Portal Go and the later Android 10 models. It replaces Meta's home screen with a fullscreen app grid, a photo-frame screensaver (Immich, SMB, WebDAV, iCloud albums), MQTT integration for Home Assistant, RTSP camera viewing, timers, a Wi-Fi intercom between Portals, and synced whole-home audio via Snapcast and Music Assistant. The provisioning kit installs it over USB-C with one double-click; a restore script brings the Portal back to stock. The app store is a hosted JSON catalog, and the launcher itself can update over the network without a cable. Used Portals sell for very little (about 20 dollars in Anoraker's video). Before you start, enable ADB on the Portal (Settings > Debug > ADB Enabled); the kit even downloads adb for you if your computer does not have it. The first-gen Portal+ has a broken Android installer dialog (a Meta display overlay renders it white-on-white), but the provisioning kit fixes that automatically. After that, the app store and sideloading work through the standard Android installer. The honest limits are the Portal's own: no Google Play Services and no root, so apps that need Google sign-in or DRM may not run.
IN THE REPO
GOOD TO KNOW
- —The APK, provisioning scripts, and app-store catalog JSON are all in the repository.
- —Installation is a double-click script (Provision-Portal.command / .bat) that fetches the latest release over USB-C with ADB enabled.
- —Restore-Portal script reverses everything — the device goes back to stock Meta software.
- —MIT licence — commercial use, modification, and redistribution are all allowed.
- —First-gen Portal+ (Android 9) has a broken installer dialog (white-on-white); the provisioning kit fixes it by disabling Meta's display overlay.
- —No root is possible: the bootloader cannot be unlocked, so deeper firmware changes are not possible; Immortal runs as a normal app.
Parts to buy
2 itemsFrom our check of the build. Exact quantities and part numbers are in the creator’s BOM.
Can I build this?
Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.
Videos
Please Don't Throw Away This Dead Smart Display10:55
Video by Anoraker (11 Jul 2026): why the Portal failed, ADB access, installing the Immortal launcher, other community apps, and limitations and privacy concerns.
More builds like this
All projectsGallery
Start here
Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.
- 1.Check which Portal generation you have (docs/first-gen-portals.md) (If you have a first-gen Portal+ or Portal TV, read this first: it explains the broken installer dialog and how the kit fixes it.)
- 2.Enable ADB on the Portal (docs/install.md) (On the Portal: Settings > Debug > ADB Enabled. When the Portal asks 'Allow USB debugging?', tap Allow.)
- 3.Connect the Portal over USB-C and run Provision-Portal.command (macOS/Linux) or Provision-Portal.bat (Windows) from provisioning/ (The script fetches the latest release automatically and installs it. On first-gen Portal+ it also fixes the broken installer dialog.)
- 4.Optional: configure MQTT for Home Assistant (docs/guides/home-assistant.md), set up multi-room audio (docs/guides/multi-room-audio-setup.md), or add photo sources in screensaver settings (All optional — the launcher and screensaver work out of the box.)
Resources
Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.
KNOWN ISSUES
- Skipping the ADB step. The kit needs ADB enabled on the Portal (Settings > Debug > ADB Enabled) and you must tap Allow on the 'Allow USB debugging?' prompt, otherwise the install cannot proceed.
- First-gen Portal+ (Android 9) ships with a broken Android installer dialog — it renders white-on-white. The provisioning kit fixes this by disabling Meta's display overlay, but if you skip the kit or set DISABLE_INSTALLER_OVERLAY=false in config.env, sideloading will fail.
- The bootloader cannot be unlocked and there is no root, so deeper firmware changes are not possible. Immortal works entirely within the constraints of a standard Android user-space app.
- Google Play Services are not present and cannot be added. Apps that depend on Google for sign-in, push notifications, or DRM may not work. Aurora Store installs many apps that do not need Play Services.
- USB-C thumb drives do not mount reliably on Portal Go. Copy screensaver photos to the device's own storage instead while it is plugged into a computer.
- Shizuku's server (used for Aurora Store's silent installer on first-gen Portals) may be killed by the firmware right after launch. The provisioning kit detects this and tells you; the fallback is Aurora's Session installer with the overlay fix applied.
Does this work on all Portal models?
It targets Meta Portals on Android 9 (the 2018 Portal / Portal+ and the Portal TV) and Android 10 (the 2019 and 2021 models, including Portal Go). Touch models and the remote-driven Portal TV are both supported. Installation needs ADB enabled on the Portal (Settings > Debug > ADB Enabled).
Can I go back to Meta's software?
Yes. Run Restore-Portal.command or Restore-Portal.bat from the provisioning folder. The kit is documented as fully reversible.
Do I need a Home Assistant server?
No. The launcher, photo frame, app store, timers, and intercom work without it. MQTT integration for Home Assistant is optional; the repo has a setup guide (you need an MQTT broker such as the Mosquitto add-on).
Can I install apps from the Play Store?
Indirectly, via Aurora Store (available in Immortal's app store). Portal has no Google Play Services, so apps that depend on Google for sign-in or DRM may not work. Many others do.
Does the photo frame need an internet account?
No. Point it at a folder on the device, a network share (SMB), a self-hosted Immich server, or a WebDAV server. iCloud shared albums and a keyless Lorem Picsum / Unsplash feed are also supported, but local sources work entirely offline.
What is the multi-room audio setup?
Immortal can group Portals as synced whole-home speakers using Snapcast and Music Assistant. Every Portal in the group shows what is playing (title, artist, cover art, play/pause/skip) on its home header and screensaver, not just the one driving playback. AirPlay cast into a group works too.
Community builds
No community builds yet — be the first, we feature the best ones.
Discussion1
FROM THE COMPAREE TEAM
Used Portals sell for about $20 now, and the whole install is reversible. If you already have one sitting in a drawer, what would you use it for first — the photo frame, the Home Assistant panel, or the security camera viewer?
starbrightlab
starbrightlab built Immortal to keep Meta Portal devices alive after Meta wound the platform down. The name is a play on Portal and on keeping the hardware usable long-term. The project includes a launcher, screensaver, app store, fleet-management tools, and a provisioning kit that handles quirks like the first-gen Portal's broken installer dialog.
DISCLAIMER
- Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
- Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
- Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.
CompareeTEAM6d ago
The first-gen Portal+ (Android 9) has a broken installer dialog (white-on-white), but the kit fixes it automatically by disabling Meta's display overlay. After that, the app store, self-update, and sideloading all work through the standard Android installer. The multi-room audio feature is the deepest integration — it syncs playback across Portals and shows now-playing metadata on every screen in the group. The project also has a fleet-management service for managing multiple Portals over Wi-Fi (deploy apps, push config, read logs) without reaching for a USB cable each time.