122 Commits

Author SHA1 Message Date
Gautier Hattenberger
4ae40567ed [hitl] rewrite support for hardware in the loop simulation (#3146)
- old way (based on ins_vectornav) is not supported anymore
- directly send sensor data and receive commands with a dedicated link
- examples with USB link for better results
- update sphinx documentation
- compilation in a single build
2023-10-31 14:48:55 +01:00
Freek van Tienen
7ae5f91a2a [modules] Fix flight recorder and MAVLink frequency to TELEMETRY_FREQUENCY and configuration (#3085) 2023-09-20 18:08:59 +02:00
Gautier Hattenberger
e2d3a44940 [build] fix NPROCS detection 2021-01-21 13:01:45 +01:00
Gautier Hattenberger
620a80963f [build] fix some elements in makefiles
- USE_LTO flag in board makefile optional
- quote on shell command to get number of CPU cores
2020-09-10 13:50:16 +02:00
Gautier Hattenberger
09c0c8ccb9 Aircraft generator (#2545)
* [ocaml] massive update of the build process
convert individual code generator to a single process, parsing everything once and calling the required generators
- remove all subsystems makefiles
- fix module name
- example of radio file without ctl attribute

* [build] start with flight plan to make semaphore happy
* [ocaml] move the buffer outside the lazy block
for some reason, it seems to make problems with compilation server
Semaphore
it really makes no sense, but nevermind...
2020-07-05 21:38:09 +02:00
Gautier Hattenberger
9769b981d6 [build] change RUST warning checks
don't print anything when rust is not needed
2018-12-14 13:00:57 +01:00
Michal Podhradsky
c072a5405c Corroded Paparazzi (#2355)
* Update AggieAir config

* Show total heap free space

* Conf fixes

* Initial commit of corroded paparazzi

* Added RNG support for ChibiOS

* Better build process for RUST modules

* Better description

* Fix typo

* Compile demo module for both NPS and AP targets, some rust magic had to happen

* Note in makefile

* Cleaner building of Rust modules

* Remove excess aiframes

* Prep work for enabling RNG on ChibiOS + STM32F4. Need to write a driver for ChibiOS-Contrib, so I am leaving that part for later

* RNG driver will eventually be a part of ChibiOS proper, hence simplify  the ifdef guards

* Clean up modules

* Changes in the rust builds

* Remove unsupported RNG for ChibiOS

* Better separate compatibility packages

* Minor fixes

* Fix halconf.h
2018-12-13 14:19:08 +01:00
Gautier Hattenberger
da4cc6bea9 [build] try to improve dependency and not do unnecessary things (#2244) 2018-03-19 15:44:04 +01:00
Michal Podhradsky
d66fc0c3b7 galois embedded crypto module and secure transport (#2205)
* Added RNG for NPS, cleaned up telemetry config files
* Added Rust submodules
* Added simple status message
* Updated gec transport and key exchange
* Update pprzink
* Compilation fix for Travis
2018-01-19 00:09:17 +01:00
kevindehecker
10972bd50f Properly seperate cxx and cflags again (#2121) 2017-10-18 22:16:03 +02:00
kevindehecker
2a6ad556f1 F3 and X-Vert support (#2113)
* Make mpu9250 compatible with mpu6500, by providing option to disable mag

* Upgrade QTC version, add more QTCreator compatibility with chibios

* F3 support

* Add priliminary support stm32f3 discovery board using chibios

* Add support for the stm32f37 xvert board by means of chibios

* Give INDI simple full control authority

* Motor driver for the vertx

* Create define out of required THD_WORKING_AREA space
2017-10-06 15:53:18 +02:00
Gautier Hattenberger
5166037055 [settings] group system settings under the same tab 2016-12-19 22:11:01 +01:00
Gautier Hattenberger
09c8662cc4 [build] add some ChibiOS flags to prevent errors when 'find_vpaths' script with this arch 2016-11-24 22:39:52 +01:00
kevindehecker
0ffaaf85b6 [generator] Qt project generator with VPath fix (#1940)
Replaces #1533. Description over there is still accurate. Two additions:

- The user needs to manually set PAPARAZZI_HOME, PAPARAZZI_SRC and TARGET in the build environment after opening .creator file.
- The user needs to manually set the build and clean steps. Disable the check at "all" and put in "Make Arguments": -C /home/houjebek/paparazzi -f Makefile.ac AIRCRAFT=<name> <target>.compile. For example: -C /home/houjebek/paparazzi -f Makefile.ac AIRCRAFT=Iris ap.compile

This needs to happen only once, after which QT will create a .creator.user file
2016-11-08 09:27:20 +01:00
Gautier Hattenberger
88a9bce08d [build] expand airframe includes so firmware sections are parsed
fix #1863
2016-10-07 14:39:40 +02:00
Felix Ruess
2bfe560402 [generators][telemetry] remove module attribute (#1678)
The module attribute for a message was used to only include that message in the generated periodic telemetry if that module was loaded.
This is not needed anymore with the register_periodic_telemetry() funtions as unregistered messages are simply not sent.

see #1674
2016-05-22 00:30:57 +02:00
Gautier Hattenberger
c697449e98 [modules] allow to load modules from a flight plan 2016-02-17 23:11:03 +01:00
Gautier Hattenberger
579fdf4acd [flight_plan] allow variable declaration from flight plan
- can be used localy in the flight plan to avoid adding new variables in
  the base code when it can be avoided
- with appropriate attributes, will generate a settings accessible from
  the GCS
2016-02-05 00:36:18 +01:00
Felix Ruess
b2386d7c4b [build] build sim in parallel
and remove obsolete jsbsim target
2016-01-30 19:16:35 +01:00
Gautier Hattenberger
a9c7b954f6 [pprzlink] point to messages.xml file in var directory 2016-01-15 14:03:26 +01:00
Felix Ruess
9216228f4b move init target to main makefile 2015-03-16 23:59:12 +01:00
Felix Ruess
81f562dc38 [build] possibilty to specify conf.xml file used for tests
If the CONF_XML environment variable is set, use that conf.xml file instead of the standard $PAPARAZZI_HOME/conf/conf.xml
Meaning you can run tests for a different conf without changing the conf.xml symlink, e.g.
```
CONF_XML=$PAPARAZZI_HOME/conf/conf_tests.xml prove tests/examples
```
2015-03-12 17:10:08 +01:00
Felix Ruess
6d2acf227d [generators] gen_aircraft: possibility to specify conf.xml file 2015-03-12 16:56:06 +01:00
Felix Ruess
3f3db735ac [build] improve build version stuff
- always save build version when updating anything that depends on libpprz, so it will also be updated on e.g. make tmtc
- only warn if the version number (major.minor.patch) is different, disregard the label, sha1, dirty postfixes in the string...
2014-12-22 12:12:30 +01:00
Gautier Hattenberger
d3f9e39533 [build] add build version to the log and print warning if not matching runtime version 2014-12-21 19:32:50 +01:00
Felix Ruess
19fdef9c68 [airborne] add pprz_version and send it with BOOT 2014-12-19 15:58:09 +01:00
Felix Ruess
d3494f6ff9 [build] default to parallel make for aircrafts 2014-12-03 13:14:22 +01:00
Felix Ruess
d7bbfdf656 [build] quiet output on clean_ac 2014-11-13 15:34:25 +01:00
Felix Ruess
81aa9e90c2 [build] don't print infos on stderr
generators should only output on stderr if there actually was an error.
Rather echo to stdout from the makefile to print the info.

This makes it possible to redirect stderr on compiling/testing to a buffer/file.
E.g. to check if there were warnings..
2014-11-07 17:18:46 +01:00
Gautier Hattenberger
170e5b6843 [settings] allow several groups of settings in modules 2014-09-30 18:49:28 +02:00
Gautier Hattenberger
6839d4ccdd [generators] autopilot modes exported in xml settings file
for a future use
2014-09-04 16:56:33 +02:00
Gautier Hattenberger
f30047d852 [generator] allow multiple state machines for autopilot generator 2014-09-04 16:56:33 +02:00
Felix Ruess
c8432fe18f [build] only set PAPARAZZI_SRC if not already externally set
closes #800
2014-08-17 23:41:01 +02:00
Felix Ruess
401dd2a9ef [build] build in var/aircrafts/<ac_name> instead of var/<ac_name>
closes #649
2014-04-14 13:07:05 +02:00
Felix Ruess
bd00beb101 [build] only build firmware in parallel with J=AUTO
by passing J=AUTO from toplevel make it will auto-detect the number of CPUs
Number of processes can also be explicitly set with e.g. J=4
Calling make without a J variable is the same as J=1 (serial compilation)
2014-04-11 20:04:20 +02:00
Felix Ruess
e0f80abb32 [build] parallel build for firmwares
on OSX using sysctl seems to be faster than using system_profile and also more robust
(output is not named differently)
2014-04-11 19:31:18 +02:00
Felix Ruess
2c6f9535bf [build] generated/modules.h: add dependency to modules/*.xml again 2014-03-22 14:26:26 +01:00
Gautier Hattenberger
88990fe07e Merge remote-tracking branch 'paparazzi/master' into generators
Conflicts:
	Makefile.ac
2014-03-21 18:18:05 +01:00
Gautier Hattenberger
c6d1c0d285 [build] move generation folder into target directory
thus we avoid to force generation of modules.h at every build
2014-03-20 23:58:28 +01:00
Gautier Hattenberger
ec63c47a9f [build] force modules generation (#415) 2014-03-20 14:25:58 +01:00
Felix Ruess
974d966065 [tools] move generators into subdir 2014-02-27 20:18:33 +01:00
Felix Ruess
d12572dcdc fix typo 2013-09-13 15:55:10 +02:00
Felix Ruess
06e69bcaea TELEMETRY_FREQUENCY defaults to PERIODIC_FREQUENCY
also default to 60Hz if PERIODIC_FREQUENCY is not configured
2013-09-13 14:37:11 +02:00
Felix Ruess
6ea53c5c15 [tools] generated MODULES_FREQUENCY defaults to PERIODIC_FREQUENCY 2013-09-13 11:28:41 +02:00
Felix Ruess
de13525fd3 Merge branch 'ocamlfind_no_custom'
- Use findlib (ocamlfind) for ocaml packages.
- Create META file for pprz ocaml lib.
- Link dynamically instead of statically (no -custom), which also results in faster build times.
- Use mktemp to properly create temporary files.
- More makefile cleanup...

closes #274
2013-03-29 20:18:09 +01:00
Stephen Dwyer
e06a57717a [makefile] on os x the default mktemp doesn't behave the same (older version), need to use gmktemp from the coreutils macport 2013-03-26 14:10:16 -06:00
Felix Ruess
77cd732702 [makefile] use mktemp to create unique temp files
This assumes that mktemp is available, but should provide a better solution for issue #229.

Also create a variable holding the tempfile name which is unique to each target.
This should prevent problems with parallel builds, since these variables are global.
2013-03-21 16:46:58 +01:00
Felix Ruess
ae48da938d [paparazzicenter] add checkbox to enable PRINT_CONFIG 2013-03-20 19:52:16 +01:00
Felix Ruess
de3055e40b [makefile] print paparazzi_version when building sim, remove throwing error on old UART_NR configure 2013-02-28 17:15:44 +01:00
Felix Ruess
f90a9b687f [build system] honor TMPDIR environment variable
closes #229
2013-02-08 18:58:59 +01:00