April 22, 2025
Description
I keep chickens since about 2 years and really love just spending a few minutes with them after I get home from work. Just to relax. I call it “chicken meditation”. I recently started live streaming my chicken camera on Twitch and to drive user engagement, I want to be able to allow the viewers to activate the chicken feeder from the stream.
But the feeder can be adapted to allow nearly any kind of integration, for example integration with Home Assistant to start the feeding as soon as the coop door is opened in the morning (door sensor) or integration with IFTTT to trigger feeding via E-Mail.
Please note: The integration to twitch is not done yet, I still need to get familiar with the twitch API but it is in the works and I will update the documentation later.
Currently it is just a simple remote control using Arduino Cloud
The feeder uses a rotating disc (shown in blue above) underneath a funnel, driven by a 12V geared motor, to dispense the feed. So it only has 1 moving part which makes it easy to build and maintain.
The device consists of the following parts, all held together by 4pcs M8 threaded rod:
| Top cover with screw lid | |
| 2x Reservoir stacked | |
| Funnel | |
| 4x Spacer | |
| Rotating Disc | |
Base with bottom cover The ring-groove should prevent water from entering the motor shaft-hole |
You'll need the following parts aside from the printed parts:
| Num | Part | Link* |
| 1 | Arduino Nano ESP32 | Arduino |
| 1 | Extension for Arduino Nano (optional, makes wiring easier) | Aliexpress |
| 6 | M8 Nut | Aliexpress |
| 4 | M8 threaded rod, 500mm lenght | Aliexpress |
| 4 | M8 ring nut (eye nut) | Aliexpress |
| 4 | M3x10mm screw (motor mount) | Aliexpress |
| 8 | M3 screw, 12 to 16mm lenght (bottom cover) | Aliexpress |
| 1 | 12V 150rpm geared motor with M8 shaft | Aliexpress |
| 1 | 3.3V logic level relay module | Aliexpress |
| 1 | 12V to 5V step-down converter (make sure to select 5V output variant) | Aliexpress |
| 1 | 12V power supply, min. 1,5A | source locally |
Note: Of course you can always also source the parts locally, especially if Aliexpress is not a good option in your country because of tariffs etc.
Chances are, you have these already at home
| Num | Part | Notes |
|---|---|---|
| 1x | Feeder_Base_Cover | needs support in a small area |
| 1x | Feeder_Base | print upside down without support |
| 1x | Feeder_Disc | use Pause-Print function to insert M8 Nut into the Disc (Nut will be embedded into the print) |
| 4x | Feeder_Spacer15mm | |
| 1x | Feeder_Funnel | needs support |
| 2x | Feeder_Reservoir | Walls can be printed with 5% infill |
| 1x | Feeder_Reservoir_Top | print upside down to reduce needed support |
| 1x | Feeder_Cover_Top | print upside down without support |
| 2x | Cable gland, 12mm, use D7_L10 | Link to model, made by @93djen |
| 2x | Cable gland top nut, use D7_top-nut | Link to model, made by @93djen |
| 2x | Cable gland bottom nut, D7_bottom-nut | Link to model, made by @93djen |
Solder 2 cables to your motor and mount it from below into the Base unit with 4 screws. Screw one M8 nut onto the motor shaft from above and then screw on the Disc with the embedded nut. Use the single nut as counternut. This way you can also adjust the distance between the disc and the funnel to adapt to different feed types. | |
| Assemble the 4 threaded rods with a M8 Nut on one end, secure the nut with threadlocker (optional, but recommended for easy assembly) | |
| Take the printed Base and insert one rod in each corner, the nuts should fit into the hexagonal cutout. | |
| Stack the spacers and the funnel on top | |
| Stack 2 reservoirs on top | |
| Put the reservoir-top onto the stack | |
| Tighten the whole stack together using the 4 pcs M8 Eye nuts (will later be used for mounting the feeder) | |
| Assemble the cable glands into the Base cover | |
| After assembling the electronics (see below), close the Base cover with the 8 M3 screws |
The electronics are quite simple, the Arduino controls the relay that controls the motor, no buttons etc.
The addition of a WS2812 matrix as a display is planned and this is also the reason the bottom cover houses two cable glands.
Also in the future a battery pack and solar panels could be added for complete wireless operation.
Assemble the circuit according to the below schematic:
You can also find the schematic here on Cirkit Designer.
The software will be updated later and I will then post both variants here.
The current software uses Arduino Cloud as remote control, you can use the Arduino IOT-App on your phone or open the dashboard on your PC Browser.
The software features a adjustable feeding time and an adjustable lockout time to prevent multiple feedings in a short time.
Unfortunately Arduino Cloud does not facilitate the sharing of the complete project, so you have to setup your own dashboard and variables on Arduino cloud.
My Dashboard looks like this, setting up is very simple and intuitive.
Behind the feed-duration selection, each Button has its equivalent in ms assigned. The Lockout time is transferred as-is to the Arduino and then multiplied by 1000 in the code.
You will find the complete sketch in the files section. Most of it is auto-generated by the cloud. Only a few things need to be made custom by yourself. For example the “feed”-function and “onTriggerChange”-Function:
void feed()
{
lockout_active= true;
digitalWrite(motor, LOW);
delay(feed_duration);
digitalWrite(motor, HIGH);
trigger_set= false;
ArduinoCloud.update();
delay(lockout_time*1000);
lockout_active= false;
}
void loop() {
ArduinoCloud.update();
// Your code here
if (trigger_set== true)
{
feed();
}
else{}
}
void onTriggerChange() {
// Add your code here to act upon Trigger change
if (trigger==true && lockout_active==false)
{
trigger_set= true;
}
else
{
trigger_set= false;
}
}I know that the use of “delay” is not very elegant and frowned upon but for my V1 of the software and with the deadline for the contest approaching, I opted for this quick solution and currently it does the job.
| Date | Description |
|---|---|
| 2025/04/22 | initial release |
All pictures: © smallthings
Product links may include affiliate links. The price does not change for you but I get a small commission that helps me to continue making awesome things.
If you like this printable and want to support future projects, you can contribute to my next roll of filament on Ko-Fi. https://ko-fi.com/smallthings_ch
License:
Creative Commons — Attribution — Noncommercial — Share Alike