Hi everyone,
I’m working with an OpenSourceLeg setup (knee + ankle, Dephy Actpack) and I consistently get the following warning right after homing, when starting a simple position-control script:
WARNING: [knee][DephyActpack] Cannot set motor position in mode c_int(1) WARNING: [ankle][DephyActpack] Cannot set motor position in mode c_int(1)
Some context:
-
I’m using position control mode (
set_mode(control_modes.position)) -
The warning appears right after homing, on the first position command
-
The motors do move afterward and track the trajectory reasonably well
-
I’m running on a Raspberry Pi, headless, using Python
-
Frequency: 200 Hz
What I already tried:
-
Explicitly setting position mode after homing
-
Adding a delay (
time.sleep(0.2)) afterset_mode -
Calling multiple
osl.update()cycles (warm-up) before sending the first position command -
Re-checking the mode inside the control loop
Despite this, the warning still appears once at the beginning, then disappears.
My questions:
-
What exactly does
mode c_int(1)correspond to internally? (current mode? impedance init? safety mode?) -
Is this warning expected during the transition right after homing?
-
Is there a recommended or “official” way to arm the position controller before sending the first
set_output_position()? -
Is it safe to ignore this warning if the motors subsequently behave correctly?
Any clarification on the internal state machine of the Dephy Actpack / OSL firmware would be really appreciated.
Thanks a lot!
