Prototyping a Sump Pump Controller

Most mechanical relays and switches are rated for 1 million cycles or less. That sounds like a lot at first, but if you have a sump pump that runs every 30 seconds, that's less than a year. Lowes used to sell a sump pump with a lifetime warranty. Every year, the manufacturer would mail me a new switch, and about every three years, a new pump, until they finally insisted on refunding my money.

Warranties on all the new sump pumps I looked at are awful - most are one to five years, and they expect you to mail the pump in each time. Some don't warranty the switch at all. Not keen on replacing the switch every year, and not wanting the basement to flood, I decided to build a solid-state arduino-controlled system. Water level will be detected using eTape, and the pump will be controlled with a solid-state relay. I've begun putting together a prototype:


The three-way switch is for converting between arduino controll and manual mode. The other two switches are for turning on the primary and backup pumps, respectively, when in manual mode. To the right of the switches are the relays. The heatsinks are the ones that Intel ships with Celeron processors. In the upper left corner is a freeduino, 7-Segment LED Display w/I2C Backpack, and piezo buzzer. When the local Radio Shacks closed, apparently nobody wanted the piezo buzzers, and now I'm set for life.

The switches, relays, and buzzer are attached using 4-40 screws. The arduino is attached with nylon stand-offs. The backboard is a scrap sheet of Luan. The threads on the stand-offs are just barely long enough, but it works. The mounting holes for the LED display are smaller than any screws I have, so I mounted it by bending brad nails and soldering them together on the back, to hold it tight.

The LED display will show the water level, as reported by the eTape. Initially, I'm only going to hook up one pump, so the arduino will just switch the relay on and off, as it reaches the high and low water levels. The eTape will let me utilize the entire depth of the sump, reducing cycles. If water levels go above the maximum level, the buzzer will sound. There will be a switch inline with the buzzer, to silence it.