Skip to main content
When a device won’t connect or its data looks wrong, run 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
Generic Produced whenever a scan runs, even when no device turns up: how many devices were found, whether any device IPs collide, and whether the devices share a subnet with the host. Per device
  • 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
For the tactile check, place the glove statically. Don’t wear or press it, or the check may report false positives.

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 IP and Host subnet run 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 & diagnose instead 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:
The top-level object splits into two arrays by diagnosis layer, one node per check item, nested via 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.
Earlier versions printed two flat arrays, system and devices. Scripts reading those field names need to move to env and device.