About the Project

Inspiration

Catalonia faces a difficult wild boar management problem, made more urgent by the risk of African swine fever (peste porcina africana). Current containment relies on expensive measures such as continuous surveillance, active hunting, perimeter controls, and large field teams across a very large forest area. If containment fails, the economic impact can be massive for both public budgets and the pork sector. There is also a social cost: when access to natural areas is restricted, millions of people lose spaces for mobility, sport, and mental wellbeing.

We built guAIta to show a different approach: many low-cost edge stations, distributed across forest borders and key zones, that detect locally and trigger action only when evidence supports it.

What it does

guAIta detects wild boars at the edge with Arduino UNO Q, sends compact events to a central server, and updates an operational dashboard in real time. The map-based interface shows stations, detections, alerts, risk level, and recommended actions.

For high-risk events, guAIta also triggers an ElevenLabs automated voice call to authorities with the key context: where it happened, why it matters, and what should happen next.

Core flow:

Edge detection -> server event -> risk scoring -> live dashboard -> automated call -> faster field response

How we built it

We built guAIta as a monorepo with:

  • Edge Impulse FOMO trained on our wild boar dataset for tiny, fast edge inference
  • Arduino UNO Q running local detection and posting events/telemetry
  • Node.js + TypeScript + Fastify backend API
  • Zod shared schemas for strict validation
  • SQLite for lightweight persistence
  • Socket.IO for realtime updates
  • React + Vite + TypeScript + MapLibre GL JS for the operational dashboard
  • ElevenLabs for automated escalation calls

To reduce false positives, we used a rolling confidence filter. A single frame does not trigger an alert. We compute the average confidence over the last 20 frames and alert only if it passes 0.7:

We also include proximity, temperature, humidity, and light telemetry to enrich risk context and operator decisions.

Challenges we faced

The biggest challenge was making the system reliable in a 36-hour hackathon while integrating hardware, backend APIs, realtime map UI, risk logic, and voice automation.

Main challenges were:

  • balancing missed detections vs false positives in changing field conditions
  • keeping one event contract for device events, simulated events, and manual reports
  • delivering a stable, deterministic demo path despite network and tunnel variability
  • making the dashboard useful for operations, not just a visual demo

What we learned

We learned that edge AI value comes from the full system, not only the model. Local inference is powerful because it filters noise at the source and sends only meaningful events. We also learned that alerts are only useful if they quickly reach the right person with clear context. Adding automated voice escalation made guAIta feel much closer to a real emergency-response workflow.

Built With

Share this project:

Updates