Lots of creative aquaponics systems are being developed for raising fish and vegetables together in small spaces. Unfortunately — for you and the fish — most of these systems fail to address a number of common problems and so they end up on Craigslist or in the trash. And none of them are automated effectively at an affordable price.

I set out to build something better: a smart, small-footprint DIY aquaponic system controlled by an Arduino and built with parts from your local big box store or Amazon — OK, except the valve, that’s from eBay.

The Aquaponic Balcony Garden can be fully automated, with relay-controlled pumps, and sensors to detect humidity, temperature, soil moisture, and water level in the fish tank. It’s got a backup air pump to save your fish if the power goes out, and a master system kill relay in case anything goes wrong. You can even operate it via the internet. I’m developing kits for sale, but I’m also sharing the complete DIY instructions and Arduino code, so that anyone can build their own.

Notably, this garden uses no bell siphons, which are prone to failure. Instead, the grow bed is watered by a motorized ball valve that allows for gravity feed pressures. This gives you precise control over water cycles so you can schedule them into a grow plan to accommodate a large range of plants.

Rules of Aquaponics

Three basic rules in aquaponics are important to the health of the system:

» 1:1 Relationship — between fish tank volume and grow bed volume.

» Fish Stocking Density — 1 pound (500g) of fish for every 5–10 gallons (20–40 liters) of fish tank water.

» Feeding Fish — Only feed the amount they can eat in 5 minutes.

Most small systems (and their owners) break all three rules, causing the system to fail or never reach a balance.

I designed the Aquaponic Balcony Garden with a buffer — the DIY bio-reactor — so it will still work even for newbies who are breaking rules. Inside the bio-reactor, small plastic pieces called “moving bed media” provide maximum surface area for the growth of beneficial bacteria that remove ammonia and nitrites from the water. Your fish will thank you.

Three Ways to Play

You can configure the Balcony Garden three ways, depending on your experience level:

» Basic: A simple timer performs all functions needed for a stand-alone aquaponic garden.

» Local microcontroller: An Arduino Uno microcontroller provides precise control of cycle times, and collects sensor data to show you what’s taking place in the growing environment.

» IoT (Internet of Things): An Arduino Yún microcontroller lets you control your garden anywhere in the world. Receive text messages (say, when the grow bed is being filled), do data streaming and logging, and more.

The Aquaponic Balcony Garden — How it Works

Moisture probe — DIY analog probe made from 2 stainless screws

— DIY analog probe made from 2 stainless screws DS18B20 temperature probe

Water inlet / overflow preventer (2) — delivers filtered and bio-treated water to the grow bed, and prevents overflow if the bed is overfilled

— delivers filtered and bio-treated water to the grow bed, and prevents overflow if the bed is overfilled Water drain / root clogging preventer (3) — covers the outlet, and admits water but not roots. (This is a major problem in aquaponics — roots clog everything unless you design for the problem.) It’s a perforated 1″ pipe inside a slitted 2″ pipe — just twist to snap off invading roots.

— holds soil or other growth media for plants. It’s also got:

Fish tank, 27 gallons (4) — can be painted white with a food-safe rubberized coating for appearance or heat reflection. It also supports the grow bed platform and houses the following elements:

Ultrasonic distance sensor (5) — measures water level at all times

— measures water level at all times DS18B20 temperature probe — measures water temperature

— measures water temperature Float switch — an analog backup to the ultrasonic sensor

— an analog backup to the ultrasonic sensor Water outlet — Add a screen to protect small fish from pump suction.

— Add a screen to protect small fish from pump suction. Water inlet — from grow bed drain valve

— from grow bed drain valve Water pump — A submersible pump is operated in inline mode to pass water to the grow bed from the bio-reactor, not from the fish tank — it’s just mounted in here to keep the footprint small.

Fish tank cover (6) — Keeps out unwanted items like leaves and hungry raccoons, while allowing light to pass through. Fish can sense day and night, and it’s important to their health.

Grow platform (7) — supports grow bed, routes all the wiring, and houses the all-important drain valve

Electric drain valve (8) — delivers grow bed water back to the fish tank on command, for complete automation. It also opens in the event of power failure, delivering maximum water (and oxygen) to your fish.

Double leg support (9) — The heart and brain of the garden, it supports the grow platform and houses the microcontroller and electrical connections.

In a see-through box, a lighted “pilot switch” (9a) controls 120V AC mains power, so the entire system is easily switched off (before you put your hands in water). You can also control it with a relay.

In the AC outlets housing (9b), 4 relay-switched outlets power the air and water pumps, optional heater, and battery-backup air pump. The opto-isolated relays are controlled by your Arduino, based on data from the sensors and probes, and they’re configurable — normally open or normally closed — depending on your needs.

In the DC converter housing (9c), a transformer steps down 120V AC to 12V DC, then 9V and 5V converters regulate it for your microcontrollers and sensors. This 12V conversion also lets you use the garden off-grid, or connect solar backup power.

Finally, in the sensor/microcontroller housing (9d), DC power is distributed with independent terminal blocks: 9V to the Arduino, 5V to sensors. A humidity/temp sensor helps you understand the environment your plants are growing in.

Single leg support (10) — supports the platform and houses the electrical control for the grow bed drain valve — either a relay or, for the Basic version, a digital timer.

DIY bio-reactor (11) — Provides maximum surface area for the growth of bacteria that convert toxic fish waste to nontoxic plant fertilizer, using an aquarium bubbler and moving bed media. This is a “big system” component not seen in other small systems.

DIY solids filter (12) — Another “big system” feature, this 3-stage filter captures solid waste for bacterial breakdown and settles out heavier material for removal.

Air pump (13) — Ordinary aquarium bubbler pump supplies air to the bio-reactor.

Connection plumbing (14) — to hook it all up. Your site and configuration will vary — just make sure it’s all watertight.

For ready-to-build kits, check out my store at AGponics. I’ll continue to update the design as needed, so check back for updates and improvements.