UAV toolbox support package for PX4 : can I use CAN protocol GPS with custom flight algorithm?
Show older comments
Hello,
I am trying to use CAN protocol GPS module(here+ or here3 gps module) with uploading my custom flight control algorithm.
I select custom flight controller algorithm, and therefore mc_att_control and mc_pos_control module is disabled while all other modules(navigator or commander, etc) are still alive.
I uploaded my custom flight algorithm and connected CAN GPS module but seems Pixhawk4 board cannot recognize the CAN GPS.
I changed parameter UAVCAN_ENABLE to 1 to enable uavcan protocol, but this is not worked.
When I upload the original PX4 firmware, CAN GPS automatically is detected and can be used.
So I suspect uploading custom algorithm somehow affects the communication between CAN GPS and Pixhawk4 board.
Is there any method to use CAN GPS with uploading my custom flight algorithm?
Or, is it possible that uploading my custom flight algorithm affects the connection between peripheral hardware and Pixhawk board?
Thank you for Reading
Jongwon Lee
5 Comments
Arun Mathamkode
on 4 Apr 2022
Hi,
If you can provide few more details it will be helpful. Which MATLAB version are you using? Are you using the rCS or rc.tx as the startup script?. First verify, if uavcan module is running with the custom flight control algorithm. You can connect to NSH console or MAVLink console and verify the status of uavcan using 'uavcan status' command. If uavcan module is not running try starting it manually using 'uavcan start' command. Just to make sure, I hope you have rebooted the board after setting parameter UAVCAN_ENABLE to 1.
Arun Mathamkode
on 6 Apr 2022
You mentioned that when you used the original PX4 as it is (without Simulink in picture), UAVCAN GPS was working as expected. Did you directly downloaded the original PX4 executable or cloned a separate PX4 firmware sources and build it? Just to get some more insights, I would recommend trying out some simple model in Simulink instead of the custom controller and see if that is helping. If uavcan module is running, you can also see if the vehicle_gps_position uORB message is getting publihsed with correct data.
Arun Mathamkode
on 8 Apr 2022
Hi Jongwon Lee,
Thanks for sharing the details. Yeah I agree with your observations, The warning with GNSS is the right place to investigate further. Why is the different behaviour with original PX4 and custom controller in PX4 is surprising to me also. One small catch I can think of is the PX4 Firmware versions. PX4 Support package is based on v1.10.2 and I am not sure what firmware version you may be downloading from QGroundControl. My guess is that this may be a latest version and that may be the reason for difference in behaviour. You can verify the firmware version with 'ver git' command in NSH console. I would recommend uploading PX4 v1.10.2 original firmware from QGC to have an apple to apple comparison.
Thanks,
Arun
Accepted Answer
More Answers (0)
Categories
Find more on PX4 Autopilots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



