16 - Sep - 2026

I turned my old Android phone into a security camera and ditched my Ring subscription

I’ve had an old Android phone sitting in a drawer for over a year, and every time I saw it, I felt a small pang of guilt about all that unused hardware. Meanwhile, when I was adding smart security cameras to my house, the five bucks a month Ring subscription wasn’t making a lot of sense considering you also have to spend money on the hardware.

So one weekend, I decided to fix both problems at once, and the fix turned out to be embarrassingly simple. Turns out, an old phone, a free app, my existing Home Assistant instance, and Frigate for smart detection were all that was ever needed.

The subscription was the real problem, not the hardware

Every clip you save currently lives on someone else’s server

Christine Persaud / MUO

Ring’s hardware is fine, but the subscription is where it stings. You need a paid plan just to save clips rather than seeing just a live view, and if you want smart alerts that tell people apart from your cat, you’re paying even more. Not to mention you’re entirely dependent on someone else’s cloud.

Every clip you save leaves your house and lives on Amazon’s servers, which never sat right with someone who already self-hosts most of his tech stack. Repurposing an old Android phone keeps everything local, costs nothing beyond electricity, and gives me more control over storage and automation than Ring ever did.

IP Webcam beats the cloud-routed alternatives

No third-party routing, native Home Assistant entities

IP webcam app running on Pixel 9a.
Photo by Yadullah Abidi | No Attribution Required.

Home Assistant has a dedicated integration for IP Webcam, a free Android app that turns your phone’s camera into an MJPEG and RTSP stream on your local network. I went with IP Webcam over alternatives like AlfredCamera because it doesn’t route video through a third party, and it plays nicer with Home Assistant’s native tools. The app also exposes a pile of sensor data, including battery level, light levels, and its own motion detection, all of which show up as entities once connected.

Any phone running Android 8.0 or newer with a working camera and steady Wi-Fi will do the job. If yours still has a decent camera and can stay plugged in around the clock, you’re good to go.

Ten minutes of prep before the phone goes on the wall

Static IP, stripped bloat, screen off while charging

The process is refreshingly low-effort. Install IP Webcam from the Play Store, open it, and adjust the video quality and resolution to match what your network can handle without lagging. Then, hit the Start Server button, and the app immediately displays a local IP address and port, usually something like 192.168.1.x:8080. I recommend giving the phone a static IP through your router’s admin panel, so Home Assistant never loses track of it after a reboot.

Before mounting the phone anywhere permanent, I stripped it down. That involved disabling unnecessary background apps, turning off automatic updates, and setting the screen to stay off while charging. Since the phone would be plugged into a wall outlet nonstop, keeping it cool and lightly used mattered more than I expected, since these older batteries don’t love constant full charge cycles.

Frigate turns motion alerts into person alerts

No more notifications for a leaf blowing past the lens

From here, Home Assistant does the heavy lifting. Head over to the Home Assistant settings, go to Devices and Services, add the Android IP Webcam integration, punch in the phone’s IP Address, and Home Assistant auto-discovers the camera feed along with motion, battery, and light sensors. Within a minute, a live MJPEG feed shows up right on my dashboard, sitting next to my other smart-home cards instead of living in a separate app the way Ring’s feed would.

For smarter alerts, I fed the phone’s RTSP stream into Frigate, an open-source NVR that runs in Docker and does real-time object detection. Instead of getting pinged every time a leaf blows past the camera, Frigate tells me specifically when it sees a person, so the false-alarm fatigue that plagues Ring setups is never going to happen.

Once the motion sensor and person-detection events are inside Home Assistant, the automation options open up fast. I built one that sends a push notification with a snapshot whenever Frigate flags a person at the front door, and another that turns on my front door’s light after dark when motion triggers. None of this required a subscription, a monthly fee, or handing footage over to a corporate cloud.

This won’t survive a drop or run forever unattended

Heat, battery cycles, and local-only storage by default

HA notifications from Frigate face detection.
Photo by Yadullah Abidi | No Attribution Required.

This setup isn’t flawless, though. Phone cameras aren’t built for 24/7 duty, so heat management and charging habits matter if you want the hardware to last. Storage is also local by default, meaning you’ll want a network drive or your Home Assistant server’s own disk if you want more than a few days of clips.

That said, for the cost of an app download and a phone I would’ve otherwise tossed into e-waste, it’s hard to complain. It’s not a complete Ring equivalent, but it costs you nothing, has better automation, and you never have to worry about privacy.

Sixty dollars a year, versus a phone already in a drawer

The math isn’t close, even before counting the tinkering

A year’s worth of Ring subscription will run you roughly 60 bucks. My setup costs nothing beyond the hardware I already had and a few hours of tinkering to set everything up. The cost comparison is overwhelmingly in favor of this setup. You won’t skimp out on features either, so if you’ve got the time and devices, this is a much better option than a Ring camera.

It’s not a professional system, though, meaning it’s only as waterproof, weatherproof, and permanent as you want it to be. It doesn’t work in every situation, but for an entryway, garage, hallway, apartment door, pet-monitoring spot, or indoor window view, it works remarkably well.

Leave a Reply

Your email address will not be published. Required fields are marked *