2.9 KiB
2.9 KiB
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 (App Router)
- Database: Prisma with SQLite
- Icons: Lucide React
- 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
# Clone the repository
git clone <repo-url>
cd hdmi-tester
# Install dependencies
npm install
3. Database Initialisation
npx prisma db push
4. Launch the Platform
npm run dev
Open 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.
# Register a simulated device
python3 firmware/simulator.py register
# Interactive Orchestrator
python3 firmware/simulator.py
Simulator Commands:
- Register / Sync: Connects the simulator to the mesh.
- Report Test: Generates mock HDMI spectral data.
- Swap Slot: Updates the active orchestration slot (A/B).
- 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.