Aquarium ESPHome Dosing Pump - With Mount

This is an aquarium dosing pump that has been made to sepcificly run with an Seeed Studio XIAO esp32c3.
17
35
0
902
updated November 1, 2024

Description

PDF

So I run alot of my planted aquarium with home assistant through ESPHome devices and i wanted to add a dosing pump as i am little forgetful to dose it myself…

So I made this using fairly standard parts and it has been working great!

Parts List:

1 x Seeed Studio XIAO ESP32C3 - https://www.unmannedtechshop.co.uk/product/seeed-xiao-esp32c3/

1 x Peristaltic Pump, DC12V Mini Peristaltic Liquid Pump 32x23mm Motor for Experiments, Biochemical Analysis(Type C) - https://amzn.eu/d/i1QkSs3

1 x Voltage Boost PCB for the 12v supplly to the motor- https://amzn.eu/d/eJ5knap

1 x Switch circuit - (I made my own but somthing like this should work)  https://amzn.eu/d/i6b5pwy

8 x M3x12mm bolts (i prefere these low profile cap torx boltrs) - https://www.accu.co.uk/torx-low-cap-head-screws/14457-SHCL-M3-12-A2

2x M3 nuts to hold pump in place

1 x USB C supply (I used this one but any should work as long as it can deliver enough power) - https://amzn.eu/d/9RMtsJO

1 x Silicone Tube Food Grade 3mm ID x OD 5mm - https://amzn.eu/d/gblbX2M

 

Also check out my other part for a pipe holder on the tank.

https://www.printables.com/model/907914-aquarium-dosing-pump-pipe-clip

Ah nearly forgot to add you need to flex the main case when inserting the pump to get the mounting wings past the screw mounts at the base of the case. small design oversign but it will go together.

I made sure the esphome set up only allowed the pump to come on for a max of 3 seconds which is about 6ml in my setup. and then i have an automtion set up in home assistant to turn on my CO2 and run the nutient pump once in the moring.

ESP Home code for reffrence:

esphome:
  name: fish-tank-nutrients-dispenser
  friendly_name: Fish Tank Nutrients Dispenser

esp32:
  board: esp32-c3-devkitm-1
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "B89UpB2duqrRGILX8Nc5XV25tLXL+TAE34eO+ZEVovg="

ota:
  password: "76a8d0d8e9291837d1c8f8c7d0a70265"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Fish-Tank-Nutrients-Dispenser"
    password: "choose your own ;)"

captive_portal:

switch:
  - platform: gpio
    pin: 2
    id: "nutrients_dispenser"
    name: "Nutrients Dispenser"
    on_turn_on:
    - delay: 3000ms
    - switch.turn_off: nutrients_dispenser

Also I added a 300uF electrolytic capacitor to the 12v output of the boost circuit so the inrush of the pump starting didn't knock out the ESP32.

Tags



Model origin

The author marked this model as their own original creation.

License