Terminal Device
Device Category: terminal
Represents the physical host device (terminal) that runs the Smart Panel application. Exposes hardware peripherals such as buttons, status LEDs, buzzer, and onboard sensors as channels. Supports different terminal hardware variants like the SeeedStudio reTerminal CM4 and reTerminal DM.
Required Channels
These channels are mandatory for the functionality of the terminal:
| Channel | Description | Multiple | Details |
|---|---|---|---|
device_information | Provides metadata about the terminal device, including hardware model, firmware version, and operational status. | No | See details |
Optional Channels
These channels are optional and provide additional features:
| Channel | Description | Multiple | Details |
|---|---|---|---|
button | Hardware button input. Multiple instances represent individual buttons (e.g., button_f1, button_f2, button_f3, button_o). | Yes | See details |
indicator | Status indicator LED output. Multiple instances represent individual LEDs (e.g., usr_led, sta_led). | Yes | See details |
buzzer | Onboard buzzer for audible alerts and notifications. | No | See details |
illuminance | Onboard light sensor for measuring ambient light levels. | No | See details |
accelerometer | Onboard accelerometer for orientation and motion detection. | No | See details |
contact | Digital input channels for industrial terminal variants with DI ports. | Yes | See details |
switcher | Digital output channels for industrial terminal variants with DO ports. | Yes | See details |
temperature | Onboard or SoC temperature sensor for monitoring device thermal state. | No | See details |
Use Case Scenarios
-
System status feedback:
- Use indicator LEDs to show system status — green for healthy operation, red for errors or alerts, blinking for pending updates.
-
Physical button automation:
- Map hardware buttons to scene triggers — press F1 to activate a “good night” scene, long-press F2 to toggle all lights, or double-press to arm the alarm.
-
Audible alerts:
- Use the onboard buzzer to produce audible alerts for events like doorbell rings, alarm triggers, or timer completions.
-
Environmental awareness:
- Use onboard sensors like light sensor for automatic display brightness adjustment or accelerometer for orientation detection.
Developer Notes
- The terminal device represents the host hardware itself, not a remote device. Only one terminal device should be active at a time.
- Channel availability depends on the hardware variant. The plugin should auto-detect the hardware and create only the relevant channels.
- Button events are emitted as event-type properties, not polled state. The plugin should use evdev or similar input subsystem for button detection.
- For the reTerminal DM variant, digital inputs and outputs use the contact and switcher channels respectively, which are already defined in the spec.
Last updated on