ArduPilot / ArduPilot/MAVProxy

MAVProxy crashes after reinstallation, when adding new MAVLink message

Open
#623 9 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
595
Forks
773
Avg merge
2d 6h
Merged PRs (30d)
18

Description

Hi!
I added a new MAVLink message CSMAG10 to ardupilotmega.xml. Handling this with ArduCopter works, it also did work with mavproxy until a few weeks ago. I followed the steps from Section 6 in [http://ardupilot.org/dev/docs/code-overview-adding-a-new-mavlink-message.html](url).
After uninstalling pymavlink `/ardupilot/modules/mavlink/pymavlink$ sudo pip2 uninstall pymavlink` and installing the updated version including the new MAVLink message `ardupilot/modules/mavlink/pymavlink$ sudo python2 setup.py install --user`

I tried to open mavproxy again:
`/ardupilot$ sim_vehicle.py -v ArduCopter`

and the following error has been thrown
`Waiting for heartbeat from tcp:127.0.0.1:5760
MAV> Exception in thread main_loop:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/crowdsweeper/.local/bin/mavproxy.py", line 830, in main_loop
master.wait_heartbeat(timeout=0.1)
TypeError: wait_heartbeat() got an unexpected keyword argument 'timeout'`

According to other forum entries ( [#543](https://github.com/ArduPilot/MAVProxy/issues/543) , [#222](https://github.com/ArduPilot/pymavlink/issues/222) ) this seems to be a version compatibility error of pymavlink and mavproxy. I tried installing it manually with
`ardupilot/modules/mavlink/pymavlink$ sudo pip2 install mavproxy --user`. After this step I could run SITL in MAVProxy again (`sim_vehicle.py'), but my new MAVLink message wasn't handled.

How can I reinstall pymavlink with avoiding this `timeout` error?
versions of my installed modules after the last run of `setup.py` are:
pymavlink: 2.3.3
mavproxy: 1.8.6
python: 2.7.12

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at /home/crowdsweeper/.local/bin/mavproxy.py line 830 and compare its wait_heartbeat call with the installed pymavlink 2.3.3 API; review the Section 6 installation steps and the pymavlink setup path mentioned in the issue. Reproduce with sim_vehicle.py -v ArduCopter and verify that MAVProxy starts without the timeout error while recognizing CSMAG10.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.