Automatically becomes True when no locating field is provided
port
str | None
Defaults to None
serial_number
str | None
Defaults to None
baudrate
int | None
Defaults to None, which uses the SDK default
auto_discover: Choose exactly one of this, port, and serial_number
auto_discover: the discovery result must be unique and pass identity validation
port: Specifies the serial port
port: the configured identity can be used only when GloveConfig.side is also provided, the port is recognized as a supported wired directly connected glove, and the old firmware does not support id
serial_number: Discovers by USB serial number, always requires a valid device identity, and cannot use the old firmware fallback
baudrate: must be an integer between 1 and 4294967295 when provided
id: Must be a non-empty algorithm package ID, and the corresponding package must already be installed and be compatible with the current platform and SDK
force: When True, recalculates the calibration using the currently available capture without forcing a new sample
force: after it succeeds the same SDK reuses the new result on stop or reconnect; the next SDK created with force=True still set recalculates again
The two force settings are not interchangeable: use CaptureConfig.force to resample raw frames, or CalibrationConfig.force to recompute calibration from the available capture.
When QNBOT_HOME is not set, the SDK uses ~/.qnbot as the application data root directory.
Set that environment variable to use a different directory. Calibration records are stored in <QNBOT_HOME>/glove/calibrations, and Debug logs in <QNBOT_HOME>/logs.
Timing: it must be set before creating the Sdk
Consistency: the CLI and the SDK should use the same value, otherwise the SDK may not find the algorithm packages the CLI installed
With nothing configured, the built-in terminal enables level colors only in an interactive TTY: the Error label is bold red, the Warning label is yellow, the Info label uses the terminal's default foreground color, and Success key results use green. Only level labels and key results are colored; the whole message is not colorized. Debug logs and diagnostic JSON never contain ANSI colors.
NO_COLOR keeps messages plain text; QNBOT_INTERACTIVE_CONSOLE=1 tells the SDK that the current console can receive user input; PYCHARM_HOSTED=1 is set by JetBrains and makes the JetBrains Python Run/Debug Console input-capable even when it uses a pipe.
Coloring scope: only level labels and key results are colored, never the whole message
Non-TTY: redirected output, pipes and other non-TTY environments behave the same as setting NO_COLOR
Setting only TERM: does not make the SDK treat the console as input-capable
Interaction mode: these variables do not change the configured interaction mode; taking over the interaction still requires CaptureConfig.interaction to be EXTERNAL, see Capture