# `BB.Servo.Feetech.Bridge`
[🔗](https://github.com/beam-bots/bb_servo_feetech/blob/main/lib/bb/servo/feetech/bridge.ex#L5)

Parameter bridge for Feetech servo control table parameters.

This bridge exposes servo configuration and control parameters through the
BB parameter system. Status parameters (temperature, voltage, load, errors)
are exposed via sensor messages instead - see `BB.Servo.Feetech.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:mode"` - Operating mode for servo ID 2

## Parameter Categories

- **info** - Read-only identification (firmware_version, servo_version)
- **config** - EEPROM settings, require torque off to write (limits, gains, mode)
- **control** - SRAM settings, writable at runtime (torque_enable, goal_position)

## Usage

    # In robot DSL
    parameters do
      bridge :feetech, {BB.Servo.Feetech.Bridge, controller: :feetech}
    end

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

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

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

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
