Inspiration

Students and developers spend hours debugging handwritten SQL queries, algorithmic code, and STEM derivations hunched over tiny 6-inch smartphone screens, while a massive 55-inch Fire TV sits idle in their living room.

Smart TVs are the ultimate communal learning canvas, but they suffer from two major hardware limitations: they lack built-in cameras to capture whiteboards, and typing code via a remote control D-pad on an on-screen keyboard is frustratingly slow.

We created VisionBoard TV to solve this: a native 10-foot multi-modal AI diagnostic studio for Fire OS that pairs an embedded companion bridge with your smartphone's camera, transforming your television into an interactive, voice-coached STEM and code whiteboard.


What It Does

  1. Second-Screen Mobile OCR Bridge (Port 8080): When a user captures handwritten code or homework on their phone or companion browser, the payload streams over an embedded local Ktor socket server into the Fire TV in under 100 milliseconds.
  2. Multi-Modal Diagnostic Walkthrough: Analyzes the problem using Amazon Bedrock Runtime SDK (amazon.nova-pro-v1:0) and Google Gemini, decomposing defects into sequential step cards with syntax diffs and corrected code.
  3. 10-Foot D-Pad Focus Navigation: Built from the ground up for the Fire TV remote using Jetpack Compose for TV with high-contrast #FF9900 Amazon-Orange focus rings and a zero-scroll 1080p dashboard.
  4. Android TTS Voice Coaching: Speaks the diagnostic reasoning aloud over television speakers so students can learn comfortably from the couch.
  5. Interactive Remote Quiz: Dynamically generates a 3-option multiple-choice comprehension check with instant green/red visual validation and spoken feedback.
  6. Zero-Credential Deterministic Fallback: Features an offline deterministic engine that guarantees immediate, reliable evaluation even without cloud API keys configured.

How We Built It

  • Fire OS / Android TV: Built natively in Kotlin using Jetpack Compose for TV (androidx.tv:tv-material), Material 3, and Android Architecture Components (ViewModel, StateFlow).
  • Second-Screen Socket Bridge: Developed an embedded non-blocking Ktor CIO HTTP/WebSocket server on port 8080 (io.ktor:ktor-server-cio:2.3.12) embedded directly within the Fire TV APK.
  • Computer Vision & AI Diagnostics: Integrated Google ML Kit Optical Character Recognition for instant whiteboard text extraction, paired with Amazon Bedrock Runtime SDK (amazon.nova-pro-v1:0) and Google Gemini.
  • Kiro Spec-Driven Architecture: Managed the entire application lifecycle through .kiro/specs/visionboard-tv/ (requirements.md in EARS notation, design.md, and tasks.md).
  • Standalone Open Source Library: Extracted our socket protocol into firetv-companion-bridge-kt, an MIT-licensed, JUnit 5-tested library for the broader Fire TV developer ecosystem.

Challenges We Overcame

  1. AAR Metadata Compile Mismatch (Android-34 vs Android-35): Modern Jetpack Compose TV libraries required compileSdk = 35, whereas Fire TV documentation references API 34. We harmonized the build by configuring compileSdk = 35 while setting targetSdk = 34 and minSdk = 26 to maintain 100% binary compatibility with Fire OS devices.
  2. Ktor Netty/CIO Coroutines Collision (KTOR-7054): Ktor 2.3.9 invoked a refactored internal coroutine method causing runtime NoSuchMethodError crashes on Android. We implemented a Gradle dependency resolution strategy forcing Ktor 2.3.12.
  3. 10-Foot Focus Ring Usability: Standard focus indicators disappear on large living-room displays. We engineered custom .onFocusChanged borders applying #FF9900 3dp focus borders and container transformations on active elements.

Open Source Mini Challenge Contribution

Built With

  • amazon-bedrock
  • amazon-fire-tv
  • android-tv
  • gemini
  • google-ml-kit
  • java
  • jetpack-compose
  • kiro
  • kotlin
  • ktor
  • material-design
Share this project:

Updates

Submission history