Table of contents for Water Filtration
- Water Filtration Design Phase 1
- Water Filtration Design/Construction Phase 2
- Water Filtration Design/Construction Phase 3
- Water Filtration Construction Phase 4
- Water Filtration Construction Phase 5
- Water Filtration Construction Phase 6
- Water Filtration Construction Phase 7
- Water Filtration Construction Phase 8
- Water Filtration Construction Phase 9
- Water Filtration Construction Phase 10
- Water Filtration Construction Phase 11
- Water Filtration Construction Phase 12
Hey everyone, sorry we didn’t have a post up for you the last couple of weeks. Since we burnt out the Arduino, we had to order a new one (or two) and figure out the power supply circuit to make it run. This means we were waiting for the Arduinos to be shipped to the house. Now that we have our fancy, shiny, spanking new Arduino, we will endeavor to not destroy this them.
But we have good news, we are done with the filter box design because the electronics are working! We had to do a lot of testing, as seen below, to get it to function correctly. This picture shows our work room–one corner of it–and what it looks like when we trouble-shoot/build/test a circuit for this box. Pay no mind to the clutter, this is obviously how genius works.

The better part of this story is that we have proof that it is working, on video:
For your reference, here is the final code that was used in the Arduino:
//Pin Assignments.
int pinClean = 4;
int pinDirty = 5;
int pinPower = 2;
int pinValve = 3;//Floatswitch States.
int cleanState;
int dirtyState;//Debounce stuff.
int cleanPrevious = LOW;
int cleanReading;
long cleanTime = 0;
long cleanDebounce = 100;
int dirtyPrevious = LOW;
int dirtyReading;
long dirtyTime = 0;
long dirtyDebounce = 100;void setup()
{
pinMode(pinPower, OUTPUT);
pinMode(pinValve, OUTPUT);
pinMode(pinDirty, INPUT);
pinMode(pinClean, INPUT);
dirtyState = digitalRead(pinDirty);
cleanState = digitalRead(pinClean);
digitalWrite(pinPower, HIGH);
}void loop()
{
//Logic states of our float switches.
if ((dirtyState==LOW) && (cleanState==HIGH))
{
digitalWrite(pinValve, HIGH);
}
else
{
digitalWrite(pinValve, LOW);
}//Read and debounce the switchs.
cleanReading = digitalRead(pinClean);
if (cleanReading != cleanPrevious && ((millis() – cleanTime) > cleanDebounce))
{
if (cleanState == HIGH) {cleanState = LOW;}
else {cleanState = HIGH;}
cleanTime = millis();
}
cleanPrevious = cleanReading;dirtyReading = digitalRead(pinDirty);
if (dirtyReading != dirtyPrevious && ((millis() – dirtyTime) > dirtyDebounce))
{
if (dirtyState == HIGH) {dirtyState = LOW;}
else {dirtyState = HIGH;}
dirtyTime = millis();
}
dirtyPrevious = dirtyReading;}
And here is the final circuit diagram:

Once we got the filter working we decided to test the water that was coming out of it for quality. There are three types of water for this test: the filtered clean water, waste water from the filter, and the unfiltered rain water.


Here are some of the test tubes that we used to do the testing. We happened to have these materials on hand due to our large fish tank habit.
The good news here is that the hardness–the amount of dissolved crap in the water–is vastly reduced from the unfiltered intake. Also, the pH isn’t out of control. The nitrate and nitrite concentrations are zero along with the ammonia which is good news for our fishies.

After filtering nearly half a fifty-five gallon barrel of water, the mechanical filter in the RO system was really dirty.
That last picture tells two stories. Firstly, don’t put your hose directly in the bottom of your barrel cause you are going to pick up sediments. Secondly, we need to improve our pre-filtering system for the rainwater collection setup. Now, keep in mind that when the filter box is hooked up to the barrels as planed–i.e. through the floating hose–it will not pick up any settled particulates from the bottom of the barrel which is what you are seeing here. That said, we still want to improve the quality of the water making it into our tanks.
Our plan for this is a vastly bigger sand filter. More sand, more rock, more filter cloth should equal a lesser degree of sediments in the tank. Also, we need to shroud the tanks in somethign to keep the sun out so that biotics have a tougher time growing in there.
The posts relating to this and the rainwater system will probably become more sporadic from now on. We will be posting an updated and revised Bill of Materials (BOM) for the filter box and an improved set of build instructoins but we are essentially done with the design at this stage. We are very happy with the test results so far and thus see no need to change it substantially now.
Up next is our Aeroponics system for growing some food with our newly filtered water! We’ve got the fogger units we plan to use and will be posting some video and pictures of them next week. The aeroponics unit will consist of a growing chamber, fogger chamber, some small fans, some control electronics, and some delicious edibles. We hope to have this up and running quickly–with our power supply experience from the filter box–so that we can start running data gathering experiments on the best modes of operation. Stay tuned!
That’s it for this week,
P&S
No related posts.





