I created a separate PX4 module which uses 4 external cameras and saves the images in a TIF.
The size of each TIF is 5.2 MB and I am capturing images at 1Hz.
I have spawned 2 px4 task threads, one for enqueuing images into a queue and another for saving the images from the queue into TIFs. Both threads run at priority level (MAX - 5) which is same as EKF2 and Logger (I need both).
So I have noticed that saving images and writing some GPS data into a log (gpsIndex.log) file takes a long time. If the average time to write such TIF is 200 ms, it sometimes takes more than 3 seconds. Also, the messages in logger are dropped for more than 10 seconds.
Should I just increase the priority of saving thread as well as logger, such that i do not get any IO bottleneck?. Also, will increasing their priority affect EKF2? (EKF2 runs on aDsp).
How should I upload logger and sdlog2 files in this post.