Short answer: you can make an old washing machine “smart” with a Raspberry Pi 4, but you should not try to replace its internal controller or directly wire GPIO into mains. The safe way is to treat the machine as a black box and let the Pi monitor and optionally “press buttons” or switch power from the outside.
I’ll give you a practical, but safety-conscious roadmap.
1. Decide what “make it work with Pi” means
Typical goals:
- Get notifications (cycle finished, machine running or idle).
- Monitor energy/use (when it runs, how long, maybe power draw).
- Remote control start/stop (within reason).
- Home-automation integration (Home Assistant, Node-RED, etc.).
If you say which of these you care about most, we can go deeper. For now I’ll assume: monitor + maybe remote start.
2. Safest approach: treat the washer as a “smart plug load”
Option A – Use a commercial smart plug, Pi talks to the plug
- Plug the washing machine into a properly rated smart plug (must handle the machine’s current!).
- Have the Raspberry Pi control or monitor that plug over Wi-Fi (e.g. via MQTT, Matter, Tasmota, etc.).
- The washer still runs its own program, timer, safety interlocks.
-
The Pi can:
- Turn power on when you want a cycle to start (with the front panel already set).
- Detect power consumption pattern from the plug and infer when the cycle is done.
This avoids you ever touching mains wiring inside the washer. For most people, this is the right answer.
3. Monitor the old machine with sensors (no internal mods)
If you just want “smarts” and don’t absolutely need remote start, the Pi can watch the machine with a few cheap sensors:
- Vibration sensor or accelerometer on the chassis
- Pi reads vibration → “no motion” vs “spinning/draining”.
- You can send a notification (Telegram, email, phone push) when vibration stops for N minutes.
- Current clamp sensor on the mains cable (non-invasive)
- A clamp current transformer + a small analog front end → Pi (via ADC).
- If current > threshold → machine running. If it drops and stays low → cycle finished.
- Door/handle sensor (magnetic reed switch)
- Stick a small magnet + reed switch on the door.
- Pi can log door open/close events (e.g. “someone forgot wet clothes inside”).
All of these can be powered from the Pi’s 5 V and never touch mains directly.
4. “Remote start” without rewiring mains (simulated button press)
If your washer has an electronic front panel (soft buttons), a common trick is:
- Open the front panel (this step alone is non-trivial; do it only if you’re comfortable inside appliances).
- Identify the low-voltage button contacts (NOT mains; typically a 3.3 V or 5 V button matrix into the control board).
- In parallel with the button, add a small isolated switch (e.g. optocoupler or small relay) controlled by the Pi GPIO.
Conceptually:
- When Pi wants to “press Start”, it briefly activates the optocoupler → that shorts the same two pads the physical button does.
- The washer’s own brain still enforces door lock, water level, spin safety, etc.
- The Pi just fakes a finger on the button.
Very important safety notes here:
- Only ever connect to low-voltage parts of the front panel (you should be able to measure a few volts DC, not 230 V/120 V).
- If you’re not 100% sure what you’re probing, stop and get help from someone with mains/electronics experience.
-
Never bypass:
- Door‐lock switch
- Safety interlocks
- Water level/protection circuits
Those are what keep the thing from becoming a flooding, spinning hazard.
5. What you should not try (unless you’re a pro)
Try to avoid:
1. Replacing the entire controller with a Pi + relays
A washing machine controller deals with:
- Door lock
- Water valves
- Heater (high power)
- Motor / spin balance
- Pump
A safe design needs:
- Proper mains isolation,
- Fusing,
- Thermal protection,
- Serious state machines and fault handling.
Doing this “from scratch” with a Pi and a relay board is not a beginner project and can be dangerous.
2. Direct GPIO to mains or motor circuits
- Pi GPIO pins are 3.3 V logic. They must never see mains or inductive loads directly.
- You’d need proper opto-isolated SSRs/contactors and safe wiring inside a properly earthed enclosure.
If your washer’s original controller is dead and you want to “resurrect” it with a Pi, that’s essentially a real appliance design problem, not just a hobby wiring job.
6. A simple project recipe you can do safely
Here’s one realistic, relatively safe roadmap that works for many people:
Install a smart plug rated for your washing machine.
Plug the washer into it; leave the washer’s program knob and “Start” button set to your usual program.
Connect the Raspberry Pi to your network and install:
Home Assistant or Node-RED.
Integrate the smart plug into Home Assistant / Node-RED.
Add either:
- A vibration sensor on the washer, wired to the Pi, or
- Use the smart plug’s power readings to detect when the machine is running vs idle.
- Automations:
- Turn the smart plug on at a scheduled time → washer starts.
- When power drops below threshold or vibration stops for N minutes → send phone notification “Laundry finished”.
This way:
- The washer remains fully stock and safe.
- The Pi just orchestrates power and notifications.

Top comments (0)