- sitl_gazebo-classic in PX4/Firmware (599a66c8a5): 3f2b9678af
- sitl_gazebo-classic current upstream: 2e3ed9bfb0
- Changes: 3f2b9678af...2e3ed9bfb0
2e3ed9b 2023-05-14 JaeyoungLim - Add Quadtailsitter model based on the swan K1 (#982)
670d4d2 2023-05-12 Julian Oes - airspeed: rotate tube so it faces forward (#981)
803254d 2023-05-11 Julian Oes - tailsitter: add valid inertia, fix CG (#980)
6fd1d17 2023-05-09 JaeyoungLim - Fix advanced plane model (#979)
506f10c 2023-05-05 Julian Oes - iris: move IMU and GPS where they are (#978)
- sitl_gazebo-classic in PX4/Firmware (4bb4bc185b): 1c5818e56c
- sitl_gazebo-classic current upstream: 3f2b9678af
- Changes: 1c5818e56c...3f2b9678af
3f2b967 2023-04-11 JaeyoungLim - Ignore sdf validation for land_pad (#977)
a91e4fd 2023-04-11 Jonas Perolini - Add support for camera and new land pad in irlock simulation (#950)
8fcd3cf 2023-04-10 JaeyoungLim - Remove bionic related tests (#974)
* Port of the PX4 Vision gazebo-classic model to Gazebo. With Gazebo Garden, everything seems functionnal.
* Port of the PX4 Vision gazebo-classic model to Gazebo.
With Gazebo Garden, everything seems functionnal.
* Added airframe for command make px4_sitl gz_px4vision
* revert author field
* Import model from Ignition Fuel instead of defining it directly in the .sdf
- multi-instances support is removed from the parameter definitions.
- XRCE_DDS_AG_IP allows to define the agent IP when udp transport is used.
The parameter is used by default if the module is started without the -h argument.
- XRCE_DDS_PRT allows to define the agent listning udp port when the
udp transport is uded. The parameter is used by default if the module is started
without the -p argument.
- Tools/convert_ip.py assists in converting ips in decimal dot notation into int32
notation.
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@phd.unipd.it>
- Add the possibility in the parser to replace the defines made in the current file with their argument (includes are not supported)
- Add the possibility for the parser to parse int argument with bitwise shift operators
- if timestamp (or timestamp_sample) unpopulated fill it with current hrt_absolute_time()
- if using provided timestamp don't allow it to exceed current hrt_absolute_time()
- sitl_gazebo-classic in PX4/Firmware (f3cdf70732): 1a725dd858
- sitl_gazebo-classic current upstream: 9343aaf4e2
- Changes: 1a725dd858...9343aaf4e2
9343aaf 2023-01-15 JaeyoungLim - Fix model prefix for user camera plugin (#948)
e5836d3 2023-01-13 Simone - Added robot namespace to the model (#941)
- 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)
- sitl_gazebo in PX4/Firmware (bb591c6c29): 049b667d5e
- sitl_gazebo current upstream: d44ce17f43
- Changes: 049b667d5e...d44ce17f43
d44ce17 2022-12-19 Frederic Taillandier - fixing macos test build (#935)
7f9239c 2022-12-19 Daniel Mesham - Add safe landing world (#932)
61b1fc1 2022-12-19 Daniel Mesham - Update depth camera to match the RealSense D455 (#933)
- sitl_gazebo in PX4/Firmware (b3cebc6686): b38e701ec4
- sitl_gazebo current upstream: 1b56329b73
- Changes: b38e701ec4...1b56329b73
1b56329 2022-11-22 Frederic Taillandier - adding a gazebo position sniffer to get position at a high rate from another program (#928)
With openjdk 17.0.5 2022-10-18, jmavsim fails to start due to missing
exports. This was previously a warning and turned into an error now.
Caught AppContextInfo(Bug 1004) InaccessibleObjectException: Unable to make public static sun.awt.AppContext sun.awt.AppContext.getAppContext() accessible: module java.desktop does not "exports sun.awt" to unnamed module @2c767a52 on thread J3D-Renderer-1
[0]: java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
[1]: java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
[2]: java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
[3]: java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
[4]: com.jogamp.nativewindow.awt.AppContextInfo$1$1.run(AppContextInfo.java:40)
[5]: com.jogamp.common.util.UnsafeUtil.doWithoutIllegalAccessLogger(UnsafeUtil.java:219)
[6]: com.jogamp.nativewindow.awt.AppContextInfo$1.run(AppContextInfo.java:34)
[7]: java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
[8]: com.jogamp.nativewindow.awt.AppContextInfo.<clinit>(AppContextInfo.java:31)
[9]: com.jogamp.nativewindow.awt.JAWTWindow.<init>(JAWTWindow.java:128)
[10]: jogamp.nativewindow.jawt.x11.X11JAWTWindow.<init>(X11JAWTWindow.java:60)
[11]: java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[12]: java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
[13]: java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[14]: java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
[15]: java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
[16]: jogamp.nativewindow.NativeWindowFactoryImpl.getAWTNativeWindow(NativeWindowFactoryImpl.java:105)
[17]: jogamp.nativewindow.NativeWindowFactoryImpl.getNativeWindowImpl(NativeWindowFactoryImpl.java:66)
[18]: com.jogamp.nativewindow.NativeWindowFactory.getNativeWindow(NativeWindowFactory.java:654)
[19]: javax.media.j3d.JoglPipeline$QueryCanvas.addNotify(JoglPipeline.java:8604)
[20]: java.desktop/java.awt.Container.addNotify(Container.java:2804)
[21]: java.desktop/java.awt.Window.addNotify(Window.java:791)
[22]: java.desktop/java.awt.Frame.addNotify(Frame.java:495)
[23]: java.desktop/java.awt.Window.show(Window.java:1053)
[24]: java.desktop/java.awt.Component.show(Component.java:1728)
[25]: java.desktop/java.awt.Component.setVisible(Component.java:1675)
[26]: java.desktop/java.awt.Window.setVisible(Window.java:1036)
[27]: javax.media.j3d.JoglPipeline.getBestConfiguration(JoglPipeline.java:8379)
[28]: javax.media.j3d.Renderer.doWork(Renderer.java:496)
[29]: javax.media.j3d.J3dThread.run(J3dThread.java:271)
Caught AppContextInfo(Bug 1004) IllegalAccessException: class com.jogamp.nativewindow.awt.AppContextInfo cannot access class sun.awt.AppContext (in module java.desktop) because module java.desktop does not export sun.awt to unnamed module @2c767a52 on thread J3D-Renderer-1
[0]: java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:392)
[1]: java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:674)
[2]: java.base/java.lang.reflect.Method.invoke(Method.java:560)
[3]: com.jogamp.nativewindow.awt.AppContextInfo.fetchAppContext(AppContextInfo.java:191)
[4]: com.jogamp.nativewindow.awt.AppContextInfo.update(AppContextInfo.java:135)
[5]: com.jogamp.nativewindow.awt.AppContextInfo.<init>(AppContextInfo.java:50)
[6]: com.jogamp.nativewindow.awt.JAWTWindow.<init>(JAWTWindow.java:128)
[7]: jogamp.nativewindow.jawt.x11.X11JAWTWindow.<init>(X11JAWTWindow.java:60)
[8]: java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[9]: java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
[10]: java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[11]: java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
[12]: java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
[13]: jogamp.nativewindow.NativeWindowFactoryImpl.getAWTNativeWindow(NativeWindowFactoryImpl.java:105)
[14]: jogamp.nativewindow.NativeWindowFactoryImpl.getNativeWindowImpl(NativeWindowFactoryImpl.java:66)
[15]: com.jogamp.nativewindow.NativeWindowFactory.getNativeWindow(NativeWindowFactory.java:654)
[16]: javax.media.j3d.JoglPipeline$QueryCanvas.addNotify(JoglPipeline.java:8604)
[17]: java.desktop/java.awt.Container.addNotify(Container.java:2804)
[18]: java.desktop/java.awt.Window.addNotify(Window.java:791)
[19]: java.desktop/java.awt.Frame.addNotify(Frame.java:495)
[20]: java.desktop/java.awt.Window.show(Window.java:1053)
[21]: java.desktop/java.awt.Component.show(Component.java:1728)
[22]: java.desktop/java.awt.Component.setVisible(Component.java:1675)
[23]: java.desktop/java.awt.Window.setVisible(Window.java:1036)
[24]: javax.media.j3d.JoglPipeline.getBestConfiguration(JoglPipeline.java:8379)
[25]: javax.media.j3d.Renderer.doWork(Renderer.java:496)
[26]: javax.media.j3d.J3dThread.run(J3dThread.java:271)
Exception in thread "main" java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:61)
Caused by: java.lang.RuntimeException: java.lang.IllegalAccessException: class javax.media.j3d.JoglPipeline cannot access class sun.awt.X11GraphicsDevice (in module java.desktop) because module java.desktop does not export sun.awt to unnamed module @2c767a52
at javax.media.j3d.JoglPipeline.getScreen(JoglPipeline.java:8553)
at javax.media.j3d.Screen3D.<init>(Screen3D.java:354)
at javax.media.j3d.Canvas3D.<init>(Canvas3D.java:1124)
at javax.media.j3d.Canvas3D.<init>(Canvas3D.java:1026)
at javax.media.j3d.Canvas3D.<init>(Canvas3D.java:990)
at me.drton.jmavsim.Visualizer3D$CustomCanvas3D.<init>(Visualizer3D.java:909)
at me.drton.jmavsim.Visualizer3D.<init>(Visualizer3D.java:196)
at me.drton.jmavsim.Simulator.<init>(Simulator.java:193)
at me.drton.jmavsim.Simulator.main(Simulator.java:944)
... 5 more
Caused by: java.lang.IllegalAccessException: class javax.media.j3d.JoglPipeline cannot access class sun.awt.X11GraphicsDevice (in module java.desktop) because module java.desktop does not export sun.awt to unnamed module @2c767a52
at java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:392)
at java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:674)
at java.base/java.lang.reflect.Method.invoke(Method.java:560)
at javax.media.j3d.JoglPipeline.getScreen(JoglPipeline.java:8551)
... 13 more
The srcparser.py is specific to each use case (e.g. Airframes, Parameters, px4events, etc as in Tool/* folders).
Therefore it is confusing to have the px_process_airframes.py script handle concept of airframes under the generic name 'params'.
This improves readability and sets the baseground for implementing more specific vehicle type supports, as mentioned in https://github.com/PX4/PX4-user_guide/pull/1858#discussion_r876554728
- sitl_gazebo in PX4/Firmware (0e2b1ee979): 56b5508b72
- sitl_gazebo current upstream: b38e701ec4
- Changes: 56b5508b72...b38e701ec4
b38e701 2022-11-03 frederictaillandier - adding jinja parameters
cc8f33d 2022-11-03 frederictaillandier - allowing to override the streaming gimbal ip and port
6c3f1f8 2022-11-03 alessandro - send orientation q with landing_target message (#919)
48e764b 2022-11-02 Frederic Taillandier - allowing to override the video stream ip in a simpler way than using the jinja file (#923)
- 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)
- sitl_gazebo in PX4/Firmware (2bd1ac005f): b968405a61
- sitl_gazebo current upstream: e804327595
- Changes: b968405a61...e804327595
e804327 2022-10-01 Thomas Stauber - set lidar measurements to 0.0 if out of range (#914)
7ed1da6 2022-09-27 Karthik S - Advanced Lift-Drag Plugin (#901)
669d7f5 2022-09-08 Oleg Kalachev - Fix local addr assignment for qgc and sdk sockets
- rcS parameter backup try to directly restore param (FRAM) from backup (in case SD card is removed before successful export)
- rcS parameter backup logging rearrange to capture more logging output (param_import_fail.txt)
- posix rcS try to keep param backup and restore roughly in sync with NuttX rcS
- tinybson fix debug printf format
- param_export_internal ensure file descriptor positioned at 0 (precaution)
- 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)
- 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>
* sih: Move sih out of work queue
This reverts commit bb7dd0cf00.
* sih-sim: Enable sih in sitl, together with lockstep
* sih-sim: new files for sih: quadx and airplane
* sih: Added tailsitter for sih-sitl simulation
* sitl_target: Added seperate target loop for sih
* jmavsim_run: Allow jmavsim to run in UDP mode
* lockstep: Post semaphore on last lockstep component removed
* sih-sim: Added display for effectively achieved speed
* sih: increase stack size
* sih-sim: Improved sleep time computation, fixes bug of running too fast
* sitl_target: place omnicopter in alphabethic order
Co-authored-by: romain-chiap <romain.chiap@gmail.com>
Co-authored-by: Matthias Grob <maetugr@gmail.com>