wuji doctor first. It checks the host environment, then scans for devices and samples real-time data (about 100 frames, done in seconds), printing a tree-shaped report that helps narrow down the fault.
What It Checks
Checks run in three layers: host environment, device discovery, and per device. Environment- Software versions: CLI, Wuji SDK, and Wuji Studio versions, and whether updates are available
- System info: whether the operating system and its version are supported
- Network interfaces: the online interfaces and their addresses, flagging routing risks when several are present
- wuji_glove
- EMF disconnection check: locates the affected finger and distinguishes RX (receiver) from TX (transmitter) faults
- Tactile sensor dead-pixel, bad-row, and bad-column check
Usage
Read the Report
- Status marks: ✔ pass, ! warn (advisory anomaly), ✘ fail (confirmed fault), and ~ skip (the check didn’t apply or couldn’t run)
Tip:lines are fix suggestions- Exit code: 0 means no failures (warnings don’t count as failures), and 1 means a failure exists or the diagnosis couldn’t complete — ready for script assertions. No device attached is not an error: the environment and discovery checks still run and set the exit code
- Checks without a target:
Duplicate device IPandHost subnetrun only when discovery finds a UDP device. If every device uses USB or Zenoh, both checks show~ not attempted: no UDP devices. A device without a diagnostic recipe also shows~ connect & diagnoseinstead of a fault. These skipped checks don’t make the exit code 1. Connection and data-collection failures still show ✘ and return 1 - Tactile check results are advisory (capped at warn) — verify with the raw tactile matrix shown by
wuji viz
Expand All Checks
By default only anomalies show. Use-v to expand every check, including passing ones, to see exactly what was checked. Only the device section appears below — real output still prints the Environment and Generic sections ahead of the devices:
Structured Output
--json prints the same information as the tree report in machine-readable form, for saving and scripting:
children:
An array is omitted only when empty.
env is always there online, and device is there whenever a scan ran or a device was targeted.
The example below assumes discovery found a UDP device. With only USB or Zenoh devices, the discovery node and both IP checks use "status": "skip", and the summary states that the IP checks were skipped because no UDP device was found.