Inspiration
Parking in dense urban areas like Dubai wastes millions of hours and liters of fuel every year. Drivers circle blocks endlessly because they have no way to know which spots are open. Meanwhile, enforcement relies on expensive camera systems and human patrols. We asked: what if a parking bay could manage itself, using an $11 sensor and a language model at the edge?
SpotSense was born from the idea that every curb should be self-aware, detecting occupancy in real time, guiding drivers to open spots, settling its own bills, and dispatching enforcement automatically, all without a single camera reading a plate or a face.
What It Does
SpotSense is a complete smart parking platform with four layers:
- Edge sensing: mmWave radar (LD2410) + ESP32 detects vehicle presence at each bay in real time, streaming data over NB-IoT/MQTT at just 0.4W, powered by solar trickle.
- AI agents powered by Qwen Cloud: Six specialized agents work together. Qwen-Max arbitrates enforcement decisions (grace period, settle, or dispatch). Qwen-Plus whispers open bays into drivers' existing navigation (Google Maps, Apple Maps, Waze).
- Connected systems: The agent integrates with ALPR/ANPR cameras for plate recognition, cross-referencing sensor data with zone rules and permit databases to detect violations and trigger automated enforcement.
- Native iOS app: SwiftUI app with live map, voice-powered AI assistant, saved places with geofence notifications, navigation deep links, and CarPlay support.
How We Built It
Backend (Python/FastAPI): Real-time WebSocket server pushing simulated sensor data every 2 seconds. Time-of-day occupancy profiles model Dubai traffic patterns (morning rush, evening peak, night lull). REST API for zones, predictions, and agent queries.
AI layer (Qwen Cloud / DashScope): The iOS app calls the DashScope OpenAI-compatible endpoint (qwen-plus model) directly from Swift for natural language queries. The backend uses a deterministic intent-matching engine as a reliable fallback for demo stability.
Frontend web (Next.js 16 / React 19 / TypeScript / Tailwind / Leaflet): Interactive parking map with live WebSocket updates, predictive analytics dashboard, and AI agent chat interface.
iOS app (SwiftUI): Map view with real-time spot annotations, AI voice assistant with speech recognition, geofence-based notifications for saved places, one-tap navigation to Google Maps/Apple Maps/Waze, Dynamic Island integration for active enforcement, and CarPlay support.
Architecture: All six agents (Edge, Payment, Enforcement, Dispatch, Navigator, Memory) communicate through a shared state model. The edge sensor publishes presence events, the enforcement agent applies grace-period logic, the payment agent settles sessions via API, and the navigator agent pushes open bays to drivers.
Challenges We Faced
- Physical sensors available yet: We built a realistic simulator that models Dubai's traffic patterns by time of day, making the prototype fully functional on simulated data. The hardware spec (LD2410 + ESP32-S3 in IP66 enclosure) is validated and ready for procurement.
- Edge AI without hardware: We demonstrated the Qwen Cloud integration pattern (DashScope API from iOS) that will power the edge agent once sensors are deployed. The deterministic fallback ensures demo reliability while the LLM handles edge cases.
- Multi-platform consistency: Keeping the brand, data model, and user experience consistent across web (Next.js), mobile (Expo React Native), and native iOS (SwiftUI) while each platform has different rendering and interaction paradigms.
- Privacy by design: mmWave radar reads presence, not identity. No plates, no faces, nothing stored that can leak. The connected camera system (ALPR) is a separate opt-in layer to include enforcement integration.
What's Next
- Deploy 200 sensors on one JBR street for a 4-week pilot
- Replace deterministic backend agent with Qwen-Max tool-calling for full LLM-powered enforcement
- Integrate real ALPR/ANPR camera feeds for automated violation detection
- Expand to fleet management and dynamic pricing based on demand prediction
Built With
- alibaba
- cloud
- dashscope
- edge
- esp32
- fastapi
- iot
- leaflet.js
- mmwave
- next.js
- python
- qwen
- radar
- react
- sqlite
- swift
- swiftui
- typescript
- websockets
Log in or sign up for Devpost to join the conversation.