Register address constants for the UFactory xArm Modbus-TCP protocol.
All values are sourced from UxbusReg in the xArm Python SDK
(xarm/core/config/x_config.py) and the xArm Developer Manual V1.10.0.
Use these constants in BB.Ufactory.Protocol command builders rather than
hard-coding raw integers.
Summary
Functions
CLEAN_ERR — clear the current error code
CLEAN_WAR — clear the current warning code
FTSENSOR_ENABLE — 1× u8 (0 or 1)
FTSENSOR_GET_DATA — read 6× fp32 LE [Fx, Fy, Fz, Tx, Ty, Tz]
GET_CMDNUM — queued command count
GET_ERROR — read error and warning codes
GET_JOINTS — read current joint angles in radians
GET_ROBOT_SN — robot serial number
GET_STATE — read current arm state
GET_TCP_POSE — read current Cartesian end-effector pose
GET_VERSION — firmware version string
MOTION_EN — enable/disable joint motion; axis_id 0x08 = all joints
MOVE_LINE — Cartesian linear motion (register 0x15, decimal 21). NOT arc blending.
MOVE_HOME — move to home position
MOVE_JOINT — joint-space P2P motion
MOVE_LINE_AA — Cartesian linear motion with axis-angle orientation
(register 0x5C, decimal 92). NOT arc blending — for blended moves use
move_lineb/0 (0x16) or move_jointb/0 (0x18).
RELOAD_DYNAMICS — reload dynamics model
RS485_RTU proxy — gripper, linear track, and other accessories
SET_MODE — arm mode; 0 = position mode, 1 = servo mode
SET_STATE — arm state; 0 = stop/clear motion, 3 = play, 4 = pause
Functions
@spec clean_err() :: non_neg_integer()
CLEAN_ERR — clear the current error code
@spec clean_war() :: non_neg_integer()
CLEAN_WAR — clear the current warning code
@spec ft_enable() :: non_neg_integer()
FTSENSOR_ENABLE — 1× u8 (0 or 1)
@spec ft_get_data() :: non_neg_integer()
FTSENSOR_GET_DATA — read 6× fp32 LE [Fx, Fy, Fz, Tx, Ty, Tz]
@spec get_cmdnum() :: non_neg_integer()
GET_CMDNUM — queued command count
@spec get_error() :: non_neg_integer()
GET_ERROR — read error and warning codes
@spec get_joints() :: non_neg_integer()
GET_JOINTS — read current joint angles in radians
@spec get_robot_sn() :: non_neg_integer()
GET_ROBOT_SN — robot serial number
@spec get_state() :: non_neg_integer()
GET_STATE — read current arm state
@spec get_tcp_pose() :: non_neg_integer()
GET_TCP_POSE — read current Cartesian end-effector pose
@spec get_version() :: non_neg_integer()
GET_VERSION — firmware version string
@spec motion_en() :: non_neg_integer()
MOTION_EN — enable/disable joint motion; axis_id 0x08 = all joints
@spec move_cart() :: non_neg_integer()
MOVE_LINE — Cartesian linear motion (register 0x15, decimal 21). NOT arc blending.
@spec move_home() :: non_neg_integer()
MOVE_HOME — move to home position
@spec move_joints() :: non_neg_integer()
MOVE_JOINT — joint-space P2P motion
@spec move_line_aa() :: non_neg_integer()
MOVE_LINE_AA — Cartesian linear motion with axis-angle orientation
(register 0x5C, decimal 92). NOT arc blending — for blended moves use
move_lineb/0 (0x16) or move_jointb/0 (0x18).
@spec reload_dynamics() :: non_neg_integer()
RELOAD_DYNAMICS — reload dynamics model
@spec rs485_rtu() :: non_neg_integer()
RS485_RTU proxy — gripper, linear track, and other accessories
@spec set_mode() :: non_neg_integer()
SET_MODE — arm mode; 0 = position mode, 1 = servo mode
@spec set_state() :: non_neg_integer()
SET_STATE — arm state; 0 = stop/clear motion, 3 = play, 4 = pause