PX4 Autopilot Software
Go to file
Julian Oes 9a96ca14be Tools: make Python import error more readable
The problem with printing the exception was that starting with
Python 3.6 the ImportError is yet another (sub) exception called
ModuleNotFoundError which can't be printed as a string and then triggers
another exception:

```
Traceback (most recent call last):
  File "/home/julianoes/src/Firmware/Tools/serial/generate_config.py", line 11, in <module>
    import jinja2
ModuleNotFoundError: No module named 'jinja2'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/julianoes/src/Firmware/Tools/serial/generate_config.py", line 13, in <module>
    print("Failed to import jinja2: " + e)
TypeError: must be str, not ModuleNotFoundError
```

As per @bkueng's suggestion the easiest is to cast the exception to str
and that way prevent the second exception.
2020-02-14 11:40:05 +01:00
.ci rddrone-uavcan146:Board Added 2020-02-12 10:29:27 -05:00
.circleci CI: update all docker tags 2020-01-13 21:48:35 +00:00
.github Add flow tests to MAVSDK tests (#14039) 2020-01-30 11:57:48 +01:00
.vscode px4_io-v2 add to vscode variants and fix SVD file find 2020-02-10 09:40:39 +01:00
Documentation DriverFramework purge 2020-01-13 14:07:03 -05:00
ROMFS crazyflie: fix PWM channel ordering 2020-02-13 03:49:16 -08:00
Tools Tools: make Python import error more readable 2020-02-14 11:40:05 +01:00
boards nxp/fmurt1062-v1: use hw description methods for timer configuration 2020-02-13 03:49:16 -08:00
cmake Makefile/cmake remove legacy target naming transition helpers 2020-02-08 14:38:56 -05:00
integrationtests/python_src/px4_it mission_test: fix px4tools func import 2020-01-13 21:48:35 +00:00
launch posix: add argument to change the CWD (#12482) 2019-08-01 12:25:35 -04:00
mavlink/include/mavlink Update submodule mavlink v2.0 to latest Sat Feb 8 12:38:03 UTC 2020 2020-02-08 18:28:34 -05:00
msg Tools: make Python import error more readable 2020-02-14 11:40:05 +01:00
platforms io_timer_init.h: avoid using timer_channel, as imxrt does not have it 2020-02-13 03:49:16 -08:00
posix-configs purge drivers/linux_sbus 2020-02-03 08:40:27 -05:00
src Tools: make Python import error more readable 2020-02-14 11:40:05 +01:00
test Add flow tests to MAVSDK tests (#14039) 2020-01-30 11:57:48 +01:00
test_data rc: add unit test for CRSF RC 2018-07-28 15:23:09 +02:00
validation Refactored to work with new battery_status module 2019-12-05 16:38:04 +01:00
.ackrc ack: add .ackrc to ignore the Documentation directory 2016-04-11 11:23:01 +02:00
.clang-tidy clang-tidy: enable readability-braces-around-statements 2019-10-28 10:50:31 -04:00
.gitattributes gitattributes *.bin, *.pdf, and *.png are binary 2019-08-28 11:01:35 -04:00
.github_changelog_generator Changelog generator default params 2017-12-30 11:27:57 +01:00
.gitignore linux boards (ocpoc, bbblue, navio2) replace custom adc drivers with simple px4_arch implementation 2020-01-07 14:04:13 -05:00
.gitmodules msg: remove gencpp and genmsh submodules; remove gencpp imports 2020-01-13 21:48:35 +00:00
.travis.yml travis: change coverity to run on master 2020-01-16 13:31:41 -05:00
.ycm_extra_conf.py update C++ standard (c++11 -> c++14) 2020-01-21 21:49:10 -05:00
CMakeLists.txt cmake: fix Python 3 libs name 2020-02-13 09:20:26 -05:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2017-07-30 19:18:49 +02:00
CONTRIBUTING.md CONTRIBUTING:Fix up code.html link to goto master 2019-03-03 22:23:59 -05:00
CTestConfig.cmake gather test results 2017-01-02 10:14:41 +01:00
Firmware.sublime-project boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
Jenkinsfile Jenkins: move "Cppcheck" stage to ROS Melodic container, as cppcheck-hmtlreport requires Python (2) pygments 2020-01-15 10:16:59 +00:00
LICENSE license: account for 2019 2019-01-31 17:43:35 +01:00
Makefile Makefile/cmake remove legacy target naming transition helpers 2020-02-08 14:38:56 -05:00
PULL_REQUEST_TEMPLATE.md PULL_REQUEST_TEMPLATE: change order of titles (#13174) 2019-10-14 13:11:44 +02:00
README.md delete parrot bebop board support 2020-01-05 19:46:51 -05:00
appveyor.yml appveyor: switch to toolchain version 0.8 2020-01-13 21:48:35 +00:00
eclipse.cproject boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
eclipse.project boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
package.xml Remove eigen leftovers 2019-10-07 12:04:50 +02:00

README.md

PX4 Drone Autopilot

Releases DOI

Build Status

Slack

This repository holds the PX4 flight control solution for drones, with the main applications located in the src/modules directory. It also contains the PX4 Drone Middleware Platform, which provides drivers and middleware to run drones.

PX4 Users

The PX4 User Guide explains how to assemble supported vehicles and fly drones with PX4. See the forum and chat if you need help!

PX4 Developers

This Developer Guide is for software developers who want to modify the flight stack and middleware (e.g. to add new flight modes), hardware integrators who want to support new flight controller boards and peripherals, and anyone who wants to get PX4 working on a new (unsupported) airframe/vehicle.

Developers should read the Guide for Contributions. See the forum and chat if you need help!

Weekly Dev Call

The PX4 Dev Team syncs up on a weekly dev call.

Note The dev call is open to all interested developers (not just the core dev team). This is a great opportunity to meet the team and contribute to the ongoing development of the platform. It includes a QA session for newcomers. All regular calls are listed in the Dronecode calendar.

Maintenance Team

See also About Us (px4.io) and the contributors list (Github).

Supported Hardware

This repository contains code supporting these boards:

Additional information about supported hardware can be found in PX4 user Guide > Autopilot Hardware.

Project Roadmap

A high level project roadmap is available here.