This commit introduces a complete integration for Mirabox StreamDock devices with Home Assistant, allowing users to control entities and monitor states directly from the hardware. Key features included: - Support for multiple Mirabox models: N1, N3, N4, N4Pro, XL, M3, M18, K1Pro, and various 293 variants. - Home Assistant WebSocket integration for real-time entity updates and service execution. - Dynamic LCD key rendering with support for custom icons, labels, and entity-state aware colors. - Input handling for physical buttons and rotary encoders (knobs). - Multi-page navigation support with configurable cycle keys and knobs. - Cross-platform transport layer using a custom HID library. - Configuration system using YAML with page-based layouts. - Linux udev rules for non-root USB access.
25 lines
495 B
Python
25 lines
495 B
Python
from enum import Enum
|
|
|
|
class device_type(Enum):
|
|
dock_universal = 0
|
|
dock_293 = 1
|
|
dock_293v3=2
|
|
dock_293s=3
|
|
dock_293sv3=4
|
|
dock_m3=5
|
|
dock_m18=6
|
|
dock_n1=7
|
|
dock_n3=8
|
|
dock_n4=9
|
|
dock_n4pro=10
|
|
dock_xl=11
|
|
k1pro=12
|
|
|
|
class FeatrueOption:
|
|
def __init__(self):
|
|
self.hasRGBLed = False
|
|
self.ledCounts = 0
|
|
self.supportConfig = False
|
|
self.supportBackgroundImage = True
|
|
self.deviceType = device_type.dock_universal
|