The driver should feel the road — not read it.
AAS is a Qt 6 automotive dashboard framework that replaces traditional numeric gauges with ambient peripheral signals — color, rhythm, and spatial audio that communicate road conditions without requiring the driver to look away from the road.
CANBridge → SensorFrame → DataFusion → RoadState → ThemeEngine → QML
↘ DerivedSignals → AlertAudio
- CANBridge — decodes CAN bus frames (real SocketCAN or simulator)
- DataFusion — classifies road state from sensor data (C++, no Qt UI)
- ThemeEngine — exposes
Q_PROPERTYbindings consumed by QML - AlertAudio — spatial audio escalation (Qt Multimedia)
- AmbientRing.qml — core peripheral visualizer (no gauges, no numbers)
cmake -B build -DAAS_SIMULATOR_ONLY=ON -DAAS_BUILD_TESTS=ON
cmake --build build --parallel
./build/aas_app --scenario wetFull documentation at ambient-awareness-system.readthedocs.io
| State | Color | Urgency | Trigger |
|---|---|---|---|
| Clear | Teal #00E5B0 |
0 | Normal dry road |
| Wet | Blue #3B8BFF |
1 | Rain sensor / wiper activity |
| Fog | Violet#C8B8FF |
1 | Visibility < 40% |
| Ice | Cyan #A0F0FF |
2 | Temp < 2°C + wheel slip > 30% |
| Hazard | Red #FF4444 |
3 | ABS/ESC active + slip > 60% |
MIT