Commit Graph

63 Commits

Author SHA1 Message Date
Gautier Hattenberger 8f4b107ad2 [python] add small tool to get A/C conf from server (#2431)
This is providing the init sequence as done by the GCS to get and
maintain the list of aircraft known by the server and their
configurations
2019-06-18 18:34:02 +02:00
Matteo Barbera d23ed71ede Improved automated python tools for maintenance (#2433)
* Added last commit dates to lists of untested flight plans and airframes

* Improved paparazzi_health to include a list of all modules and their usage

* improved paparazzi_health to include a list of board makefiles not used by any airframe

* improved paparazzi_health to generate list of unused airframes, flightplans and boards sorted by most recently changed

* airframe details now stores modules as tuple of name and type: [(name, type), ...]

* added seeing includes in paparazzi_health

* Removed unneccesary print statements

* Added widget to start.py to generate html table of the module usage of the airframes for the selected conf

* improved html table readability and sorted airframe names alphabetically

* fixed alphabetical ordering of airframe name being case sensitive and added comments

* Added module class, more info about modules now gets printed. Commit dates should still be fixed

* Did speed improvement, but still slow

* split up more info and lists of untested files

* Added checkboxes to start.py to give user option to show airframe detail, or untested files, or both

* Cleaned up some code

* Added separator to make link between checkboxes and MoreInfo button clearer

* Fixed code style

* Added description to the module listing

* one should now be able to select which aspects to show in the maintenance tools

* Initial version of maintenance tools window

* Now also checks if modules are mentioned in the settings modules in an userconf

* Improved layout of maintenance tool window

* Improved variable names and tooltip information

* Small QoL changes to prepare for pull request

* Fixed a bug with the untested boards not showing correctly if airframes was not also selected and fixed some Codacy issues
2019-06-09 10:55:49 +02:00
Felix Ruess 6ada3bd66b python PaparazziOverview: handle parse errors 2017-11-05 11:18:42 +01:00
Christophe De Wagter fcf972fd44 [SHA] Store the SHA of a successful airframe test (#1921) 2017-10-30 17:17:28 +01:00
Christophe De Wagter e25d177469 [start] move list of conf to library for re-use in other tools (#2127) 2017-10-30 11:04:33 +01:00
Gautier Hattenberger a35d6374d6 [python] add function to set value index by name in python settings interface
It can makes it easier to handle generated autopilot. Names are not
matching exactly, but this can be improved in the future.
An example is provided with gb2ivy program.
2016-12-24 00:57:28 +01:00
Felix Ruess 50dcf96003 [python] remove pprz_msg and use pprzlink instead 2016-01-14 22:17:54 +01:00
Gautier Hattenberger e92f8522a1 Merge pull request #1501 from paparazzi/python_ivy_msgs
[python] ivy_msg_interface: find message class by name
2015-12-28 22:29:18 +01:00
Felix Ruess 3f4d1e1a59 [python] ivy_msg_interface: unbind after IvyStop
to prevent having unhandled subscriptions
2015-12-28 17:13:42 +01:00
Felix Ruess af0d3133ad [python] ivy_msg_interface: find message class by name
and don't treat sender_name (first string in ivy message) as msg_class
2015-12-28 15:05:01 +01:00
Felix Ruess beeb698314 [python] minor updates to math wrappers 2015-12-22 17:37:19 +01:00
Felix Ruess 34e076e2f7 [python] add pprz_env with usable default IVY_BUS
- pprz_env.IVY_BUS is either the env variable IVY_BUS or appropriate default (checks for OSX)
- some fixes for udp_link

should fix #1495 and the python part of #204
2015-12-22 11:50:47 +01:00
Felix Ruess 72564f4dc1 [python] some fixes for realtimeplotapp
- use messages_xml_map from pprz_msg
- hide the message picker instead of shutting it down (because that stops the ivy listener)
- fix drag and drop
2015-12-21 13:12:53 +01:00
Felix Ruess 8cee6f874b [python] add guided_mode_example.py to show usage 2015-12-15 22:46:16 +01:00
Felix Ruess 776fb863d7 [python] ivy_msg_interface: fix for multiple char arrays in msg 2015-11-04 16:43:46 +01:00
Felix Ruess 53273a05ca [python] pprz_msg: minor fixes and move_waypoint_example.py 2015-09-14 13:52:17 +02:00
Felix Ruess 858427bb11 [python] fix PprzMessage and don't require msg callback in ivy_msg_interface.py 2015-09-14 04:30:43 +02:00
Oswald Berthold 7026bd4e0c - added integer unit conversion coef attrib of msg members to pprz_msg python interface 2015-09-10 11:32:27 +02:00
Felix Ruess 02737f7144 [python] fix binary unpacking for python 2.x and 3.x
- unpack always returns a tuple, so take first value
- use bytearray instead of list for buffer
- preallocate bytearray with length of payload for speed
2015-07-28 00:21:39 +02:00
Felix Ruess 26c0588e80 [python] serial_msg_interface: update test
- send some datalink messages
- "fix" handling of CTRL-C
- and remove unused arg
- fix debug msg
2015-07-28 00:16:55 +02:00
Felix Ruess 3438a4928f [python] Create PprzMessage via name or id 2015-07-28 00:16:00 +02:00
Felix Ruess 3218f5af47 [python] pprz_msg: get/set message fields like dict 2015-07-28 00:15:50 +02:00
Felix Ruess 4a84dfd748 [python] message: add double field type 2015-07-28 00:15:28 +02:00
Felix Ruess 9e0cf7f7d9 [python] fix python2/3 compat, imports, pep8...
- enum is available since python3.4 or as backport (enum34 package)
  - otherwise just use normal member vars as fallback
- cleanup some formatting/naming according to pep8
- SerialMessagesInterface should not depend on the messages_xml_map,
  as a workaround for now, only call parse_messages in main
2015-07-28 00:15:11 +02:00
Gautier Hattenberger 5f83f01e9c [python] fix unpack data size and byte order 2015-07-27 22:26:33 +02:00
Gautier Hattenberger 99f4cd3ce2 [python] force little-endian for pprz binary format 2015-07-27 09:44:53 +02:00
Gautier Hattenberger 40f70ab2d2 [python] split message and transport, add serial interface 2015-07-24 10:48:05 +02:00
Gautier Hattenberger f27997cb46 [python] first draft of python_serial using pprz messages 2015-07-23 18:25:07 +02:00
Felix Ruess 3e16db6ec1 [python] message: add missing fieldtypes property 2015-02-18 15:50:02 +01:00
Felix Ruess 240f5972d9 [python] messages: get field values directly by name
using __getattr__

closes #1114
2015-02-18 15:39:12 +01:00
Felix Ruess c24177f8ae [python] settings: get PAPARAZZI_SRC
still needs to be cleaned up and converted to proper modules..
2015-02-18 13:12:49 +01:00
Felix Ruess 6706fac752 [python] pprz_msg using properties 2015-02-18 12:54:26 +01:00
Felix Ruess a704d20ced [python] possibility to send pprz_msg via ivy 2015-02-18 11:57:13 +01:00
Felix Ruess 8c9579c5a7 [python] ivy_msg_interface returns only ac_id and msg 2015-02-02 16:36:06 +01:00
Felix Ruess bb98e8a9b8 [python] refactor messages 2015-02-02 16:36:05 +01:00
Felix Ruess 6605676f77 [python] messages: PPRZ_HOME 2015-02-02 15:17:29 +01:00
Felix Ruess 97df5d90fa [python] ivy_msg_interface: pass non-telemetry messages with ac_id 0 2015-01-28 17:34:48 +01:00
Felix Ruess 6f96e8a490 [python] IvyMessagesInterface passes msg_class to callback 2015-01-22 23:02:33 +01:00
Felix Ruess d4d43aca1c [python] remove messages_tool.py 2015-01-22 23:02:33 +01:00
Felix Ruess 6d9d299483 [python] ivy_msg_interface 2015-01-22 23:02:33 +01:00
Felix Ruess a2bb0e90c6 [python] cleanup a little 2015-01-22 23:02:32 +01:00
Felix Ruess 01f8065dd7 [python][math] some DoubleRMat additions 2015-01-13 16:33:36 +01:00
Felix Ruess 667397445c [python] conversion methods for geodetic float/double 2015-01-13 16:33:36 +01:00
Felix Ruess 056d102e55 [python] improve algebra int wrapper 2015-01-13 16:33:35 +01:00
Felix Ruess f044d7d1f0 [python] nicer wrappers for float and double algebra 2015-01-13 16:33:35 +01:00
Felix Ruess 0e529758c0 [python] rename math to pprz_math and add algebra module
to use it e.g. in ipython:
PYTHONPATH=$PPRZ_SRC/sw/lib/python iypthon
$ from pprz_math.geodetic import *
or
$ import pprz_math.algebra
2015-01-13 16:33:35 +01:00
Felix Ruess cebe398b56 [python][math] improve swig wrapping 2015-01-13 16:33:35 +01:00
Felix Ruess 3e6b116e3f [python] simplify pprz_geodetic swig wrapper 2015-01-08 19:08:15 +01:00
Felix Ruess d685c84c1f [python] wrap pprz_geodetic with swig 2015-01-07 22:10:46 +01:00
Felix Ruess 321c583c5d [python] fix settings path 2014-11-27 14:41:03 +01:00