Skip to content

Latest commit

 

History

History
112 lines (85 loc) · 7.05 KB

README.md

File metadata and controls

112 lines (85 loc) · 7.05 KB

Bussy McBusFace

Smart Taps (Campervan Water System)

If you've ever used the pressure-switched type of water system in a campervan / RV, you'll know how much of a pain they are to calibrate and use. So I snapped one day and designed my own Smart Water System for my Campervan.


This repo includes the designs for a Raspberry Pi 4 based .net WebServer that can update an Grove LCD RGB based display(I2C) and read 2x Grove ultrasonic ranger sensors to sense the water level in the clean tank and grey waste tank, if mains water is not connected to the vehicle (Sensed via a gpio switch).

I've also included the diagram to build and wire it, and the associated 3D printer file to print the button housing.

The Pi .net 6-based server receives data from 2x RaspberryPi Pico W devices that have attached buttons for hot and cold water (Connected to digital LED buttons on a Grove Pi Pico Shield).

These Pico W devices connect to the server .net minimal API to request hot or cold water on a button press.

There is a third connected PicoPi W device, attached into a Relay Box with 8 attached DC relays which respond to data polled from the buttons to energise the relays to enable the following 12V supply connectors :-

There is an LPG gas boiler connected through the Hot Water Boiler Enabled Solenoid to provide on-demand hot water. Connection Diagram


Here it is assembled and on test before install into BussyMcBusFace :-

Test Image

Web Image

In the repo, I provide Arduino Sketches for the picos, .net project source code for 2x .net Daemons (1x for the Webserver control panel, one for the Display Output on the Pi).

To rig the entire system you will need the following parts.

Plumbing

External Water Plumbing

  • Lengths of drainage pipe (25 / 35 mm and elbows + 1x equal tee) for drains
  • 1x Hose Pipe to tap fitting
  • 1x 12mm Hose to 15mm push fit adapter
  • 1x 12mm Jubilee Clip

Power

Gas [Warning - get a GasSafe registered installer if you intend on a permanent install]

Compute

Sensors and Actuators

Pinouts

For convenience i've listed the pins and ports used below

DEFAULT SERVER ADDRESS http://192.168.200.36:5000

PINS RELAY CONTROLLER

const int SolenoidColdKitchenPin = 17; // Channel 5 const int SolenoidHotKitchenPin = 16; // Channel 6 const int SolenoidColdBathroomPin = 19; // Channel 3 const int SolenoidHotBathroomPin = 18; // Channel 4 const int SolenoidBoilerControlPin = 20; // Channel 2 const int PumpColdPin = 21; // Channel 1 const int LEDPin = 13; // RGB LED const int BuzzerPin = 6; // Buzzer

PINS KITCHEN AND BATHROOM TAP CONTROLLERS

const int ColdButtonPin = 19; // Cold Button = GPIO 16 on Pico (Grove D16) const int ColdLEDPin = 18; // Cold Button = GPIO 17 on Pico (Grove D16) const int MainsWaterSelect = 16; // Mains cold water and drainage in place const int HotButtonPin = 21; // Hot Button = GPIO 20 on Pico (Grove D20) const int HotLEDPin = 20; // Hot Button = GPIO 21 on Pico (Grove D20)

PINS CABINET SENSOR CONTROLLER

int LEDPin = 12; int LEDOnboard = 25; Ultrasonic ultrasonicFresh(7); // Yellow to Blue Fresh Tank Ultrasonic ultrasonicDirty(9); // Yellow to Grey Waste Tank Grove_LED_Bar barFresh(4, 5, 0); // white, yellow Grove_LED_Bar barGrey(10, 11, 1); // white, yellow