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?