- no longer start sercon or mavlink usb by default
- on USB connection (VBUS) monitor serial USB at low rate and start Mavlink if there's a HEARTBEAT or nshterm on 3 consecutive carriage returns
- the mavlink USB instance is automatically stopped and serdis executed if USB is disconnected
- skipping Mavlink USB (and sercon) saves a considerable amount of memory on older boards
This now only decrypts xchacha20 encrypted logs, where keys are
exchanged with rsa_oaep_sha256 and nonce appended to the end of the
key
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
- sitl_gazebo in PX4/Firmware (e800e7c27663ae0a08ae1e377cbccd2272657ad0): 53d606b32f
- sitl_gazebo current upstream: d8366bf238
- Changes: 53d606b32f...d8366bf238
d8366bf 2021-09-19 Mohamed ElDewany - Fix gazebo plugin for laser sensor
37a3a64 2021-09-16 Julian Oes - camera: fix stream URI
2561ff0 2021-09-01 Julian Oes - mavlink_interface: enable HITL over UDP
9216dab 2021-09-01 Julian Oes - mavlink_interface: remove poll before writing
8e9eb3f 2021-09-01 Julian Oes - mavlink_interface: clean up switch case
a009174 2021-09-01 Julian Oes - mavlink_interface: use flag from mavlink_interface
6f1243a 2021-09-01 Julian Oes - mavlink_interface: remove redundant inline keyword
I usually called it using `source arch.sh`
but if it's executable it could also be called using `./arch.sh`
and that's also what's done for the ubuntu setup script.
- sitl_gazebo in PX4/Firmware (51697b0d07665d85ca1ebd9105e3cdc621b41969): 7fda4d311a
- sitl_gazebo current upstream: 53d606b32f
- Changes: 7fda4d311a...53d606b32f
53d606b 2021-09-01 stmoon - fix the bug for the low real time factor in gazebo
- sitl_gazebo in PX4/Firmware (4a0fa08953): 1f3f1b1dec
- sitl_gazebo current upstream: b6be00542b
- Changes: 1f3f1b1dec...b6be00542b
b6be005 2021-07-13 Jaeyoung-Lim - Add iris model for control allocation development
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
```
- sitl_gazebo in PX4/Firmware (7144566afe): 822050a7ab
- sitl_gazebo current upstream: 1f3f1b1dec
- Changes: 822050a7ab...1f3f1b1dec
1f3f1b1 2021-06-18 Jonas Vautherin - Add plugin allowing to draw a force (e.g. liftdrag) (#771)
- 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
Move Tools/test_key.json and key0.pub into same directory.
key0.pub is just a hex-dump of the public key part from the test_key.json,
for easy inclusion into bootloader monocypher sw crypto
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
E.g. echo free|./Tools/mavlink_shell.py
Or creating a virtual nsh console:
socat pty,rawer,link=/tmp/fmu_nsh_pts exec:"mavlink_shell.py 0.0.0.0\\:14550,pty,rawer"
- sitl_gazebo in PX4/Firmware (61e972ba35): f10ccb7ec3
- sitl_gazebo current upstream: 5c24889852
- Changes: f10ccb7ec3...5c24889852
5c24889 2021-05-20 Andrew Voznytsa - Use cmake to find and link to gstreamer-app-1.0
- sitl_gazebo in PX4/Firmware (c3884b5bc1): 402897d225
- sitl_gazebo current upstream: f10ccb7ec3
- Changes: 402897d225...f10ccb7ec3
f10ccb7 2021-05-17 grahamjamesaddis - Fix non unique name warning in tailsitter.sdf.jinja (#756)
05b8625 2021-05-13 Andrew Voznytsa - Fix gstreamer timestamps; Use push mode all the way; Avoid duplicated frame encoding; Cleanup a bit there and here
9ec04cc 2021-05-16 Graham James Addis - Tidy rotor colours Grey/Blue.
493c5dc 2021-05-16 Graham James Addis - Minimal conversion to jinja format.
Script failed for me with following error
PX4-Autopilot/Tools/setup/arch.sh: line 159: syntax error near unexpected token `else'
PX4-Autopilot/Tools/setup/arch.sh: line 159: ` else'
Seems like there is nothing to do in case of positive if case.
Changed code should maintain logic
to suppress the warning message:
`xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value`
when running make format.
- Source processing now happens on original source files:
- processing to line-by-line
- required overhaul of regex match patterns + processing
- pros:
- enable tracing of ambiguous parsing sites -- reports (module, file, line-number, line-contents)
- simplifies code
- reduces computational complexity
- cons:
- certain declarations are harder to parse: multiline declarations
- refactors:
- added specific subclasses for each: Publications, Subscriptions, Ambiguities
- added a "Scope" class to represent either a module ('ModuleScope') or a library ('LibraryScope')
- regexes:
- added cases for C++-style classes
- expanded C++-style regex cases to accommodate templates
- `ORB_ID::` is accepted wherever `ORB_ID(` is accepted
- adds 'orb_copy' regex to the subscription cases
- emit ambiguous-line warning for declarations with `ORB_ID` on the same line
- emit ambiguous-line warning for `ORB_ID` with a declaration on the same line
- changed 'module whitelist' to 'scope-whitelist'
- whitelist may now apply to libraries
- libraries are optionally merged with their depending modules (but not by default)
- may be merged with their depending modules with the `--merge-depends` cli flag
- eliminates some redundant 'special-case' handling code
- debug output
- raises exception and aborts if a topic is found outside of a scope
- debug output is now printed & filtered with the python 'logging' standard module
- alphabetizes topic output in debug logging
- fixes debug output if package dependencies are missing
- now warns on ambiguous matches
- prints a list of ambiguous source sites (aka warnings) on completion
- (still) emits a warning if we find ORB_ID outside of a scope
- adds warnings if any of the source paths are invalid
- do not emit debug output for modules outside of the module/scope whitelist
- Expand script's CLI parameters
- added 'none' output options: undocumented debugging option to silence file output while debugging
- added the `--merge-depends` cli flag -- merges output of modules & their dependee libraries
px4_fmu-v4_uavcanv1 fails to build:
../../src/drivers/uavcan_v1/Uavcan.cpp: In static member function 'static int UavcanNode::start(uint32_t, uint32_t)':
../../src/drivers/uavcan_v1/Uavcan.cpp:140:29: error: 'interface' was not declared in this scope
140 | _instance = new UavcanNode(interface, node_id);
- sitl_gazebo in PX4/Firmware (6e9f745809): b195315b86
- sitl_gazebo current upstream: 1f339cdf5c
- Changes: b195315b86...1f339cdf5c
1f339cd 2021-03-20 Dongoo Lee - Pass ros_distro in CMakeLists.txt instaed of checking it in jinja_gen.py (#712)
1b1afca 2021-03-18 David Jablonski - gst camera: add RTMP streaming and nvidia encoding (#727)
- debug output is now printed & filtered with the python 'logging' standard module
- changed 'module whitelist' to 'scope-whitelist'
- whitelist may now apply to libraries
- libraries are not included by default
- may be merged with their depending modules with the `--merge-depends` cli flag
- eliminates redundant 'special-case' handling code
- greatly expands debugging output
- fixes debug output if package dependencies are missing
- still crashes on error matches
- now warns on ambiguous matches
- prints a list of ambiguous source sites (aka warnings) on completion
- adds warnings if any of the source paths are invalid
- do not emit debug output for modules outside of the module/scope whitelist
- Expand script's CLI parameters
- added 'none' output options: undocumented debugging option to silence file output while debugging
- added the `--merge-depends` cli flag -- merges output of modules & their dependee libraries
- Source processing now happens on original source files:
- processing to line-by-line
- required overhaul of regex match patterns + processing
- pros:
- enable tracing of ambiguous parsing sites -- reports (module, file, line-number, line-contents)
- simplifies code
- reduces computational complexity
- cons:
- certain declarations are harder to parse (multiline arrays)
- refactors:
- added specific subclasses for each: Publications, Subscriptions, Ambiguities
- added a "Scope" class to represent either a module ('ModuleScope') or a library ('LibraryScope')
This commit adds support for specifying the spawn location of vehicles
in the Gazebo multi-vehicle simulator script (frame:number:x:y).
Behavior when x and y are not specified remains the same as before.
Improves compression, e.g. current params file: 62KB to 51KB
There's also a PRESET_EXTREME option, which reduces by another 2KB.
We can revisit that once needed, as it increases mem usage as well.
- sitl_gazebo in PX4/Firmware (bb7dd0cf00): 46aef29718
- sitl_gazebo current upstream: e580bbcd1e
- Changes: 46aef29718...e580bbcd1e
e580bbc 2021-01-30 JaeyoungLim - Use include model syntax for bluerov (#702)
663a553 2021-01-30 Tim - Added GPS and changed the Thruster config of the bluerov2 SDF file (#700)
4674826 2021-01-29 Thies Lennart Alff - increased ODE solver iterations to avoid deflection of the thrusters (#701)
- generate PWM_MAIN 1-14
- generate PWM_AUX 1-8
- generate PWM_EXTRA 1-8
- px4io and pwm_out directly read configuration parameters
- only available and active physical outputs are actually shown for configuration
- overall saves flash despite adding many new parameters
- Append signature in the end of the signee
- Add parameters for output file and rd certificate
- Add a default test key
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
- control allocation module with multirotor, VTOL standard, and tiltrotor support
- angular_velocity_controller
- See https://github.com/PX4/PX4-Autopilot/pull/13351 for details
Co-authored-by: Silvan Fuhrer <silvan@auterion.com>
Co-authored-by: Roman Bapst <bapstroman@gmail.com>
* Update launch files to support multi-video stream in SITL
* Pass extra args to jinja_gen.py inside gazebo_sitl_multiple_run.sh to enable multi-video streaming
The windowed mode has been added for Windows targets originally. It gets very often incorrectly detected and slows down flashing considerably. This even applies to serial links. We are disabling it now in most circumstances.
- sitl_gazebo in PX4/Firmware (5868463d06): 563f0876a5
- sitl_gazebo current upstream: 4043287bbe
- Changes: 563f0876a5...4043287bbe
4043287 2020-12-20 Silvan Fuhrer - tiltrotor: increase wing area to 0.5 per side (#678)
f004811 2020-12-20 JaeyoungLim - Update mavsdk version for SITL tests (#673)
- sitl_gazebo in PX4/Firmware (90f61c2f9a): 19981d61cf
- sitl_gazebo current upstream: 563f0876a5
- Changes: 19981d61cf...563f0876a5
563f087 2020-12-17 JaeyoungLim - Fix tiltrotor model (#675)
0e2d63a 2020-12-17 JaeyoungLim - Fix wind transmormations for motor model (#674)
e5d0d65 2020-12-13 JaeyoungLim - Update container versions for tests (#672)
bccb487 2020-12-12 BazookaJoe1900 - mavlink_interface: rename serial link related function to include 'serial' (#670)
This commit removes the readarray command from the Tools/sitl_run.sh.
This fixes the issue where SITL was not able to run due to readarray not being available on macOS
* Add typhoon h480 support to gazebo multiple sim
This commit adds support for the typhoon_h480 model for the
gazebo_sitl_multiple_run.sh script.
* Update sitl_gazebo to latest version
- switch to python3
- run_nsh_cmd.py return error if command fails
- decrease timeout in checking for output
- Jenkins hardware tests tolerate certain command failures that aren't available on all boards (flash constrained, etc)
- sitl_gazebo in PX4/Firmware (79ad5eab34b76fbe54c2056974230a122362a62f): 487f6283f4
- sitl_gazebo current upstream: ee7661eeab
- Changes: 487f6283f4...ee7661eeab
ee7661e 2020-11-06 Julian Oes - cmake: don't link to protobuf
- ekf2 can now run in multi-instance mode (currently up to 9 instances)
- in multi mode all estimates are published to alternate topics (eg estimator_attitude instead of vehicle_attitude)
- new ekf2 selector runs in multi-instance mode to monitor and compare all instances, selecting a primary (eg N x estimator_attitude => vehicle_attitude)
- sensors module accel & gyro inconsistency checks are now relative to the mean of all instances, rather than the current primary (when active ekf2 selector is responsible for choosing primary accel & gyro)
- existing consumers of estimator_status must check estimator_selector_status to select current primary instance status
- ekf2 single instance mode is still fully supported and the default
Co-authored-by: Paul Riseborough <gncsolns@gmail.com>
- sitl_gazebo in PX4/Firmware (dfbaf6607a): c3b15b7c9b
- sitl_gazebo current upstream: 6b9c8f15c2
- Changes: c3b15b7c9b...6b9c8f15c2
6b9c8f1 2020-10-10 Daniel Agar - mavlink interface round double sim time when converting to microseconds
b4cebfc 2020-10-09 JaeyoungLim - Support HIL configurations for generated models (#625)
b4d2d58 2020-10-09 Daniel Agar - mavlink interface poll until actuator received (#631)
* Add techpod SITL target
This adds a SITL target forthe techpod fixedwing model
* Update sitl_gazebo submoudle
This submodule update includes the techpod UAV model
* 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>
- fix gazebo SITL debug
- now prompts you to select vehicle
- devcontainer.json container support https://code.visualstudio.com/docs/remote/containers
- this allows you to jump straight into working within a container (px4-dev-nuttx) on a fresh machine
- also helps with Codespaces https://github.com/features/codespaces
- plugin updates
- cpp extension pack, spell checking, CTest support
- cleanup intellisense
- the backup tag parser was a resource hog and didn't work very well
- fix problemMatcher support so that you can click on a build failure
- sitl_gazebo in PX4/Firmware (ac732cdeba): 78bba3f25e
- sitl_gazebo current upstream: 9d2b19784c
- Changes: 78bba3f25e...9d2b19784c
9d2b197 2020-09-12 JaeyoungLim - Use jinja templates for standard_vtol and plane model (#590)
01587e6 2020-09-12 Lorenz Meier - Include GLib2 properly The previous approach did not actually search for glib2 in the system but hardcoded the name.
e49fac5 2020-09-12 bazooka joe - cleanups: rename class vars to be with underscore
6fb9bd9 2020-09-12 bazooka joe - move initializers to h file
29999c6 2020-09-12 JaeyoungLim - Update boat gps sensor (#595)
a208640 2020-09-09 petertheprocess - fix the rudder deflection bug. (#588)
- inconsistency checks now run continuously instead of only preflight
- keep inconsistencies for all sensors
- add per sensor data validator state as overall health flag
* [WIP] i2c_spi_buses: add '-q' for quiet startup flag
And enable for optional board sensors.
* ROMFS: rc.sensors try starting all optional I2C sensors quietly
Co-authored-by: Daniel Agar <daniel@agar.ca>
This should prevent the race between gzserver and gz model and fix the
integration tests which sometimes timeout because the model is not
spawned correctly.
This patch also changes the shebang to what's generally recommended.
If `make px4_sitl_default` is run, and not `make px4_sitl_default gazebo` then each model instance will throw the following errors:
```
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_gps_plugin.so: libgazebo_gps_plugin.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_multirotor_base_plugin.so: libgazebo_multirotor_base_plugin.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_motor_model.so: libgazebo_motor_model.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_motor_model.so: libgazebo_motor_model.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_motor_model.so: libgazebo_motor_model.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_motor_model.so: libgazebo_motor_model.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_groundtruth_plugin.so: libgazebo_groundtruth_plugin.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_magnetometer_plugin.so: libgazebo_magnetometer_plugin.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_barometer_plugin.so: libgazebo_barometer_plugin.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_mavlink_interface.so: libgazebo_mavlink_interface.so: cannot open shared object file: No such file or directory
[Err] [Plugin.hh:178] Failed to load plugin libgazebo_imu_plugin.so: libgazebo_imu_plugin.so: cannot open shared object file: No such file or directory
```
- sitl_gazebo in PX4/Firmware (f4d7052bec): 629e5f5c23
- sitl_gazebo current upstream: ce1eca2bd0
- Changes: 629e5f5c23...ce1eca2bd0
ce1eca2 2020-07-19 Daniel Leonard Robinson - New vehicle type: Airship (#490)
df186d2 2020-07-18 TSC21 - use 'EnableC++XX' and remove duplicated compiler sets
60e5d4e 2020-07-18 TSC21 - remove the check for the 'px4' binary (it's never found since it's built in parallel with sitl_gazebo)
a3b5c5e 2020-07-19 JaeyoungLim - Fix moment calculation (#545)
07820ee 2020-07-19 JaeyoungLim - Fix gimbal imu sensors intefering with each other (#549)
- Spaces -> tabs.
- Remove "brew install python" because it's already a dependency of the
px4-dev tap.
- Remove "brew install ccache" as we can also add it to the px4-dev tap.
- Don't try to update pip installation, it works fine as is.
- Install pip dependencies as user, no need for system-wide install.
- sitl_gazebo in PX4/Firmware (38588f0c37): 309f7b0ace
- sitl_gazebo current upstream: 1af7e29dbb
- Changes: 309f7b0ace...1af7e29dbb
1af7e29 2020-06-25 JaeyoungLim - Do not validate r1_rover
5e8ddfb 2020-06-25 Benjamin Perseghetti - fixes for R1 SDF https://github.com/PX4/sitl_gazebo/issues/533 (#534)
726c066 2020-06-23 Supakorn Suttiruang - Remove the incorrect force generated by moment (#532)
Co-authored-by: PX4 BuildBot <bot@px4.io>
- sitl_gazebo in PX4/Firmware (6b343c1f5e): 97106007eb
- sitl_gazebo current upstream: 846190e8a3
- Changes: 97106007eb...846190e8a3
846190e 2020-06-18 Daniel Agar - cmake set build type and C/C++ standard
1cd16d7 2020-06-18 JaeyoungLim - Set GPS utc time to use utc time (#522)
- remove all remaining IOCTLs for accel and gyro and handle all calibration entirely in sensors module with parameters
- sensor_accel and sensor_gyro are now always raw sensor data
- calibration procedures no longer need to first clear existing values before starting
- temperature calibration (TC) remove all scale (SCL) parameters
- gyro and baro scale are completely unused
- regular accel calibration scale can be used (CAL_ACC*_xSCALE) instead of TC scale
- sitl_gazebo in PX4/Firmware (39a33a35ae): 20e8dbe115
- sitl_gazebo current upstream: 3ba325b00f
- Changes: 20e8dbe115...3ba325b00f
3ba325b 2020-06-03 Julian Oes - geotagged_images: actually report number of images
92453d1 2020-05-21 JaeyoungLim - Cleanup
9aef888 2020-05-21 JaeyoungLim - Translate yaw to point at the right direction