I want to write a module in PX4 that runs right from the start of the Pixhawk. I found this page of the PX4 documentation, which describes work tasks and work queue tasks. For work tasks, it states that their call (taskname start
) must be added to the system’s startup script. For work queue tasks, it says:
A work queue task application is just the same as an ordinary (task) application, except that it needs to specify that it is a work queue task, and schedule itself to run during initialisation.
To me “schedule itself to run during initialisation” sounds exactly like what I want to achieve. However, the page does not mention how this is accomplished. Even the example module from the page does not run from the start of the Pixhawk. I have to manually execute work_item_example start
in the MAVLink console of QGroundcontrol for it to run.
So, my question is: How can one create a module as a work queue task that runs from the start of the Pixhawk?