Community
cancel
Showing results for 
Search instead for 
Did you mean: 
MKris9
Novice
1,766 Views

No connection with FCU and no heartbeat

Jump to solution

'

We have 4 Intel Aero RTF, two that gets a heartbeat and two that doesn't.

When we listen to the rostopic diagnostic (rostopic echo diagnostic) on the drones that doesn't work we get this output:

---

 

header:

 

seq: 105

 

stamp:

 

secs: 1531295755

 

nsecs: 621677207

 

frame_id: ''

 

status:

 

-

 

level: 1

 

name: "mavros: FCU connection"

 

message: "not connected"

 

hardware_id: "tcp://127.0.0.1:5760?ids=1,1"

 

values:

 

-

 

key: "Received packets:"

 

value: "3522"

 

-

 

key: "Dropped packets:"

 

value: "0"

 

-

 

key: "Buffer overruns:"

 

value: "0"

 

-

 

key: "Parse errors:"

 

value: "0"

 

-

 

key: "Rx sequence number:"

 

value: "169"

 

-

 

key: "Tx sequence numb...
0 Kudos
1 Solution
MKris9
Novice
388 Views

We solved the problem.

The issue was that when we have connected all the 4 drones to QGroundControl, QGC has given the drones different SystemIDs. This sysid is used in initialization of mavros, and we believe that this is the cause of all our problems. When we give the drone sysid=1 again we get a connection with the FCU.

We now work on giving the different drones different IDs so we can use several at once, so if anyone has any tips on this; get in touch!

View solution in original post

8 Replies
idata
Community Manager
388 Views

Hello mariepauline,

 

 

Thank you for contacting Intel Customer Support.

 

Could you please clarify which Operating System you are using on the Drones that work and on the Drones that do not work.

 

Can you also send me the output of http://aero-get-version.py aero-get-version.py for the drones?

 

Do you have a specific software running on your Drones or what do you mean by "On the drones that run our software"?

 

 

 

Looking forward to your response.

 

 

Best regards,

 

Casandra
MKris9
Novice
388 Views

Hello Casandra,

We got Ubuntu 16.04 running on all 4 drones, both the ones that works and the ones that doesn't.

What I mean by "our software" is a code we have written, based on ROS that uses auto.mission-mode to fly to waypoints.

This is the output of aero-get-version.py on the drones that doesn't work:

BIOS_VERSION = Aero-01.00.16

 

OS_VERSION = Ubuntu 16.04.4 LTS"

 

AIRMAP_VERSION = unknown

 

FPGA_VERSION = 0xc2

 

AeroFC firmware version = unknown

This is the output of aero-get-version.py on the drones that works:

BIOS_VERSION = Aero-01.00.16

 

OS_VERSION = Ubuntu 16.04.4 LTS"

 

AIRMAP_VERSION = unknown

 

FPGA_VERSION = 0xc2

 

AeroFC firmware version = 1.6.5
idata
Community Manager
388 Views

Hello Mariepauline,

 

 

 

Thank you very much for the details.

 

I would like to suggest, for the drones that do not work, that you follow the guide for flashing the flight controller available here: https://github.com/intel-aero/meta-intel-aero/wiki/90-(References)-OS-user-Installation# flight-controller https://github.com/intel-aero/meta-intel-aero/wiki/90-(References)-OS-user-Installation# flight-controller

 

 

Please let me know if this work.

 

 

Best regards,

 

Casandra
idata
Community Manager
388 Views

Hello Mariepauline,

 

 

Were the steps provided useful in resolving the issue?

 

Do you require any further assistance?

 

 

Thank you in advance,

 

Casandra

 

Intel Customer Support

 

MKris9
Novice
388 Views

We have done this several times. Both with the px4-version can is downloaded automatically with Intel Aero repository and with other versions of px4.

We have done some further investigation, and it looks like it is just mavros that can't get connection with the flight controller. We can arm with mavpy, but mavros doesn't get to arm the drone or anything.

idata
Community Manager
388 Views

Hello Mariepauline,

 

 

I would like to suggest to take a look at this sample as it might be helpful for you: https://github.com/intel-aero/sample-apps/blob/master/ros/src/aero_offboard_ctrl/src/aero_offboard_c... https://github.com/intel-aero/sample-apps/blob/master/ros/src/aero_offboard_ctrl/src/aero_offboard_c...

 

 

Also, offboard(manual mode) is supposed to work without GPS lock.

 

Can you send me the script you are using to arm the motors, if you're using our sample scripts from https://github.com/intel-aero/meta-intel-aero/wiki/04-Autonomous-drone-programming-in-Python https://github.com/intel-aero/meta-intel-aero/wiki/04-Autonomous-drone-programming-in-Python those are written to only arm the motors for 5 seconds.

 

 

You can also take a look at this thread: /thread/115384 https://communities.intel.com/thread/115384

 

They seem to have an issue similar to yours.

 

 

Let me know if this is helpful.

 

 

Best regards,

 

Casandra
MKris9
Novice
388 Views

We run this script:

/**

* @file offb_node.cpp

* @brief Offboard control example node, written with MAVROS version 0.19.x, PX4 Pro Flight

* Stack and tested in Gazebo SITL

*/

 

# include <</span>ros/ros.h>

# include <</span>geometry_msgs/PoseStamped.h>

# include <</span>mavros_msgs/CommandBool.h>

# include <</span>mavros_msgs/SetMode.h>

# include <</span>mavros_msgs/State.h>

 

mavros_msgs::State current_state;

void state_cb(const mavros_msgs::State::ConstPtr& msg){

current_state = *msg;

}

 

int main(int argc, char **argv)

{

ros::init(argc, argv, "offb_node");

ros::NodeHandle nh;

 

ros::Subscriber state_sub = nh.subscribe

("mavros/state", 10, state_cb);

ros::Publisher local_pos_pub = nh.advertise

("mavros/setpoint_position/local", 10);

ros::ServiceClient arming_client = nh.serviceClient

("mavros/cmd/arming");

ros::ServiceClient set_mode_client = nh.serviceClient

("mavros/set_mode");

 

//the setpoint publishing rate MUST be faster than 2Hz

ros::Rate rate(20.0);

 

// wait for FCU connection

while(ros::ok() && !current_state.connected){

ros::spinOnce();

rate.sleep();

}

 

geometry_msgs::PoseStamped pose;

pose.pose.position.x = 0;

pose.pose.position.y = 0;

pose.pose.position.z = 0.5;

 

<span style="colo...

MKris9
Novice
389 Views

We solved the problem.

The issue was that when we have connected all the 4 drones to QGroundControl, QGC has given the drones different SystemIDs. This sysid is used in initialization of mavros, and we believe that this is the cause of all our problems. When we give the drone sysid=1 again we get a connection with the FCU.

We now work on giving the different drones different IDs so we can use several at once, so if anyone has any tips on this; get in touch!

View solution in original post

Reply