System

API Documentation: [cpp] [python] [.NET] [LabVIEW]

Every BrainStem module includes a single system entity. The system entity allows the retrieval and manipulation of configuration settings like the module address and input voltage, control over the user LED, as well as other functionality.


Serial Number

Every USBHub2x4 is assigned a unique serial number at the factory. This facilitates an arbitrary number of USBHub2x4 devices attached to a host computer. The following method call can retrieve the unique serial number for each device.

stem.system.getSerialNumber(serialNumber) [cpp] [python] [NET] [LabVIEW]

Module Default Base Address

BrainStems are designed to be able to form a reactive, extensible network. All BrainStem modules come with a default network base address for identification on the BrainStem network bus. The default module base address for USBHub2x4 is factory-set as 6, and can be accessed with.

stem.system.getModule(module) [cpp] [python] [NET] [LabVIEW]

Saved Settings

Some entities can be configured and saved to non-volatile memory. This allows a user to modify the startup and operational behavior for the USBHub2x4 away from the factory default settings. Saving system settings preserves the settings as the new default. Most changes to system settings require a save and reboot before taking effect. For example, upstream and downstream USB Boost settings will not take effect unless a system save operation is completed, followed by a reset or power cycle. Use the following command to save changes to system settings before reboot:

stem.system.save() [cpp] [python] [NET] [LabVIEW]

Pressing the reset button two times within 5 seconds will return all settings to factory defaults: all ports’ data and power enabled, CDP mode, enumeration delay of 0, 2500mA current limit.

Savable Items

Software Offset

I2C Rate

Router Address

Port Enumeration Delay

Boot Slot

Downstream Boost

Port Mode (SDP, CDP) - each port

Current Limit - per port

Upstream Boost

Port state (data and power)