xArm7 poor velocity control mode

Hi uFactory. We are using xArm7 in velocity control mode from C++. Basically as follows

while(true) {
    // get the qdot from our own custom software 
    std::array<float, 7> qdot_command = ...
    arm.vc_set_joint_velocity(qdot_command.data(), /*is_sync=*/false, /*duration=*/0.1);

Each iteration of the loop takes less than 5ms. We are generally seeing good tracking of the velocity, except some intermittent spikes as pictured in the radians/sec vs sec diagram below.

Is there something wrong with the way we are using the API? Has anyone seen an issue like this before?Thanks.

Hi Mark,

Would you please provide the SN of your xArm7 to support@ufactory.cc?
What is the current firmware and ufactory Studio version?

Would you please provide C++ script with us? We will try if we can reproduce the problem.

Best regards,

Thanks Minna. I uploaded a minimal example here. GitHub - axbycc-mark/xarm-velocity-bug-repro: Reproduction for XArm Velocity Control Issue

Besides the XArm C++ API, it requires the Eigen library. I will follow up with the serial number by email. Please let me know if your team has any issues building the example whether your team can reproduce the problem.

Hi ufactory team. Is there any update on this issue or suggested workarounds? It prevents me from using the velocity control function.