Code Bits, Projects, & Tech Thoughts

Desktop Aquaponic Vase

Desktop Aquaponic Vase


Grow plants with fish waste, in a slimline desktop aquaponic vase. Available for customization and download on Thingiverse.

The Inspiration

Image Copyright 2015 Penn-Plax.

This design was inspired by the Penn Plax "Aqua-Ponic Planter", evident in the sketch on the left. Like most of my projects the Desktop Aquaponic Vase started off with more than a few sheets of Engineer's Graph Paper. Whenever possible I start my designs with sketches because it's easy for me to rapidly iterate on my design before investing time in 3D Modeling.


What's the fun in purchasing a premade solution when you can build it yourself? I need more living things around my workspace, and I like the general idea of the Aqua-Ponic Planter. But the Penn Plax solution has a few flaws that I'll attempted to correct.

Firstly, the system required the roots of the plant to physically reach the waterline 1. The submerged roots then sustain the plant via transpiration and provide filtration for the fish 2. This is a design issue as the lack of water movement fails to sufficiently oxygenate the tank or the plant. Additionally, starting plants from seed becomes impossible. I'll need some sort of mechanical lift to bring water from the vase into the planter.

Secondly, the aquaponics system relies on some sort of aquatic bioload (fish, shrimp, snails, etc) to provide waste 3. Fish need food, and the Penn Plax planter requires lifting the plant entirely off the vase to supply food. I'm much too lazy for this, so I'll need some sort of access hole.

Prerender of the design to approximate scale.

My solution to the first problem was to harvest parts from a commercial off the shelf aquarium filter, the Tetra Whisper 3i. I chose this filter because of the detachable bubble ring and lift tube, and because it includes an air pump and aquarium air line for a relatively low cost. The design of the planter incorporates a friction fitting to receive the lift tube, and a recess for the air line to prevent it from being crushed against the sidewall of the vase.

The solution to the second problem is straightforward. I recessed a portion of the cylindrical planter to provide a semicircular feeding channel, providing a pinch of food's worth of access to the waterline.

All the parts included with the filter. I ended up discarding the filter body (Back) but using the air pump, air line, and lift tube.

Modelling the Planter

Final render of the part customized to my vase (ID 80mm). This render includes both optional features: a feeding hole (ID 25mm) and a lift tube hole (ID 13.25 mm)

I knew I wanted the final model to be customizable, so I designed the planter in OpenSCAD. OpenSCAD allows designers to define model parameters that can later be edited by other makers, so changes can be made without completely redesigning the part. There are hundreds of excellent OpenSCAD Tutorials available, so I won't go into too much detail about basic use.

The walls of the planter were defined by a rotate_extrude around the Z axis. Then the space for a feeding hole, a lift hole, and the air line were cut from the body, and those features added. The complete .scad file is available on Thingiverse.


I printed the planter from PETG, because I knew it was going to be partially submerged and in contact with aggressive bacteria that might otherwise decompose PLA.


  • 0.2mm Layer Height
  • 1mm Permeter, Top, Bottom
  • 50% Grid infill
  • 200C Hotend
  • 60mm/s Printspeed

The print took about 5 hours to complete, and was fairly clean directly off the printer. Normally I'd have to clean PETG strings off the print, but due to the relatively low number of retraction moves (the printhead basically spiraled upwards) I just had to remove some support material from the lower layer. You can read more about my 3D Printer setup here.


At this point in the story, the write-up falls short. After refining the design and printing the parts, I ended up moving and never setting up the planter.

The set process was going to be similar to that of any hydroponic planter:

  • Aquarium Gravel and rocks would be added to the vase, along with dechlorinated water. Small amounts of fish food would be added to the vase for two weeks or so, to approximate the time needed for establishment of nitrifying bacteria.

  • After the two week period, assorted freshwater shrimp (1-2 <1/2" ) and snails (2-3 <1/4") would be added.

  • The air lift tube and air hose from the Tetra whisper filter are installed on the printed planter.

  • Zoo Med's Hydro Balls, an expanded clay substrate for terrariums, serve as a substrate. This is essentially equivalent to commercial hydroponic substrates, but available at local pet stores.

  • The plant would then be removed from soil and the roots thoroughly washed in dechlorinated water, to remove foreign matter that might decompose or introduce pests.

  • The plant should be planted in the the Hydro Balls, root ball low enough to grow through the bottom of the planter. Some roots would then be gingerly pulled through the bottom, to contact the water.

  • The planter should be placed in a well-lit area away from drafts, and the water partially changed once a week with fresh dechlorinated water.

OpenSCAD and STL files for the project are available on Thingiverse.


  1. This is sort of a modified Kratky's Method System.

  2. Plants can help remove harmful animal byproducts such as ammonia, nitrate, and nitrite by binding them in their cells. This still provides no mechanical filtration, and quite a high plant mass is required to sustain a relatively small bioload.

  3. Read more about the nitrogen cycle as it applies to aquaponics.