Code to manage the USB hubs that support power control and power monitoring of the Fi-Wi remote radio heads (RRHs). The devices supported are acroname.
Go to file
Robert McMahon 86e73bcff2 Calibrate: PCIe while port ON, Ctrl-C save; fix remote ON tracking.
- Keep hub port powered through fiber id + PCIe prompts; power off after.
- Ctrl-C saves fiber_map.json, turns off current port, exits 130; handle during PCIe.
- Remote calibrate: set step_powered only when SSH on succeeds; skip step if remote
  ON failed (was incorrectly treating failed ON as powered).
- power() returns False when hubs cannot connect; CLI on/off exits 1 so SSH sees failures.
- remote_hub_port_power: merge stdout+stderr for diagnostics; ssh_forward_capture uses stdin=DEVNULL.
- Warn when calibrate_remotes yields zero remote steps; clarify remote_ssh.env.example.

Made-with: Cursor
2026-03-29 18:15:13 -07:00
api first commit 2026-03-07 15:59:12 -08:00
cli first commit 2026-03-07 15:59:12 -08:00
docs first commit 2026-03-07 15:59:12 -08:00
hubmgr Calibrate: PCIe while port ON, Ctrl-C save; fix remote ON tracking. 2026-03-29 18:15:13 -07:00
linux_brainstem_driverless first commit 2026-03-07 15:59:12 -08:00
.gitignore fiber panel calibrate 2026-03-27 18:10:07 -07:00
acronam_env.sh first commit 2026-03-07 15:59:12 -08:00
acronam_setup.sh first commit 2026-03-07 15:59:12 -08:00
fiber_map.example.json Calibrate PCIe metadata, Adnacom catalog, hybrid calibrate env. 2026-03-29 17:36:05 -07:00
fiber_map.rpi20.json Refactor hub manager into hubmgr package for maintainability. 2026-03-27 18:33:55 -07:00
hub_manager.py Refactor hub manager into hubmgr package for maintainability. 2026-03-27 18:33:55 -07:00
license.txt first commit 2026-03-07 15:59:12 -08:00
panel_map.example.json Add hub discovery, panel map, SSH remote helper, and Pi deps. 2026-03-25 22:44:56 -07:00
panel_map.rpi20.json Refactor hub manager into hubmgr package for maintainability. 2026-03-27 18:33:55 -07:00
peak_detect.reflex first commit 2026-03-07 15:59:12 -08:00
readme.txt first commit 2026-03-07 15:59:12 -08:00
remote_ssh.env.example Calibrate: PCIe while port ON, Ctrl-C save; fix remote ON tracking. 2026-03-29 18:15:13 -07:00
requirements.txt Add hub discovery, panel map, SSH remote helper, and Pi deps. 2026-03-25 22:44:56 -07:00
version.txt first commit 2026-03-07 15:59:12 -08:00

readme.txt

===============================================================================
BrainStem Linux Driverless
===============================================================================

You must run udev.sh located in the "BrainStem_linux_Driverless" folder 
once prior to connecting to your BrainStem module. By default users do not have 
permissions to connect to BrainStem devices, udev.sh places a rule in the udev 
rules folder granting access to users in group dialout, and adds the current 
user to the dialout rules. Running the script requires sudo access, alternatively 
running the two commands separately from the root user command line will work as 
well replacing $user with the user on your system. Restart the machine when this 
is complete.

The HubTool application requires Qt libraries to be installed in order to run.
The packages required are dependent on the operating system:

* Ubuntu / Debian: 
	* >= 24.04 sudo apt install qt6-base-dev
	* <  24.04 sudo apt install xcb*
* Red Hat 8: sudo dnf install qt5-qtbase-gui
* Red Hat 9 and up: sudo dnf install qt6-qtbase-gui

===============================================================================
If you have questions, please see the reference, or check out our guides
at www.acroname.com.