USB Extender
A Node object whose type is USB_EXTENDER. The USB_EXTENDER node represents a USB 2.0 extender attached to a BlueRiver device.
It is the modern, chipset-agnostic replacement for the legacy
USB_ICRON node and supports the same
USB pair/unpair, role, and peer concepts using a slightly restructured schema.
Migrating from
USB_ICRONThe Control Server emits both USB_ICRON (legacy) and USB_EXTENDER (new) nodes side-by-side
during the transition window. If you are updating an existing integration that was reading the
USB_ICRON node, see the USB Extender Node Rename Migration Guide
for the full field-by-field mapping and recommended migration pattern.
Configuration
UsbExtenderNodeConfig{
"role" : String,
"program_mode" : String,
"rs232_port" : Integer,
"peers" : Array
}
| Member name | Type | Description |
|---|---|---|
role | String | The role of the extender: LOCAL for a local extender (LEX) or REMOTE for a remote extender (REX). Replaces the legacy extender_type field. |
program_mode | String | Currently enabled programming mode for the USB extender. One of: FIRMWARE (extender's firmware), EEPROM (non-volatile configuration memory), or NONE (programming disabled). Set using the icron program command. |
rs232_port | Integer | The zero-based number of the RS-232 port through which programming of the USB extender is enabled. Undefined if program_mode is NONE. |
peers | Array | Configured peer list for this extender (used on LEX devices to declare pair targets). Each entry has the shape { "mac_address": String, "device_id": String }. |
Status
UsbExtenderNodeStatus{
"chipset_type" : String,
"chip_present" : Boolean,
"mac_address" : String,
"reachable" : Boolean,
"revision" : String,
"ip_mode" : String,
"ip_address" : String,
"link_status_support" : Boolean,
"sui_enabled" : Boolean,
"peers" : Array,
"role" : String
}
| Member name | Type | Description |
|---|---|---|
chipset_type | String | Identifies the underlying USB-extender chipset; "ICRON" on current hardware. |
chip_present | Boolean | true indicates that the extender chip is detected. false if a USB extender is enabled in the hardware configuration but the chip has not been populated. |
mac_address | String | MAC address of this device's extender chip. Blank ("") if the chip has not been detected. |
reachable | Boolean | true if the USB extender network interface is reachable with an IP address, false otherwise. |
revision | String | The revision level of the extender chip firmware. |
ip_mode | String | The active IP mode of the extender interface, either DHCP or manual (static). |
ip_address | String | The current IP address of the extender interface. |
link_status_support | Boolean | Indicates whether the extender chip supports the link-status attribute. |
sui_enabled | Boolean | Indicates whether SUI (single-user / multi-user) configuration is enabled on this extender. |
peers | Array | Currently linked peers, as reported by the extender. Each entry has the shape { "mac_address": String, "device_id": String }. Replaces the legacy sui_peers array and the legacy scalar peer_mac_address / peer_device_id fields. |
role | String | A convenience copy of configuration.role (LOCAL or REMOTE). |
Inputs
None.
Example
As returned by get device, a REX node paired with a LEX on another device:
REX{
"type": "USB_EXTENDER",
"index": 0,
"configuration": {
"role": "REMOTE",
"program_mode": "NONE",
"rs232_port": 0,
"peers": []
},
"status": {
"chipset_type": "ICRON",
"chip_present": true,
"mac_address": "0016c035571d",
"reachable": true,
"revision": "1.9.4",
"ip_mode": "DHCP",
"ip_address": "192.168.100.22",
"link_status_support": true,
"sui_enabled": true,
"peers": [
{
"mac_address": "0016c035566f",
"device_id": "d8803962e132"
}
],
"role": "REMOTE"
},
"inputs": []
}
LEX, on device d8803962e132{
"type": "USB_EXTENDER",
"index": 0,
"configuration": {
"role": "LOCAL",
"program_mode": "NONE",
"rs232_port": 0,
"peers": []
},
"status": {
"chipset_type": "ICRON",
"chip_present": true,
"mac_address": "0016c035566f",
"reachable": true,
"revision": "1.9.4",
"ip_mode": "DHCP",
"ip_address": "192.168.100.20",
"link_status_support": true,
"sui_enabled": true,
"peers": [
{
"mac_address": "0016c035571d",
"device_id": "0016c035566e"
}
],
"role": "LOCAL"
},
"inputs": []
}