All releases

OpenAVC v0.5.0

April 7, 2026

Built-in device simulator for testing without hardware, major Driver Builder expansion, and a comprehensive driver system audit.

Device Simulator

  • Simulate devices directly from the Programmer IDE without any real hardware connected
  • Simulator runs as a managed subprocess that intercepts device connections and responds like real equipment
  • Interactive Simulator UI with device-specific control panels for projectors, displays, switchers, audio DSPs, and cameras
  • Auto-generates simulator controls from driver state variables when no custom controls are defined
  • Inject network conditions (latency, jitter, packet drops) and device errors to test edge cases
  • Auto-syncs simulated devices when the project changes so new devices appear without restarting
  • Simulator badge in the Browse Drivers view shows which community drivers support simulation
  • Validation tool checks driver-simulator compatibility (command coverage, response parsing, type consistency)

Driver Builder Expansion

  • New Device Settings tab for defining configurable hardware settings (labels, types, write commands)
  • New Discovery Hints tab for specifying ports, MAC prefixes, protocols, mDNS names, and hostnames
  • New Simulator tab for configuring initial state, response delays, error injection, and custom controls
  • HTTP transport option with authentication type, SSL, and certificate verification fields
  • Enhanced response pattern editor with value maps, regex quick reference, and clearer field labels
  • State variable improvements including renameable IDs, number/boolean types, and enum value editing
  • Inter-command delay setting and delimiter dropdown with common protocol options
  • YAML export and import support alongside existing JSON

Scripting Improvements

  • Added Python builtins to the script namespace: range, list, dict, set, tuple, sorted, enumerate

Driver System Audit

  • Comprehensive audit fixing issues across the runtime, API, UI, and docs
  • Config values now substituted into response patterns before regex compilation, fixing drivers that use config in matching
  • Transport disconnect now properly triggers auto-reconnect instead of failing silently
  • Reconnect loop capped at 120 attempts with a reconnect_failed state to prevent infinite retries
  • Poll loop distinguishes connection errors from unexpected errors and stops polling before reconnect to prevent races
  • Type coercion now warns on mismatch instead of silently converting to zero
  • State validation and atomic batch updates via set_batch()
  • Structural validation for commands and state_variables at load time

Infrastructure

  • Removed zeroconf dependency (mDNS handled by built-in scanner)
  • Updated FastAPI, uvicorn, aiohttp, and other dependencies to current versions
  • All deployment targets (Docker, Windows installer, Linux archive, Pi image) updated to build and bundle the simulator

Bug Fixes

  • Fixed dropdown clipping in color pickers and preset toolbar
  • Fixed Add Device dialog race condition that could leave stale entries
  • Fixed Driver Builder crash when editing response patterns
  • Fixed community driver index retry logic with proper backoff
  • Fixed MAC address normalization for both colon and dash formats