PX4 Dev Call: April 29, 2020

April 29, 2020

Agenda

  • Status update by component/project
  • Roadmap, and Release discussion
  • Community Q&A
  • In-Depth discussions

Join Meeting

Meeting ID: 946 175 205
Join using your mobile/desktop

Call in using your phone, find your local number: https://zoom.us/u/aetSYKbiMF


Component update

Flight Testing

We don’t have an official test team at the moment.
[Announce]

Asking community to test 1.11 release. Please flash the latest beta and post your flight logs. Good ones and issues are welcome.

System Architecture

OS / NuttX

Some issues with TX DMA on UART. We disabled the feature again until we have a good fix

Driver

  • We discovered undocumented register set in old Invensense driver sensor to supposedly solve an issue with an old sensor model that results in a big offset with newer sensors. This magic trick was removed from the new drivers and this can result in an invalid accelerometer offset in one axis. A recalibration solves this.
  • There’s potential bugs with the ordering of uORB topics compared to the character devices that could lead to calibration issues e.g. with temperature calibration. There are cleanups on the way to not do assumptions on sensor order but data is verified with the unique device ID:


Commander

@dagar found an issue that you get a message “manual control lost” after finishing a calibration. We’d want to fix that for the release.

Estimation

When using barometer as primary height source there can be some problems. This is one of the major release blockers that needs to be sorted (FYI @Roman).

VTOL


Fixed Wing

No update

Multicopter

Needs review:

Attitude controller now runs on a separate thread directly when a new attitude estimate gets available instead of after the whole estimator update ran through. This decreases delay:

To reduce the logging rate, make replay logging possible on old boards and reduce CPU load on certain configurations the attitude controller update rate is about to be reduced from 400Hz to 200Hz (it was 250Hz not too long ago):

MAVSDK

Continued work on autogenerated C++ MAVSDK. Last part ported was the tune to command playing melodies on the buzzer.


MAVROS / RTPS / ROS2

  • @TSC21 Continues working on the Avoidance ROS2 port. No further updates.

Avoidance

No update

Simulation

FlightGear support finally ready and merged. We plan to move the content of the simulator support into a submodule.


Video:

Question from Mariano Lizrraga: Will QGC be supported together with FlightGear also in the future? MAVLink routing will change and it should work with SITL and HITL.

@Jaeyoung-Lim found some bugs in the gazebo simulation that made the whole simulated vehicle oscillate. He’s currently sorting them out:

Roadmap, and Release discussion

Community Q&A

Mariano Lizrraga: In Mathworks they’re heavily investing in supporting the PX4 stack in general. Code generation and running the result in PX4. They’re trying to enable highly detailed Simulink models to be used in simulation together with PX4. The question is how to be up to speed and know the direction. @dagar: It would be really useful to know what dependencies that use case has and even better have automated testing to ensure it’s still available like expected.

Junwoo: Specific question about nomenclature. Folder ROMFS/init.d/rCS containing startup scripts. Why are they named like this? @dagar It’s inherited from NuttX init.d/rCS is the main intro

Jan Willem Kujipers: Trying to make his own airplane flight mode but it doesn’t work yet. He wants to have one axis manual, the rest be controlled through the position controller. @dagar Currently it’s not very easy to add a new mode. We’re tackling that this year. It’s easier to go into the existing fixed-wing stabilized mode and change the axis that you need for your tests. Daniel has a library on the side to introduce frequency sweeps which he could upstream if needed.

Abraham Rodriguez: What’s the advantage of NuttX and what other RTOS were used in the past?
@dagar There’s different levels. Why use an OS at all? NuttX is a quite full-featured RTOS that is going after POSIX principles. We’re using these features just as one example threads. This is then mostly also compatible with SITL on POSIX systems.

In-Depth discussions


Errata and Feedback

Let me know below if I failed to capture anything the right way, and if there are any updates, or you have feedback on the call format.