# HDMI Tester Enterprise A high-performance orchestration and telemetry platform designed for real-time monitoring and lifecycle management of HDMI testing hardware. This platform provides a "single pane of glass" view for large fleets of test nodes, offering sub-ms edge latency tracking and remote hardware orchestration. ## 🚀 Key Features - **Operational Telemetry**: Real-time monitoring of active nodes, test results, and system health. - **Node Insights**: Tactical spectral analysis of HDMI bus metrics including DDC, CEC, and TMDS voltage verification. - **Command Center**: Enterprise-grade fleet management for device enrollment and environment orchestration. - **Device Configuration**: - Remote renaming and identification. - Multi-slot firmware management (A/B switching). - Remote Power Controls (Reboot, Shutdown). - Secure firmware binary deployment (.bin/.elf). - **Premium UI/UX**: - High-contrast Light and Dark modes. - Safari-optimized rendering and backdrop filters. - Fluid micro-animations and responsive layouts. ## 🛠 Tech Stack - **Framework**: [Next.js 15](https://nextjs.org/) (App Router) - **Database**: [Prisma](https://www.prisma.io/) with SQLite - **Icons**: [Lucide React](https://lucide.dev/) - **Styling**: Tailwind CSS with a custom CSS variable design system - **Hardware Simulation**: Python-based simulator for headless testing ## 🏁 Quick Start ### 1. Prerequisites Ensure you have Node.js (v18+) and Python 3 installed. ### 2. Installation ```bash # Clone the repository git clone cd hdmi-tester # Install dependencies npm install ``` ### 3. Database Initialisation ```bash npx prisma db push ``` ### 4. Launch the Platform ```bash npm run dev ``` Open [http://localhost:3000](http://localhost:3000) to access the dashboard. ## 🤖 Hardware Simulation To test the platform without physical hardware, use the provided simulator. It mimics a head unit with active mesh capabilities. ```bash # Register a simulated device python3 firmware/simulator.py register # Interactive Orchestrator python3 firmware/simulator.py ``` ### Simulator Commands: 1. **Register / Sync**: Connects the simulator to the mesh. 2. **Report Test**: Generates mock HDMI spectral data. 3. **Swap Slot**: Updates the active orchestration slot (A/B). 4. **Automated Loop**: Continuously reports telemetry. ## 🔌 API Overview ### Device Interaction - `POST /api/devices/register`: Hardware enrollment. - `PATCH /api/devices/[id]`: Update device configuration (Name, Slot). - `POST /api/devices/[id]/command`: Remote power operations (Reboot, Shutdown). - `POST /api/devices/[id]/firmware`: Orchestrated firmware deployment. ### Telemetry Reporting - `POST /api/tests/report`: Transmit spectral analysis results from hardware. - `GET /api/dashboard/stats`: Retrieve aggregate fleet metrics. --- *Built for precision. Orchestrated for scale.*