TinyML Based Bird watcher
A bird detection system to monitor the activity of birds in a geodesic dome using w5300 ethernet module and stm32F4 Discovery
1. What is this project?
TinyML-based Bird Watcher is:
An AI-powered bird monitoring system that uses TinyML to detect birds and WIZnet W5300 Ethernet to provide a real-time web dashboard.
A camera with TinyML counts birds inside an aviary.
Sensors can detect environmental and fire-risk conditions.
An STM32F4 + W5300 combo serves this information over a local web server.
2. Why is it needed? (Problem)
In a bird park / aviary:
Staff need to know:
How many birds are present now
Where they tend to gather
Whether their behavior looks abnormal
Doing this manually:
Is labor-intensive
Cannot cover 24/7
Makes it easy to miss early warning signs
👉 The project solves this by providing automatic, continuous monitoring using TinyML + Ethernet IoT.
3. How does it work? (System Architecture)
(1) Bird detection via TinyML camera
Uses a Grove Vision AI camera.
A custom TinyML object detection model is deployed on the camera.
Input: live camera images
Output:
Number of detected birds
Confidence scores per detection
The bird counting logic runs on the edge inside the camera module.
(2) MCU processing with STM32F4
An STM32F4 Discovery board receives:
Bird count results from Grove Vision AI
(Optionally) environmental sensor data
It aggregates these values into simple status data:
bird_count
temperature, humidity, gas_level, etc.
(3) Networking & web with W5300 Ethernet
Uses a WIZnet W5300 Ethernet controller.
Key features:
Hardware TCP/IP offload (TOE)
Stable, low-latency wired Ethernet
STM32F4 + W5300 runs a local HTTP web server.
When you visit the device IP in a browser:
You see a page like: Number of birds: X
The page can also show sensor/environment data.
👉 No special app needed — any browser on the same network can monitor the birds.
4. Gas-based fire detection model (extension)
The project goes beyond bird counting and can also monitor fire risk.
Additional sensors:
SGP30 – gas sensor
SHT40 – temperature & humidity
A separate TinyML model can analyze these readings to detect:
Sudden temperature spikes
Abnormal gas levels
→ Potential early fire or hazard indicators
So in one device you can monitor:
Bird presence + environmental safety / fire risk
at the same time.
5. Benefits of this system
1) 24/7 automatic monitoring
No need for staff to always be near the aviary.
The system continuously tracks:
Bird count
Environment status
Works day and night without breaks.
2) Early anomaly detection
Behavioral anomalies:
Birds suddenly clustering in one corner
A zone where birds stop appearing
Environmental anomalies:
Abnormal gas readings
Rapid temperature changes
When both bird behavior and sensor data look unusual,
the system can provide a very early warning of problems
(before birds die or infrastructure is damaged).
3) Data-driven management
Over time, the system can log:
Bird count trends
Temperature / humidity / gas patterns
This allows:
Better habitat optimization
Understanding patterns over time (season, time of day, visitor flow)
More informed decisions about environmental control and maintenance
4) Easy access via web browser
Thanks to W5300 Ethernet + built-in web server:
Access the dashboard from:
PC
Tablet
Smartphone
Just open a browser and enter the device’s IP.
👉 No extra software, no cloud dependency for basic monitoring.
6. Why W5300? (WIZnet angle)
In a bird park or outdoor-like environment:
Wired Ethernet is often more:
Reliable than Wi-Fi
Stable under interference
Secure for local infrastructure
W5300 advantages:
Hardware TCP/IP offload (TOE)
High throughput, low latency
Parallel interface to STM32F4
This means:
The STM32 focuses on:
TinyML results
Sensor handling
Web page generation
The W5300 handles all heavy network tasks.
👉 Ideal for TinyML + real-time web monitoring with robust wired connectivity.
7. Possible applications
Beyond bird parks, this architecture can be reused for:
Zoos and wildlife monitoring
Poultry farms, livestock barns
Smart agriculture / greenhouses
Smart city micro-monitoring nodes
Any “count + environment + web dashboard” scenario
Replace “bird” with any detectable object (animals, people, vehicles, assets),
and you can reuse the TinyML + STM32F4 + W5300 stack almost as-is.
