Fish feeder, with bottle hopper adapted for arduino case and sg90

Fish feeder, with bottle hopper adapted for arduino case and sg90
0
2
0
37
updated October 30, 2025

Description

PDF

Fish feeder, with bottle hopper adapted for arduino case and sg90Fish feeder, with bottle hopper adapted for arduino case and sg90

All printed with PLA

Only change I really made was to the base, so the the arduino nano case can fit in
 

Arduino case
Use this case for arduino nano- https://www.printables.com/model/308536-arduino-nano-casehttps://www.printables.com/model/308536-arduino-nano-case

i cut off the arduino nano clips off. Then to mount the case I used blu tack(putty), you can use super glue if you want. Definitely recommend uploading the code to the nano before soldering

Orange →  D9

Brown → ground

Red  → 5v  

I'm not sure which screws to use so will include what spanner driver used. M3 heat certs in the base for the bottle hopper and the tank adapter, with M3 cap head, screws 6mm long for the hopper and 5mm long for the tank adapter. For the servo adapter, I used 2 course screws approximately 2.5-3mm in diameter salvaged from a TV years ago.  The servo-to-slide hardware was the screws supplied in the SG90. 

I didnt like that slider only releases a bit of fish food so I made it, so I changed the code the so it turns the servo motor a little more and also turns 3 times so more food is released credit to andy the original creator- 

#include <Servo.h>

#define SECOND 1000L


 

#define MINUTE (60*SECOND)


 

#define HOUR (60*MINUTE)


 

#define DAY (24*HOUR) //uncomment for actual run
 

// #define DAY (2*SECOND) //test setup


 

const int SERVO_PIN = 9; //pin number for the led pin - this is 'const' since it will not change during code, and saves Arduino memory


 

const int FILL_DEGREE=27; //starting hole location, fill slider with fish food

const int DISPENSE_DEGREE=0; //dispensing hole location
 

Servo servo1;

//setup runs once when the Arduino is turned on

void setup()

{

servo1.attach(SERVO_PIN); //attach the servo on pin SERVO_PIN
 

} //setup() is done, go to loop()

//loop runs forever once setup is complete
 

void loop()

 

{
 

//*****************************************************************************

//NOTE: YOU WILL HAVE TO CHANGE THESE VALUES based on your servo horn alignment.

//******************************************************************************

for(int i=0; i<5; i++){

  servo1.write(FILL_DEGREE); // tell servo to go to fill position

  delay(1000); // delay for 1 second

  servo1.write(DISPENSE_DEGREE); // tell servo to go to dispense location

  delay(1000);

  servo1.write(FILL_DEGREE); // tell servo to go back to fill position

}

delay(DAY); // delay for 1 day

}

 

will upload some pics once i get it set up properly

Tags



Model origin

The author remixed this model.

Differences of the remix compared to the original

edited the base so that arduino nano case can fit into it

Made some changes to the code as well

License