How pgoutham47/taar works
Taar is an offline Android triage app for inspecting electrical distribution boards without touching conductors. A user selects a circuit and captures sensor readings; the capture coordinator gathers magnetic, acoustic, and motion data, DSP and the arc model extract signals, and domain rules fuse those signals into an explainable result. Users can manage installations and references, inspect live views, scan cables, and ask for spoken or on-device assistant explanations. The README documents the product scope; source excerpts are partial, so uncertain subsystem wiring is omitted.
Main entry points: CaptureCoordinator.kt Capture coordinator · TaarViewModel.kt App state · MeasureScreen.kt App screens · MainActivity.kt App entry
Components 23
App and capture
- App entry
spike/android/app/src/main/java/com/taar/ui/MainActivity.kt - App screens
spike/android/app/src/main/java/com/taar/ui/MeasureScreen.kt - App state
spike/android/app/src/main/java/com/taar/ui/TaarViewModel.kt
Sensing and analysis
- Capture coordinator
spike/android/app/src/main/java/com/taar/sensor/CaptureCoordinator.kt - Magnetometer capture
spike/android/app/src/main/java/com/taar/sensor/MagCapture.kt - Audio capture
spike/android/app/src/main/java/com/taar/sensor/AudioCapture.kt - Motion capture
spike/android/app/src/main/java/com/taar/sensor/MotionCapture.kt - Signal processing
spike/android/app/src/main/java/com/taar/dsp - Arc features
spike/android/app/src/main/java/com/taar/dsp/ArcFeatures.kt - Arc model
spike/android/app/src/main/java/com/taar/ml/ArcModel.kt - Signal metrics
spike/android/app/src/main/java/com/taar/domain/Metrics.kt - Live signal view
spike/android/app/src/main/java/com/taar/ui/LivePhysicsScreen.kt
Boards and records
- Board and circuits
spike/android/app/src/main/java/com/taar/domain/HouseView.kt - Local records
spike/android/app/src/main/java/com/taar/domain/Store.kt - Cable scan
spike/android/app/src/main/java/com/taar/ui/CableScanScreen.kt - Board map
spike/android/app/src/main/java/com/taar/ui/BoardMapScreen.kt
Results and guidance
- Diagnostic fusion
spike/android/app/src/main/java/com/taar/domain/Fusion.kt - Spoken result
spike/android/app/src/main/java/com/taar/domain/SpokenResult.kt - Voice interaction
spike/android/app/src/main/java/com/taar/ui/VoiceAgent.kt - On-device assistant
spike/android/app/src/main/java/com/taar/ml/TaarAssistant.kt - Assistant prompt
spike/android/app/src/main/java/com/taar/domain/AssistantPrompt.kt
Other components
- Technician
- Phone sensors
Connections 23
- Technician → App screens: uses
- App entry → App state: creates
- App entry → App screens: shows
- App state → Capture coordinator: requests capture
- Capture coordinator → Magnetometer capture: captures field
- Capture coordinator → Audio capture: captures sound
- Capture coordinator → Motion capture: captures motion
- Magnetometer capture → Phone sensors: reads
- Motion capture → Phone sensors: reads
- Capture coordinator → Signal processing: processes signals
- Capture coordinator → Arc features: extracts features
- Capture coordinator → Arc model: scores audio
- Capture coordinator → Signal metrics: produces metrics
- App state → Diagnostic fusion: analyses reading
- App state → Local records: loads and saves
- App state → Board and circuits: manages circuits
- App screens → Cable scan: opens scan
- App screens → Board map: opens map
- App screens → Live signal view: opens live view
- Diagnostic fusion → Spoken result: supplies result
- App state → Voice interaction: handles voice
- App state → On-device assistant: requests explanation
- On-device assistant → Assistant prompt: uses prompt