cross-posted from: https://lemmy.world/post/52120691
I had an old Google Pixel 3a XL sitting around and decided to see if it could handle running as a fully offline, self-contained web server.
I flashed postmarketOS 26.06 (headless Alpine Linux base) to it and set up a portable media node that broadcasts its own Wi-Fi AP, serves static pages, and streams video over a captive portal - no cell data or upstream internet needed.
Quick Hardware/Tech Stack Breakdown:
- Device: Google Pixel 3a XL (2019)
- OS: postmarketOS 26.06 (CLI base with OpenRC)
- Networking/AP: hostapd for the AP, dnsmasq for DHCP & wildcard DNS routing
- Firewall: nftables redirecting port 80 requests to trigger the captive portal popup automatically
- Web Server: Lighttpd handling HTTP requests and MP4 video range requests
Performance & Power Draw: Under a test load streaming 720p video to 4 concurrent devices, total CPU usage averaged around 5% (load avg 0.51). Power draw stayed around ~2.4W off the internal battery, with temps holding steady at 54°C.
Why build this? Mainly as an offline entertainment and information node. I run a non-profit foundation providing SCUBA training to young survivors of childhood abuse, and having a tiny, battery-powered web node lets us provide offline information and videos to people while traveling. I will also be able to use it to provide training videos if I am teaching in a location that does not have internet access available.
I wrote up a complete overview covering the setup, and performance metrics if anyone wants to replicate it or build something similar. Over the coming weeks I will be posting configs and some other information to Github with a link from my site.
https://www.muttmutt.us/geeky-stuff/portable-web-server-on-an-android-phone-for-offline-access/
Happy to answer any questions about postmarketOS setup or the networking config!
3 Comments
SirSamuel@lemmy.world · 2 pts · 19h
I use my 3a as GPS using Lineage OS and a Wi-Fi hotspot
MuttMutt@lemmy.world · 2 pts · 18h
I've used older phones for a lot of things like that. I have a couple that I use for bedroom HomeAssistant controllers, along with a couple tablets for near the front and back doors. I have an LG V20 I have been tinkering with so that I can power it without a battery at all but that is a bit of a pain.
I have seen projects where phones have been turned into vehicle dash camera's that once connected to WiFi will upload to the home server. There are a ton of other things you can do with an old phone if you just find a way to use it. The bad thing is that a lot of the older phones are stuck on the OS they have with no chance of another update or ability to change the OS for other uses.
SirSamuel@lemmy.world · 1 pts · 4h
It was fun! I'd never done any kind of sideloading or customization of a phone prior. I learned a lot from the experience. Similar getting the Jellyfin app to run on a Samsung TV. I'd like to eventually convert my old laptop into an automotive diagnostic reader, with the ability to add/delete keys via the OBDII port. That's a big project tho, lots of moving parts
Thanks for the write-up on your post, very informative 😁♥️