BB.Servo.Robotis.Bridge (bb_servo_robotis v0.3.0)

Copy Markdown View Source

Parameter bridge for Robotis/Dynamixel servo control table parameters.

This bridge exposes servo configuration and control parameters through the BB parameter system. Status parameters (temperature, voltage, current, errors) are exposed via sensor messages instead - see BB.Servo.Robotis.Message.ServoStatus.

Parameter ID Format

Parameters are identified by strings in the format "servo_id:param_name":

  • "1:position_p_gain" - Position P gain for servo ID 1
  • "2:velocity_limit" - Velocity limit for servo ID 2

Parameter Categories

  • info - Read-only identification (model_number, firmware_version)
  • config - EEPROM settings, require torque off to write (limits, operating_mode)
  • control - RAM settings, writable at runtime (PID gains, profiles)

Usage

# In robot DSL
parameters do
  bridge :robotis, {BB.Servo.Robotis.Bridge, controller: :dynamixel}
end

# Read parameter
{:ok, 800} = BB.Parameter.get_remote(MyRobot, :robotis, "1:position_p_gain")

# Write parameter (control params)
:ok = BB.Parameter.set_remote(MyRobot, :robotis, "1:position_p_gain", 1000)

# List all parameters
{:ok, params} = BB.Parameter.list_remote(MyRobot, :robotis)

Summary

Functions

Returns a specification to start this module under a supervisor.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.