
Gestionar un pequeño gallinero día tras día puede convertirse en una tarea bastante pesada: abrir y cerrar puertas, revisar que haya agua y comida, vigilar que los depredadores no se acerquen… Cuando, además, quieres poder irte de escapada varios días sin depender de un vecino o un cuidador, empieza a tener mucho sentido plantearse una solución de automatización completa del gallinero con tecnología y programación.
De ahí nace SmartCoop, un proyecto de un aficionado con mucha experiencia en electrónica y desarrollo embebido que ha ido evolucionando durante más de una década hasta convertirse en un sistema muy sofisticado. Su autor vive en una pequeña granja en Nueva Gales del Sur, cerca de Canberra (Australia), y mantiene un rebaño de unas 30 gallinas. Su objetivo era reducir al mínimo las tareas rutinarias, mejorar la seguridad frente a zorros muy listos y, de paso, darse el gusto de diseñar hardware y escribir código aprovechando Raspberry Pi, ESP32-S3 y software en Java y C++.
Qué es SmartCoop y cuál es su filosofía
SmartCoop es básicamente un controlador integral para gallineros, construido alrededor de una Raspberry Pi y un módulo ESP32-S3 montados en una PCB SMD diseñada a medida. No es un producto comercial ni pretende serlo: su creador lo mantiene como proyecto personal y de código abierto, sin intención de convertirlo en negocio porque ya tiene un trabajo exigente en la industria de defensa australiana.
La solución va ya por su cuarta generación (GEN4.x), diseñada tras muchos años de pruebas, fallos y mejoras iterativas. A lo largo de este tiempo, el sistema ha ido abordando problemas muy concretos, desde el consumo energético en invierno hasta la astucia de los zorros, pasando por las limitaciones de los sensores o la incomodidad de tener que soldar componentes de agujero pasante. Todo se ha traducido en un diseño actual de PCB con componentes SMD, alimentación por USB-C y múltiples interfaces de sensores y actuadores.
El enfoque de SmartCoop está lejos de los típicos abridores automáticos de puerta que puedes comprar por Internet. Aquí se persigue la automatización casi total del gallinero: puertas, agua, alimento, registro de datos, monitorización remota e incluso lectura RFID de las gallinas. El sistema está pensado para un entorno semi-rural con un número moderado de aves y con problemas reales de depredadores y climatología.
Además, el autor comparte tanto el código como los esquemas de hardware bajo una licencia de código abierto. Cualquiera que se anime puede descargarse los ficheros desde el repositorio en Bitbucket, fabricar sus propias placas e incluso intentar replicar el montaje. En ocasiones, el creador puede llegar a facilitar alguna de sus PCBs ya pobladas, cobrando únicamente el coste de fabricación y ayudando en lo posible con dudas técnicas.
Arquitectura hardware: Raspberry Pi, ESP32-S3 y PCB SMD
El corazón del sistema es una combinación de una Raspberry Pi Compute Module (en su quinta generación) y un ESP32-S3 integrados en una placa personalizada. La Raspberry se encarga de la lógica de alto nivel, la interfaz web, la base de datos y la integración con servicios externos. El ESP32-S3, por su parte, asume tareas de tiempo real, gestión de interrupciones, control directo de motores y sensores, y funciones de bajo consumo.
En las primeras versiones de la placa se utilizaban componentes de agujero pasante y un microcontrolador muy sencillo (PICAXE-14M2) que apenas resolvía el encendido y apagado nocturno de la Raspberry Pi. Con el salto a la cuarta generación y al montaje SMD, se decidió dar un paso grande: sustituir ese micro por un módulo ESP32-S3 de Unexpected Maker, con mayor potencia, bajo consumo, buena comunidad de desarrollo y abundantes librerías abiertas en C++.
El cambio a SMD tuvo varios efectos positivos. Por un lado, las placas son más compactas y económicas; por otro, la disponibilidad y el precio de los componentes de montaje superficial mejoran respecto a los equivalentes de agujero pasante. Además, al externalizar el montaje en un fabricante como PCBWay, el autor pudo recibir varias PCBs totalmente pobladas por un coste similar al que antes pagaba solo por las placas vacías, logrando un montaje más profesional, con menor consumo y alimentado cómodamente por USB-C.
Un detalle curioso que se aprendió “a las malas” tiene que ver con el cableado externo: las cacatúas locales llegaron a picotear y destrozar el mazo de cables, así que ahora todo el montaje de campo va protegido dentro de tubo corrugado o conducto similar. Este tipo de problemas reales han ido moldeando el diseño del proyecto y explican por qué la versión actual incluye conectores robustos, protecciones físicas y decisiones muy prácticas de instalación.
La PCB, en sus iteraciones más recientes, incorpora también interfaces serie adicionales para hablar con lectores RFID UHF, conectores para sensores de peso, entradas de sensores inductivos de puerta, relés para motores, contactos de botones físicos y otras conexiones necesarias para gestionar el gallinero con total flexibilidad.
Funciones clave de la cuarta generación de SmartCoop
La GEN4 de SmartCoop reúne un amplio conjunto de características pensadas para liberar al usuario de tareas diarias y mejorar la seguridad de las aves. El sistema incluye una puerta principal completamente automática, cuya apertura y cierre se gobiernan combinando un sensor de luz con datos de salida y puesta de sol calculados según la ubicación GPS. Así se adapta tanto a la época del año como a las condiciones de iluminación concretas.
Además de la puerta principal que da acceso al interior del gallinero, existe una segunda puerta (yard door) que controla el acceso a un patio o zona exterior. En este caso, la decisión de abrir o no se basa en la previsión meteorológica oficial del Bureau of Meteorology (BOM) australiano. Si el pronóstico supera cierto umbral de probabilidad de lluvia configurable en la base de datos, el sistema mantiene esa puerta cerrada durante el día para que las gallinas no invadan el porche de la casa en busca de refugio… y dejen todo perdido.
El controlador se complementa con una interfaz web muy completa que permite manejar manualmente las puertas, ajustar parámetros de configuración, revisar historiales de sensores y visualizar datos en gráficas. En la propia placa hay varios botones físicos para abrir o cerrar puertas, llenar el tanque de agua o alimentar la Raspberry Pi en caso de que se quiera actuar sin entrar en la interfaz web.
Otro bloque importante es la gestión del agua: el sistema monitoriza el nivel de un depósito y controla su llenado automático. Si se combina con el diseño de tanque y filtro que ideó el autor, se consigue disponer siempre de agua limpia para las gallinas, reduciendo al mínimo la necesidad de vaciar y fregar bebederos llenos de barro o algas. En paralelo, la electrónica incorpora una lógica de apagado y encendido programado de la Raspberry Pi para reducir el consumo nocturno y evitar que la batería y el panel solar tengan que ser sobredimensionados.
El conjunto se completa con una base de datos relacional de código abierto (H2), en la que se registran datos de sensores, valores de configuración, eventos históricos, información horaria y otros parámetros. Además, el sistema dispone de una interfaz GPS que proporciona hora exacta para sincronizar el reloj de tiempo real y coordenadas de latitud y longitud, útiles para calcular automáticamente los horarios de amanecer y atardecer incluso cuando el acceso a Internet falla y no se pueden consultar servicios externos.
Para la supervisión avanzada, SmartCoop publica información en tiempo real mediante un broker MQTT, permitiendo que otras aplicaciones, paneles o dashboards externos representen consumos, estados y alertas. Con todo esto, el sistema se convierte en un auténtico centro neurálgico del gallinero, capaz de funcionar prácticamente sin intervención humana durante varios días.
Automatización y seguridad frente a zorros y otros depredadores
Uno de los dolores de cabeza recurrentes en la granja del proyecto son los zorros. A pesar de que la puerta se cerraba automáticamente al anochecer, se detectaron situaciones peligrosas: tormentas vespertinas que empujaban a las gallinas al interior del gallinero antes de la hora programada, mientras la puerta seguía abierta y los zorros tenían vía libre para colarse. De ahí surgió la idea de utilizar etiquetas RFID UHF para identificar individualmente a cada gallina.
La lógica es sencilla pero muy potente: si todas las gallinas llevan un tag RFID barato (fácil de conseguir en plataformas como AliExpress), el sistema puede contar cuántas han entrado ya al refugio. Cuando detecta que están todas dentro, puede adelantar el cierre de la puerta principal, sin esperar al horario de cierre automático. Así se reduce mucho la ventana de oportunidad que tiene un zorro para colarse aprovechando un cambio brusco de tiempo o cualquier otra circunstancia imprevista, algo muy valioso en contextos donde los depredadores se vuelven rápidamente “expertos” en los patrones del gallinero.
Con las versiones PCB4.4, el diseño incorpora un lector RFID UHF con cuatro antenas, conectado a la Raspberry Pi Compute Module a través de un enlace RS‑232 gestionado por el ESP32-S3. Esta arquitectura permite interrogar de forma continua las etiquetas y saber en cada momento qué animales se encuentran en el interior o en el patio. El autor comenta que la parte de consulta de tags ya funciona y que está en pleno proceso de integrar estos datos con la aplicación en Java que corre en la Raspberry y con la base de datos H2.
Otro uso curioso de la lectura RFID es el control de puesta de huevos. Colocando antenas en los nidales se puede asociar cada huevo con la gallina que lo ha puesto, registrando qué animales ponen, con qué frecuencia y en qué caja. Aunque el creador bromea con que no piensa exigir acuerdos de nivel de servicio a sus gallinas ni imponer objetivos de producción, esta información puede ser útil para pequeños criadores que trabajan con razas de patrimonio genético o programas de selección específicos.
La experiencia con los zorros también llevó a replantearse la lógica de apertura matutina de la puerta principal. Durante un tiempo, el sistema abría siempre a la misma hora, lo que permitió a uno de estos depredadores situarse estratégicamente junto a la puerta unos minutos antes de la apertura. Para romper esa rutina, se desarrolló una mejora que incorpora un componente aleatorio en el momento de apertura.
Ahora, el software descarga desde una web propia una tabla con horarios de alba y ocaso para la ubicación concreta de la granja, con todas las variaciones estacionales. Cada mañana, al llegar la hora aproximada de amanecer, el controlador empieza a monitorizar el sensor de luz hasta que se alcanza un umbral de luminosidad definido. Si se supera un tiempo máximo (por ejemplo, 60 minutos) sin llegar al valor umbral, la puerta se abre igualmente. El resultado es un horario dinámico que combina cambios de estación, variaciones de luz ambiental y un timeout de seguridad, haciendo mucho más difícil que un zorro pueda anticipar el instante exacto de apertura y abusar de ese patrón fijo.
Gestión avanzada del agua: de un estanque sucio a un sistema casi autónomo
En la instalación original, las gallinas se abastecían de agua proveniente de una pequeña charca o estanque. El problema era evidente: según la época del año y el nivel del agua, la calidad variaba mucho y el bebedero se ensuciaba con rapidez, obligando a vaciar, limpiar y volver a llenar el recipiente con demasiada frecuencia. Para evitar estas tareas tan repetitivas, el autor diseñó un sistema completo con depósitos de PVC, filtrado por arena y automatización del llenado.
El esquema parte de un gran tanque fabricado con tubería de aguas pluviales, donde se integra un filtro de arena que mejora significativamente la calidad del agua. Desde ese depósito principal se alimenta un segundo tanque, más pequeño, hecho también con tubo de 90 mm de PVC, desde el que se suministra agua a las gallinas a través de pequeños vasos o tetinas automáticas, del estilo de las que usan las granjas comerciales.
El controlador SmartCoop monitoriza el nivel de agua disponible y activa una bomba o válvula para rellenar el depósito de servicio cuando es necesario. De esta forma se reduce casi a cero la necesidad de que el dueño tenga que acercarse cada pocos días a vaciar, frotar y rellenar los bebederos, manteniendo un circuito más higiénico y homogéneo. Al unir esta parte hidráulica con la electrónica, la solución consigue un suministro de agua estable, limpio y casi libre de mantenimiento cotidiano.
Esta mejora se combina con el control energético nocturno: si por la noche no es necesario mover bombas ni usar la pantalla de la Raspberry Pi, se programa el apagado parcial del sistema para ahorrar consumo. El equilibrio entre potencia disponible de los paneles solares, capacidad de la batería y requerimientos de la electrónica era un problema serio durante los inviernos nublados de Canberra, y la estrategia elegida fue gestionar el encendido y apagado de forma inteligente en vez de invertir en paneles y baterías más caros.
Control del alimento y dispensadores con sensores de peso
Otro frente crítico para cualquiera que tenga un gallinero es el alimento. Si se quiere poder salir de viaje varios días, no basta con llenar un comedero pequeño y esperar que aguante. El autor se planteó cómo conseguir que el sistema “avisara” de forma fiable cuando el pienso estuviera cada vez más justo y decidió integrar sensores de peso basados en el chip NAU7802 en la versión más reciente de la PCB.
La idea es utilizar estos convertidores y células de carga para pesar el contenido de los dispensadores de alimento. Con esta información, SmartCoop puede estimar cuántos días de comida quedan, detectar si hay consumos anómalos (por ejemplo, por presencia de otras especies o roedores) y disparar avisos precisos cuando se alcance un umbral bajo. La intención del diseño es que estos depósitos contengan al menos un par de semanas de alimento, de forma que el propietario y su pareja puedan ausentarse unos días sin tener que pedir favores a nadie.
Además, el sistema registra el consumo en la base de datos, de modo que se pueden revisar patrones a medio plazo: cuánto comen las gallinas según la época del año, si cambia el gasto cuando se añaden o retiran animales, etc. Esto puede ser útil para ajustar raciones, prever compras de pienso o incluso detectar problemas de salud en el rebaño si se observan variaciones extrañas. Toda esta lógica está pensada para que la gestión del alimento deje de depender exclusivamente de miradas rápidas al comedero y pase a apoyarse también en medidas objetivas.
Consumo energético, apagado nocturno y variantes móviles
Uno de los retos iniciales fue lograr que el sistema pudiera alimentarse con una combinación razonable de panel solar y batería sin quedarse sin energía cada pocos días de mal tiempo. Con una Raspberry Pi y una pantalla funcionando las 24 horas, durante los inviernos de Canberra bastaban unos cuantos días nublados para que el nivel de batería se desplomara. Antes de lanzarse a comprar un panel y una batería mucho mayores, el autor decidió introducir una gestión inteligente del encendido y apagado.
En las primeras iteraciones se usó un pequeño microcontrolador PICAXE para cortar la alimentación de la Raspberry Pi y otros elementos en determinadas franjas horarias, aprovechando la información de un reloj de tiempo real (RTC). La lógica era que, mientras las gallinas duermen, no hace falta tener toda la electrónica encendida, los sensores en continuo funcionamiento ni la pantalla mostrando información.
Con la migración a la placa SMD y al ESP32-S3, esta responsabilidad se trasladó al nuevo módulo, permitiendo estrategias más refinadas y flexibles. Incluso se llegó a contemplar un modo de operación móvil, pensado para un “Chicken Tracker” portátil que se desplazaría de un punto GPS a otro, en el que durante el día estaría apagado y por la noche se activaría para registrar posiciones o estados. Esta forma de trabajar demuestra una mentalidad de optimización energética muy centrada en el uso real y en las limitaciones del hardware disponible.
Gracias a este enfoque, se solucionaron los problemas de baterías descargadas recurrentes sin verse obligado a montar instalaciones solares sobredimensionadas. El sistema ahora se apaga durante horas en las que no aporta valor, pero sigue cumpliendo con todas sus funciones críticas de automatización y seguridad en los momentos clave: apertura y cierre de puertas, verificación nocturna y cambios de estado importantes.
Interfaz web en Java, monitorización remota y notificaciones
Más allá de la parte puramente física, SmartCoop integra una capa de software muy trabajada. Aprovechando la experiencia del autor con Java, se desarrolló una aplicación que corre en la Raspberry Pi y que incluye un servidor web ligero basado en Javalin para ofrecer una interfaz de control y supervisión. Esta interfaz permite abrir o cerrar puertas, forzar el llenado de agua, consultar estados de sensores y revisar gráficas generadas con Google Charts.
Esta mejora surgió tras un incidente en el que el sistema detectó un fallo de puerta (un timeout al intentar cerrar) y envió un correo avisando de que la puerta principal podía no haberse cerrado del todo. Hasta ese momento, para diagnosticar ese tipo de problemas había que estar físicamente delante de la pantalla táctil local y navegar por las pantallas del sistema. Para reducir esa dependencia, se optó por crear una interfaz web accesible desde cualquier lugar con conexión a Internet, delegando en Java y en Javalin la tarea de servir páginas sencillas con botones de control y estados en tiempo real.
Cada día, los correos electrónicos que envía el sistema incluyen la IP pública del router que da salida a Internet. De esta forma, el propietario puede conectarse al panel web desde fuera de casa y actuar como si estuviera delante del gallinero. A futuro, el autor plantea ampliar esa interfaz para exponer funciones de diagnóstico más detalladas y acceso a configuraciones avanzadas, pero ya en su estado actual, la posibilidad de abrir o cerrar puertas, revisar niveles y validar alarmas desde cualquier parte resulta clave para irse de vacaciones con tranquilidad.
La aplicación en Java se apoya en la base de datos H2 para persistir información de largo plazo y en el broker MQTT para la distribución de lecturas y eventos. Esto abre el camino a integrar SmartCoop en otras plataformas domóticas o dashboards genéricos, que pueden suscribirse a los tópicos MQTT y mostrar el estado del gallinero junto a otros dispositivos domésticos o agrícolas.
Un añadido especialmente útil es la “comprobación nocturna final”. Este módulo recorre el estado de todas las puertas, depósitos y sensores al llegar una hora determinada y envía un resumen por correo a una lista configurable de destinatarios. Así, si el hijo adolescente se olvidó de cerrar una puerta manual o si algún actuador ha tenido un problema, es posible detectarlo justo antes de desconectar partes del sistema para el modo de bajo consumo nocturno y corregirlo aún a tiempo.
Integración con previsión meteorológica y vida diaria con las gallinas
SmartCoop también se integra con fuentes de datos externas, en particular con la previsión meteorológica del servicio oficial australiano (Bureau of Meteorology). De forma periódica, la aplicación descarga un fichero XML de predicción y analiza si la probabilidad de lluvia para la zona supera cierto umbral establecido en la base de datos. Si eso ocurre, el sistema decide mantener cerrada la puerta secundaria que da acceso al patio, para evitar que las gallinas se repartan por la zona de la casa y, de paso, llenen de excrementos el porche cuando llueve o hace frío.
Esta lógica se diseñó tras observar que, en días incómodos, las gallinas preferían pasearse por la terraza de madera, pegadas a la casa, en lugar de moverse por el prado. El resultado era tener que usar la hidrolimpiadora continuamente para dejar la zona en condiciones. Con la decisión automática basada en la previsión de lluvia, se consigue que las aves se queden mucho más en el interior del gallinero o en zonas menos problemáticas, reduciendo las tareas de limpieza que nadie quiere hacer cada semana.
Además, el sistema recoge todos estos datos meteorológicos y de comportamiento en la base H2, lo que permite analizar a posteriori cómo responden las gallinas a distintos patrones de clima o si se observan correlaciones curiosas entre lluvias, cambios de horario, consumo de pienso y frecuencia de puesta.
La combinación de sensores internos, datos externos (como el tiempo o los horarios de amanecer/atardecer) y capacidad de decisión en la lógica de Java hace que SmartCoop sea algo más que un simple automatismo de puertas. En la práctica se comporta como un pequeño “gestor de explotación avícola doméstica”, capaz de ajustarse de forma dinámica a las condiciones del entorno y a las necesidades reales del rebaño.
Vivir con un sistema así también implica cierta disciplina digital: revisar los correos periódicos, controlar que la IP pública no cambie sin saberlo, vigilar la salud de la Raspberry Pi y el panel solar, etc. Pero, a cambio, se gana la posibilidad de ausentarse hasta una semana sin que nadie tenga que acercarse a abrir, cerrar, rellenar agua o comprobar si los zorros siguen merodeando alrededor.
En conjunto, SmartCoop demuestra cómo la combinación de electrónica embebida, programación en Java y C++, sensores variados, comunicación MQTT y diseño de hardware a medida permite convertir un gallinero de aficionado en una instalación altamente automatizada, segura frente a depredadores, eficiente en consumo y mucho más cómoda de gestionar, todo ello manteniendo el espíritu de proyecto abierto y sin pretensiones comerciales que lo vio nacer.