- Joined
- Nov 10, 2018
- Messages
- 772
- Reaction score
- 1,045
Since I'm mostly working from home now, I really want a tank on my desk. I've also been goofing off alot lately with the ESP32 microcontroller, and well, why not scratch two itches at once?
So the plan is, an ultra-low-maintenance pico tank, by utilizing an ESP32 to be the brains of the whole operation.
Goals for this project:
The plan:
I have an old 1.6g tank. 9" x 6" x 7". An Ocean Free U-Tank, that I got from lord knows where, eons ago, because I thought it would make a fun toy. I tried at one point to do a pico with it, but back then the best I could do was a power compact light, and metal hood. The tank was unmanageable. Way too much evaporation to keep up with, too much heat from the PC lights, monstrous salt spray from the HOB. Overall it was nothing more than a noisy, annoying light on my desk.
There it is, as I yanked it out of the old aquarium storage pile the other day... so first step is, soak it in citric acid and clean it up.
Well that cleaned up nicely.
Now the plan here, is that it's going to be a closed loop design. It's such a small tank, that I want as little in the actual aquarium as possible to intrude. Having a powerhead in there just isn't reasonable. What I'm thinking is bare bottom, with probably a white ABS sheet on the bottom, and then a central tower in the back, to hide what little equipment needs to go in there, (specifically, the ATO sensor, the pH/temp probe, and the various tubes for the ATO/AWC.
So of course, the next thing to do, is to discover if this is tempered glass or not, the hard way!
All marked up and ready to drill...
Phew! Not tempered!
I figured that the tank is small enough, that I could just throw it up on the drill press, and have at it. That would make it much easier to keep the bit level and do clean holes. I used a clamp, and some scrap wood to brace it, so when the bit broke through I wouldn't shatter the glass. Especially with me putting 6 holes in such a tiny panel. I was about 50% convinced I would blow the whole back panel off rather than succeed here...
But no! It worked!
And here is a test fitting of one of the 3/8" RO bulkheads I'll be using for the closed loop. For those of you wondering, a 21mm drill makes perfect holes. I spent an additional 30 minutes or so with a diamond file cleaning the holes up a little. There is a tiny bit of breakthrough on the inside, but it was the best I could do. I ordered some O-rings to help seal these up once installed, but for now, I at least have a place to start.
With the holes drilled, and my shop floor not covered in glass, it's now time to order all the parts:
Problems I don't have solutions for yet, so will need to be fiddled as I go:
So the plan is, an ultra-low-maintenance pico tank, by utilizing an ESP32 to be the brains of the whole operation.
Goals for this project:
- Low maintenance. Automatic water changes, ATO.
- Connected to and run by Home Assistant, using the ESPHome platform on an ESP32 m/c.
- Lights will be a dense matrix of individually controllable RGBW lights, so I can fine tune the output and do sunrise/sunset/moonlight.
- Touch panel controls on the front of the aquarium for readout of parameters, and easy control (push button to do water change).
- Closed loop plumbing.
- As much as possible running on 12 or 5 volt from a single power supply.
- Power usage monitoring for critical equipment.
- 3D printed stand and hood.
The plan:
I have an old 1.6g tank. 9" x 6" x 7". An Ocean Free U-Tank, that I got from lord knows where, eons ago, because I thought it would make a fun toy. I tried at one point to do a pico with it, but back then the best I could do was a power compact light, and metal hood. The tank was unmanageable. Way too much evaporation to keep up with, too much heat from the PC lights, monstrous salt spray from the HOB. Overall it was nothing more than a noisy, annoying light on my desk.
There it is, as I yanked it out of the old aquarium storage pile the other day... so first step is, soak it in citric acid and clean it up.
Well that cleaned up nicely.
Now the plan here, is that it's going to be a closed loop design. It's such a small tank, that I want as little in the actual aquarium as possible to intrude. Having a powerhead in there just isn't reasonable. What I'm thinking is bare bottom, with probably a white ABS sheet on the bottom, and then a central tower in the back, to hide what little equipment needs to go in there, (specifically, the ATO sensor, the pH/temp probe, and the various tubes for the ATO/AWC.
So of course, the next thing to do, is to discover if this is tempered glass or not, the hard way!
All marked up and ready to drill...
Phew! Not tempered!
I figured that the tank is small enough, that I could just throw it up on the drill press, and have at it. That would make it much easier to keep the bit level and do clean holes. I used a clamp, and some scrap wood to brace it, so when the bit broke through I wouldn't shatter the glass. Especially with me putting 6 holes in such a tiny panel. I was about 50% convinced I would blow the whole back panel off rather than succeed here...
But no! It worked!
And here is a test fitting of one of the 3/8" RO bulkheads I'll be using for the closed loop. For those of you wondering, a 21mm drill makes perfect holes. I spent an additional 30 minutes or so with a diamond file cleaning the holes up a little. There is a tiny bit of breakthrough on the inside, but it was the best I could do. I ordered some O-rings to help seal these up once installed, but for now, I at least have a place to start.
With the holes drilled, and my shop floor not covered in glass, it's now time to order all the parts:
- MeanWell RT-125B power supply. Gives me a big 5v and 12v rail to run everything off.
- 2 4-channel i2c relay boards to flip power to various components.
- A dual-head 20ml/min peristaltic pump (12VDC). It's a nifty design that has 2 heads on one motor shaft. My theory is to use this to do the AWC, because the heads should self-balance input and output.
- A Nema 17 stepper peristaltic pump for the AWC.
- A pile of optical water level sensors for the various jugs of saltwater, RO/DI, wastewater, and the ATO.
- A DFRobot pH breakout board
- DS18B20 temp probe
- A 144 LED per meter individually addressable LED strip RGB + cool white.
- 2 130GPH 12v centrifugal pumps.
- a Nextion 3.4" TFT display
- an ESP32 (of course)
- 2 INA3221 3-Channel DC Current Sensors
- a few CT sensors for measuring the mains power
- Stepper driver
- A pile of 3/8" and 1/4" RO fittings, tubing and bulkheads
- 4 airtight food containers for holding the various water things
- an Oxo Flip-Lock glass container for the chaeto reactor
Problems I don't have solutions for yet, so will need to be fiddled as I go:
- Heater. Do I even need one? Might not.. If I do, no idea what to use here that will be small enough and not in the main display.
- If I seal up the OXO container and run a closed loop through it, will it survive the pressure or blow the lid off?
- The one or two rocks I put in here will have very low ability to function as a biological filter. Will they be enough, or do I desperately need the chaeto to work? Will anything else help here? Would a tiny cube of marinepure bio-block even help at all?
- Can I use a series of check-valves, and Y-plumb both pumps into a left-right alternating flow, but use both to drive the chaeto reactor?
- Am I going to run out of GPIO pins on an ESP32?