Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Timeout error when setting a parameter #12
When I try to set a parameter (for example RC1_TRIM) in my python script I receive the following message after a 2 second delay:
timeout setting RC1_TRIM to 1500.000000
However, when I check the value in MAVProxy the value has been set correctly. I found that this message is generated by mavset() in mavparm.py in pymavlink, so perhaps it is a bug there. For now I have commented out these lines (24-35) in mavparm.py to avoid having to wait 2 seconds for each parameter set.
Hi, I'm having the same issue at the moment. Did you have any luck solving it?
I am trying to limit the throttle (using v.parameter['THR_MAX'] = 0). This gives the same timeout error as you've written, although it does actually change THR_MAX to 0. However, future identical commands do not work (e.g. setting THR_MAX back to 100) - the code just hangs when you ask it to make the change.
I investigated the issue. I'm almost positive this is caused by race conditions caused by threading. Spin-waiting on two separate threads for parameter confirmation causes a lot of "BAD DATA" messages to pop out nondeterministically.
A fix for this is targeted for the next major DKPY release, which should fix our threading situation.