Trouble Calibrating the Leader Arm #2

Closed
opened 2025-07-08 08:34:46 -04:00 by AtHeartEngineer · 0 comments

Originally created by @htchr on 6/26/2025

Hello,

I'm working on setting up the SO101.
When I attempt to calibrate the leader I get the following output:

(lerobot) jack:lerobot$ python -m lerobot.calibrate     --teleop.type=so101_leader     --teleop.port=/dev/ttyACM0 --teleop.id=big_bird_leader
Move big_bird_leader SO101Leader to the middle of its range of motion and press ENTER....
Traceback (most recent call last):
  File "/home/jack/miniconda3/envs/lerobot/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/jack/miniconda3/envs/lerobot/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/jack/Documents/lerobot/lerobot/calibrate.py", line 84, in <module>
    calibrate()
  File "/home/jack/miniconda3/envs/lerobot/lib/python3.10/site-packages/draccus/argparsing.py", line 225, in wrapper_inner
    response = fn(cfg, *args, **kwargs)
  File "/home/jack/Documents/lerobot/lerobot/calibrate.py", line 79, in calibrate
    device.calibrate()
  File "/home/jack/Documents/lerobot/lerobot/common/teleoperators/so101_leader/so101_leader.py", line 92, in calibrate
    homing_offsets = self.bus.set_half_turn_homings()
  File "/home/jack/Documents/lerobot/lerobot/common/motors/motors_bus.py", line 714, in set_half_turn_homings
    self.write("Homing_Offset", motor, offset)
  File "/home/jack/Documents/lerobot/lerobot/common/motors/motors_bus.py", line 1019, in write
    value = self._encode_sign(data_name, {id_: value})[id_]
  File "/home/jack/Documents/lerobot/lerobot/common/motors/feetech/feetech.py", line 317, in _encode_sign
    ids_values[id_] = encode_sign_magnitude(ids_values[id_], sign_bit)
  File "/home/jack/Documents/lerobot/lerobot/common/utils/encoding_utils.py", line 23, in encode_sign_magnitude
    raise ValueError(f"Magnitude {magnitude} exceeds {max_magnitude} (max for {sign_bit_index=})")
ValueError: Magnitude 31272 exceeds 2047 (max for sign_bit_index=11)

I had to upgrade the firmware of one of the motors, but I don't think that caused this issue.
Has anyone else seen this error?

Thank you,

*Originally created by @htchr on 6/26/2025* Hello, I'm working on setting up the SO101. When I attempt to calibrate the leader I get the following output: ```bash (lerobot) jack:lerobot$ python -m lerobot.calibrate --teleop.type=so101_leader --teleop.port=/dev/ttyACM0 --teleop.id=big_bird_leader Move big_bird_leader SO101Leader to the middle of its range of motion and press ENTER.... Traceback (most recent call last): File "/home/jack/miniconda3/envs/lerobot/lib/python3.10/runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "/home/jack/miniconda3/envs/lerobot/lib/python3.10/runpy.py", line 86, in _run_code exec(code, run_globals) File "/home/jack/Documents/lerobot/lerobot/calibrate.py", line 84, in <module> calibrate() File "/home/jack/miniconda3/envs/lerobot/lib/python3.10/site-packages/draccus/argparsing.py", line 225, in wrapper_inner response = fn(cfg, *args, **kwargs) File "/home/jack/Documents/lerobot/lerobot/calibrate.py", line 79, in calibrate device.calibrate() File "/home/jack/Documents/lerobot/lerobot/common/teleoperators/so101_leader/so101_leader.py", line 92, in calibrate homing_offsets = self.bus.set_half_turn_homings() File "/home/jack/Documents/lerobot/lerobot/common/motors/motors_bus.py", line 714, in set_half_turn_homings self.write("Homing_Offset", motor, offset) File "/home/jack/Documents/lerobot/lerobot/common/motors/motors_bus.py", line 1019, in write value = self._encode_sign(data_name, {id_: value})[id_] File "/home/jack/Documents/lerobot/lerobot/common/motors/feetech/feetech.py", line 317, in _encode_sign ids_values[id_] = encode_sign_magnitude(ids_values[id_], sign_bit) File "/home/jack/Documents/lerobot/lerobot/common/utils/encoding_utils.py", line 23, in encode_sign_magnitude raise ValueError(f"Magnitude {magnitude} exceeds {max_magnitude} (max for {sign_bit_index=})") ValueError: Magnitude 31272 exceeds 2047 (max for sign_bit_index=11) ``` I had to upgrade the firmware of one of the motors, but I don't think that caused this issue. Has anyone else seen this error? Thank you,
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/SO-ARM100#2