Very interesting platform. So far I am experimenting with Drone Kit Python but found the documentation heavily relates to ardupilot wiki where info in regard to pc companion is severely outdated and not working anymore. I would like to give a try with FlyOS but I need RC override for my project. It does not seem that this function is present in FlytOS API.
You need to be a member of diydrones to add comments!
Replies
Hello Mario,
Currently FlytOS will take control from autopilot only when you switch to Offboard mode. So you will have to configure the offboard switch on your rc using qgroundcontrol or MP. This ensures that you always have a safety override switch.
If you mean something else by rc override (like sending fake rc data from odroid to pixhawk) then please elaborate so that I can help you out.
Thanks Dhiraj,
Your second assumption is right. For reasons I cannot disclose yet my project involve a master pixhawk coupled to an odroid XU-4 which is wirelessly networked with other pixhawks coupled with Intel Edisons. All sets can receive RC radio signals but need to be able to intercept them and forward equivalent command to other sets. Thus my requirement for some kind of RC override.
Regards,
Mario
If I am getting your case right, then you need to intercept the RC signal on all your systems, Take some decision based on RC data and then accordingly control your drones. In that case FlytOS can help you out. Here is the rough sketch of what you can implement. refer to documentation here.
You can use rc api to access rc data in flytOS (ros, cpp, python). Its not documented yet but is tested and implemented. I will get it up in documentation within a day or two.
You can read this data and take decisions based on it. If you want to manually control the vehicle using modified data then you can use position_set, velocity_set, attitude_set apis. Sharing data between multiple systems is very easy, in fact flytOS is built for this purpose. If you are using ROS then mulitmaster could be of your help. If you want to use python you can do rest calls to other system running flytOS using httpclientlib in python.
Withing next few days I am going to put together a demo wherein you can control multiple drones from a single python script running on your laptop. It will involve httpclientlib on laptop making rest calls to onboard flytOS to pilot these drones using velocity_set API. You can try out that and see if it can be suitable for your purpose as well.
Also there is option for overriding rc from flytOS which is not documented yet. It sends custom RC data to autopilot which can be used to control it. This can be useful to you. But I wont recommend doing that due to network link losses and delays, etc. Better to use attitude, velocity, position setpoints.