← Back to Blog
January 24, 2026 • 8 min read

Turn a $30 Prepaid Phone into a Smart Home Vibration Sensor

Get notified when your dryer, washer, or any appliance finishes its cycle — no subscription, no cloud dependency.

smart-home diy android

The Problem

Older appliances don't tell you when they're done. You start the dryer, forget about it, and three hours later your clothes are a wrinkled mess. Smart sensors exist, but they're often overpriced, cloud-dependent, or require subscriptions.

Enter VibeMonitor, an open-source Android app by Marshall Richards that transforms a cheap prepaid smartphone into a vibration sensor. Stick it on any appliance, and it'll send you a webhook notification when the vibration stops.

The insight: Modern prepaid phones cost $30 and come packed with sensors — accelerometer, gyroscope, ambient light, microphone, camera. That's more sensing capability than most dedicated IoT devices, at a fraction of the cost.

Total Cost

Item Price
Moto G Play 2024/2025 (Prepaid, Walmart) ~$30
3M VHB double-sided tape ~$8
Phone holder (from cheap selfie stick) ~$5
Total ~$43

No service plan needed. The phone is "locked to carrier" but you never need to activate cellular service. Skip all the carrier setup prompts, connect to WiFi, and you're done. The carrier lock is completely irrelevant for this use case.

Setup Guide

1Prepare the Phone

Power on the phone, skip all carrier activation prompts, and connect to your home WiFi. Then enable Developer Options:

2Set Up Notifications (Free)

You need somewhere to receive webhook notifications. The simplest free option is ntfy.sh — no account required:

  1. Pick a unique topic name (e.g., myhouse-dryer-x7k9m)
  2. Install the ntfy app on your main phone, subscribe to your topic
  3. Your webhook URL will be: https://ntfy.sh/your-topic-name

Test it from your computer terminal:

curl -d "Test notification" ntfy.sh/your-topic-name

3Build the App

VibeMonitor doesn't have pre-built releases, so you'll need to compile it. On macOS with Homebrew:

# Install dependencies
brew install openjdk@17 android-platform-tools

# Set up environment
export JAVA_HOME=$(brew --prefix openjdk@17)
export PATH="$JAVA_HOME/bin:$PATH"
export ANDROID_HOME=~/Library/Android/sdk

# Clone and build
git clone https://github.com/marshallrichards/VibeMonitor.git
cd VibeMonitor
chmod +x gradlew
./gradlew assembleDebug

The APK will be at app/build/outputs/apk/debug/app-debug.apk

4Install via Wireless ADB

On the sensor phone, go to Developer Options → Wireless debugging → Pair device with pairing code. Note the IP, port, and 6-digit code.

# Pair (use the pairing port shown on phone)
adb pair 192.168.x.x:xxxxx
# Enter 6-digit code when prompted

# Connect (use the main wireless debugging port)
adb connect 192.168.x.x:xxxxx

# Verify connection
adb devices

# Install
adb install app/build/outputs/apk/debug/app-debug.apk

5Configure VibeMonitor

  1. Open the app and grant notification permissions (required for background service)
  2. Add your webhook URL: https://ntfy.sh/your-topic-name
  3. Set the vibration threshold (start with default, tune later)
  4. Set the duration (how long vibration must stop before notification)
  5. Tap "Test Webhook" to verify notifications work

6Mount and Tune

Attach the phone to your dryer (top surface works well) using 3M VHB tape or a phone holder. Keep it plugged in permanently. Run a dryer cycle and adjust the threshold until it reliably detects running vs. stopped states.

Battery tip: Go to Settings → Apps → VibeMonitor → Battery and set to "Unrestricted" so Android doesn't kill the background service.

Beyond the Dryer: More Use Cases

A $30 phone has far more sensors than a dedicated IoT device. Here's what else you can monitor:

📳 Vibration/Motion (Accelerometer)

🎤 Sound (Microphone)

💡 Light (Ambient Sensor + Camera)

📷 Camera (Computer Vision)

Why This Matters

The VibeMonitor approach represents a broader insight: modern smartphones are absurdly capable general-purpose sensor platforms. Prepaid carriers sell them at a loss hoping you'll buy their plans. You don't have to.

For the price of a single "smart" vibration sensor, you get a device with a 6+ inch screen for debugging, a multi-day battery, WiFi, multiple sensors, and a full Linux-based OS that can run arbitrary code.

The code is open source. The notifications are self-hosted (or use free services). There's no subscription, no cloud dependency, no vendor lock-in. Just a cheap phone doing exactly what you tell it to do.

VibeMonitor created by Marshall Richards
github.com/marshallrichards/VibeMonitor

Original write-up inspired this post. All credit for the app and core ideas goes to Marshall.