DroneKit: не удалось подключиться к /dev/tty.usbmodem1411: у объекта 'Serial' нет атрибута 'setBaudrate'

Следуя инструкциям DroneKit, я смог запустить код hello.py из руководства QuickStart:http://python.dronekit.io/guide/quick_start.html.

Однако, когда я пытаюсь запустить их основной пример миссии, я получаю ошибку setBaudrate в заголовке:

$ python mission_basic.py --connect=/dev/tty.usbmodem1411

Connecting to vehicle on: /dev/tty.usbmodem1411
Traceback (most recent call last):
  File "mission_basic.py", line 23, in <module>
    vehicle = connect(args.connect, wait_ready=True)
  File "/Library/Python/2.7/site-packages/dronekit/__init__.py", line 2344, in connect
    handler = MAVConnection(ip, baud=baud, source_system=source_system)
  File "/Library/Python/2.7/site-packages/dronekit/mavlink.py", line 37, in __init__
    self.master = mavutil.mavlink_connection(ip, baud=baud, source_system=source_system)
  File "/Library/Python/2.7/site-packages/pymavlink/mavutil.py", line 1106, in mavlink_connection
    return mavserial(device, baud=baud, source_system=source_system, autoreconnect=autoreconnect, use_native=use_native)  
  File "/Library/Python/2.7/site-packages/pymavlink/mavutil.py", line 735, in __init__
    self.set_baudrate(self.baud)
  File "/Library/Python/2.7/site-packages/pymavlink/mavutil.py", line 746, in set_baudrate
    self.port.setBaudrate(baudrate)
AttributeError: 'Serial' object has no attribute 'setBaudrate'

Примечание: tty.usbmodem1411 - это мой USB-кабель, идущий прямо от моего Mac с Yosemite к APM. Я также попробовал с комплектом телеметрии 3DR с теми же результатами. Я также попытался добавить в параметр скорости передачи с тем же результатом.

ОБНОВЛЕНИЕ: использование патча ссылки, которое дало resol, решило мою проблему скорости передачи данных; однако у меня все еще была проблема с тем, что я никогда не нашел сердцебиение. Эта проблема была также из-за обновления pyserial. Использование старого решения pyserial, которое предоставил Тим Райан, устранило обе проблемы.

Ответы на вопрос(3)

Ваш ответ на вопрос