Commit Graph

113 Commits

Author SHA1 Message Date
Daniel Agar 6991ac014c
rename 'gazebo' simulation to 'gazebo-classic' (#20936)
- use `gazebo-classic` everywhere consistently referring to the original Gazebo (eg version 9,10,11)
   - additional `gazebo_*` helper targets added for compatibility, but warn about deprecation and tell you the new target naming
 - use `gz` everywhere when referring to Gazebo (aka Ignition Gazebo or new Gazebo)
2023-01-15 11:36:12 -05:00
Daniel Agar 4f99ac209c
gitmodules update NuttX to 10.3.0+ 2022-12-06 18:40:58 -05:00
Daniel Agar cea185268e
msg ROS2 compatibility, microdds_client improvements (timesync, reduced code size, added topics, etc), fastrtps purge
- update all msgs to be directly compatible with ROS2
 - microdds_client improvements
   - timesync
   - reduced code size
   - add to most default builds if we can afford it
   - lots of other little changes
 - purge fastrtps (I tried to save this multiple times, but kept hitting roadblocks)
2022-10-19 19:36:47 -04:00
Daniel Agar 2bd1ac005f
.gitmodules update branches master -> main 2022-10-01 12:22:22 -04:00
Daniel Agar 4040e4cdf2 simulation organization and cleanup
- new modules/simulation directory to collect all simulators and related modules
 - new Tools/simulation directory to collect and organize scattered simulation submodules, scripts, etc
 - simulation module renamed to simulator_mavlink
 - sih renamed to simulator_sih (not a great name, but I wanted to be clear it was a simulator)
 - ignition_simulator renamed to simulator_ignition_bridge
 - large sitl_target.cmake split by simulation option and in some cases pushed to appropriate modules
 - sitl targets broken down to what's actually available (eg jmavsim only has 1 model and 1 world)
 - new Gazebo consistently referred to as Ignition for now (probably the least confusing thing until we fully drop Gazebo classic support someday)
2022-08-25 09:10:03 -04:00
Daniel Agar cfc579542e
new Ignition Gazebo simulation interface architecture (#20057)
- much simpler direct interface using Ignition Transport 
 - in tree models and worlds
 - control allocation output configuration, no more magic actuator mapping to mavlink and back
 - currently requires no custom Gazebo plugins (keeping things as lightweight and simple as possible)

Co-authored-by: Jaeyoung-Lim <jalim@ethz.ch>
2022-08-22 10:58:19 -04:00
Peter van der Perk b1ad4e8864 Upgrade libcanard to 3.0 and rename uavcan_v1 to cyphal
Did some prep work for redundant interfaces by introducing CanardHandle class to decouple physical interfaces from cyphal.cpp
2022-05-10 09:46:18 -04:00
Daniel Mesham 06a9be74fa microdds: add xrce client 2022-03-22 09:01:05 +01:00
Peter van der Perk ce10dd90e7 Remove ucannode_gps_demo since it's superseded by uavcan_v1 2021-12-01 09:29:15 -05:00
Daniel Agar 38516f7e9c
delete matrix submodule 2021-11-16 12:20:57 -05:00
Jacob Crabill 5969508fa7
mavlink: cmake generate mavlink headers at build time
- mavlink/mavlink is now directly included as a submodule instead of the generated mavlink/c_library_v2
 - this also switches to mavlink development.xml by default
2021-11-05 23:01:38 -04:00
Daniel Agar c73a1b4c68 update UAVCAN-v0 dsdl to DroneCAN 2021-11-04 21:36:13 -04:00
Jukka Laitinen 40063bd54b Add libtomcrypt and libtommath submodules
These provide e.g. rsa_oaep, which can be used for sw crypto

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-09-27 17:45:07 +02:00
Daniel Agar 31545f85fb
gitmodules update NuttX branches to latest v10.1.0 2021-08-19 13:02:31 -04:00
JaeyoungLim 58060b23d9
Add ignition gazebo support for PX4 Software-In-The-Loop simulations
This commit adds SITL support for ignition gazebo. Ignition gazebo is a replacement for the "classic" gazebo for future applications.

The simulation can be run as the following
```
make px4_sitl ignition
```
2021-07-19 19:59:41 -04:00
Daniel Agar 65745a3676 purge broken qurt support and atlflight boards 2021-07-16 08:53:36 -04:00
Daniel Agar cd1e04d034
delete ecl submodule 2021-07-13 09:54:02 -04:00
Daniel Agar 23688d8234
monocypher submodule point to px4 branch 2021-07-08 13:54:34 -04:00
Beat Küng 38f3b8d356 mavlink & system: add events interface
- sending protocol
- uorb event message & template methods for argument packing
- libevents submodule to send common events and handle json files
- cmake maintains a list of all (PX4) source files for the current build
  (PX4 modules + libs), which is used to extract event metadata and
  generate a json file
2021-07-07 21:38:09 -04:00
Jukka Laitinen b3e9904df0 Add monocypher crypto library in src/lib/crypto/monocypher
This simple crypto library is used as an example default backend for the crypto
interfaces

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-06-25 08:35:58 +02:00
Jukka Laitinen 12f33524fa fix legacy data types again
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-05-28 17:55:02 -04:00
Jukka Laitinen 0de0709be3 Fix github url for uavcan_v1/legacy_data_types
The URL is spelled wrong, it should be capital "PX4"

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-05-28 10:36:30 -04:00
Peter van der Perk 24c2967511 legacy_data_types specify branch 2021-05-04 13:23:14 -04:00
TSC21 18dc0e4900 update submodule micro-CDR 2021-05-02 13:05:16 -04:00
Peter van der Perk 1804cea92c [UAVCANv1] TX deadline fix and other fixes 2021-04-20 21:44:40 +02:00
Peter van der Perk 399815469f [UAVCANv1] Subscriber multi topic subscription
reg.drone.bms full support
legacy.equipment.bms support
2021-04-20 21:44:40 +02:00
tututu123-tu 8acdb8ca3f Update .gitmodules 2021-04-12 08:18:16 -04:00
Daniel Agar 19de1e57e3 gyro_fft promote to modules and include on all boards 2021-03-05 10:56:54 -05:00
Peter van der Perk 8242968b2b UAVCAN v1 GPS demo with MAVCAN autoconfigure 2021-02-07 17:18:45 +01:00
Peter van der Perk 8b2d20df34 "MAVCAN" PNP & Register example implementation 2021-02-07 17:18:45 +01:00
Daniel Agar 58ca575871 UAVCAN v1 bridge
- NuttX stm32f4/stm32f7 uses character device driver
 - NuttX kinetis and s32k uses socketcan
2021-02-07 17:18:45 +01:00
Matthias Grob 4becf74cbc .gitmodules: adapt submodule names to repo renaming 2021-01-21 11:52:14 +01:00
Daniel Agar b13422dd80 gitmodules update URLs to renamed PX4 repositories 2020-10-29 15:06:59 -04:00
Daniel Agar b5e00cd424 NuttX upgrade branches to px4_firmware_nuttx-10.0.0+ 2020-10-28 17:25:08 -04:00
Daniel Agar 8ee0c62e57
examples: add Gyro FFT using CMSIS 5 on Cortex-m (#15104)
- this is a work in progress experiment to compute real time FFTs from raw gyro FIFO data on Cortex-m hardware (stm32f4/f7/h7, etc)
2020-10-02 11:47:27 -04:00
Daniel Agar 41a2fe5bdf gitmodules update NuttX branches 2020-09-18 12:10:34 -04:00
JaeyoungLim 458420f9cb
Add jsbsim bridge to enable jsbsim for px4 SITL on jsbsim (#15748)
* Add jsbsim bridge to enable jsbsim for px4 SITL/HIL on jsbsim

This is a PX4 HIL/SITL integration into JSBSim. JSBSim is an open source flight dynamics model (http://jsbsim.sourceforge.net/)

Currently there are three models available which is the rascal, quadrotor_x, hexarotor_x integrated into the bridge.

The simulation can be run with the firmware with the following command for example
```
make px4_sitl jsbsim_rascal
```

The visualization is done flightgear and is done by the bridge sending UDP packets to flightgear. To disable the visualization `HEADLESS=1` when running the make command.

The simulation can be configured through the configuration files under the `config` directory through a xml file. Senor configurations,  The xml file name should match the name of the model.

* Update Tools/sitl_run.sh

Co-authored-by: Beat Küng <beat-kueng@gmx.net>

Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2020-09-17 20:32:42 +02:00
JaeyoungLim 35ebbd7202
Switch flightgear bridge submodule to px4 organization (#14789)
This brings the flightgear bridge submodule under the px4 organization
2020-04-29 23:20:25 +02:00
Jakub Kákona dfa5ca1710
FlightGear simulator support (#14539)
- Add flightgear_bridge submodule.
- Add traget px4_sitl_nolockstep with disabled  LOCKSTEP simulation.
- Add flightgear viewer targets and startup scripts
- Add a few possible vehicles plane (rascal), autogyro (tf-g1), and rover (tf-r1))

Co-authored-by: Vit Hanousek <vithanousek@seznam.cz>
2020-04-29 08:46:59 +02:00
Daniel Agar d7c3e1066a
uavcannode updates and px4_fmu-v4_cannode example
- drivers/uavcannode add baro, mag, gps publications
 - delete old px4_cannode-v1 board
 - add stripped down simple rcS for CAN nodes
2020-02-16 12:11:54 -05:00
TSC21 2e9a4d89ee msg: remove gencpp and genmsh submodules; remove gencpp imports 2020-01-13 21:48:35 +00:00
Daniel Agar de4f594937 DriverFramework purge
The bulk of this change was tightly coupled and needed to be deleted in one pass. Some of the smaller changes were things that broke as a result of the initial purge and subsequently fixed by further eradicating unnecessary platform differences. Finally, I deleted any dead code I came across in the related files I touched while going through everything.

 - DriverFramework (src/lib/DriverFramework submodule) completely removed
 - added dspal submodule in qurt platform (was brought in via DriverFramework)
 - all df wrapper drivers removed
 - all boards using df wrapper drivers updated to use in tree equivalents
 - unused empty arch/board.h on posix and qurt removed
 - unused IOCTLs removed (pub block, priv, etc)
 - Integrator delete methods only used from df wrapper drivers
 - commander: sensor calibration use "NuttX version" everywhere for now
 - sensors: update to px4_{open, read, close} instead of DevMgr wrapper (adc open for analog differential pressure)
 - battery_status: update to px4_{open, read, close} instead of DevMgr wrapper (adc open for analog differential pressure)
 - cdev cleanup conflicting typedefs and names with actual OS (pollevent_t, etc)
 - load_mon and top remove from linux boards (unused)
 - delete unused PX4_MAIN_FUNCTION
 - delete unused getreg32 macro
 - delete unused SIOCDEVPRIVATE define
 - named each platform tasks consistently
 - posix list_devices and list_topics removed (list_files now shows all virtual files)
2020-01-13 14:07:03 -05:00
Daniel Agar 01c7a475ff gitmodules update NuttX to px4_firmware_nuttx-8.2 2019-11-19 07:59:53 -05:00
Daniel Agar 99aae8b891 NuttX use toolchain math.h and avoid empty drivers/Kconfig 2019-11-16 11:43:42 +01:00
Daniel Agar dc10a68539 NuttX and apps update 7.29 2019-07-10 12:58:35 -04:00
Daniel Agar fafadd4686
update all submodules to PX4 forks (#11407) 2019-02-10 15:48:59 -05:00
David Sidrane e505fe859d Update Nuttx and NuttX-apps to 7.28+ 2019-01-25 06:32:37 -08:00
Julian Oes 3cbb2d8661 platforms: removed lockstep_scheduler submodule 2018-12-22 10:32:18 +01:00
Julian Oes 9724a84801 gitmodules: use https link for lockstep-scheduler 2018-12-22 10:32:18 +01:00
Julian Oes 5ff3c40179 Added lockstep_scheduler as submodule
This is just an intermediate step until we can copy the sources over.
2018-12-22 10:32:18 +01:00