Console devices, servo diagnostics, Jetson, logs and settings
Devices
The Devices page displays the USB tree and device details. Refresh/current polling can show connection changes, but a USB device being present does not establish driver access, serial permissions or camera throughput. Compare device identity and physical port when troubleshooting unexpected hardware.
Servo bus workflow
The Servo page presents serial buses and discovered servo IDs. Choose the correct port, baud and servo family before scanning. Scan results are local to the selected bus settings; changing a family/protocol can alter interpretation of register values.
Select the head/body configuration to match discovered IDs to configured motors. A servo ID can have multiple configuration matches across assemblies; inspect the intended assembly rather than accepting the first label blindly.
Selecting a servo loads register metadata and values. Filter by name/address. Read-only registers display feedback; writable registers expose validated numeric/choice inputs and an explicit Save button. Metadata includes EEPROM/SRAM, byte width, range, units and choices. Editing a draft value is separate from writing it.
Quick position/speed controls send real motion requests. The UI queues/debounces movement and tracks in-flight/last-successful values; changing target clears queued state so a prior slider request does not intentionally carry into another target. Always confirm the selected port/ID and calibrated bounds before moving.
Neutral-reset operations are calibration-changing actions. They are different from WebUI's zero-pose button. Back up assembly settings and use the correct servo-family procedure. Avoid concurrent SDK access to the same serial bus.
If scans fail, check physical power, port permissions, baud/family and exclusive bus ownership. If register reads work but motion fails, inspect torque, limits, selected robot configuration and write result. Do not change IDs or baud as a generic discovery fix.
Jetson
The Jetson page shows configured host/status, perception state and restart capability. Provisioning asks for host/IP, SSH user, DDS Ethernet interface and a one-time SSH password where required. Confirm the target host before starting.
Provision, update and Restart Perception have separate effects. Follow task progress and inspect status after completion; SSH reachability alone does not prove camera/GPU/ROS operation. Use live perception acceptance checks after updates. Do not run simultaneous shell and UI provisioning.
Logs
Select a systemd unit from the dropdown and choose Refresh. The page shows returned lines for that unit and associated service state. It is a snapshot view, not an indefinitely streaming journal. “No log lines” can mean no returned lines rather than a healthy service.
Retain task IDs and exact error time when correlating setup/API logs. Redact credentials, provider tokens and personal conversation content before sharing output.
Settings and remote support
Settings displays RustDesk state/ID, install/setup steps, password controls and virtual display. Copy ID copies the host's remote support identity. Installation/password changes run as tasks; wait for completion and check readiness. Virtual display changes host display behavior and can affect remote sessions.
Console update information is displayed separately from SDK releases. Updating the host console and changing the robot stack are different maintenance operations. Check package/version state and retain the previous approved installer for recovery.
More menu and VS Code
The console More menu includes Robot UI and VS Code links, which open separate services. Their reachability and authentication depend on the host/proxy configuration. Do not confuse the public documentation site with a remote console, desktop or development tunnel.
Sources: hr_system_console/frontend/src/pages/{DevicesPage.jsx,ServoPage.jsx,JetsonPage.jsx,LogsPage.jsx,SettingsPage.jsx}, REST client and corresponding backend services.