Hey guys,
I'm working with the newest ArduPlane, and I'm trying to get the following messages at 10Hz from the PixHawk over the second serial port to another microcontroller
Msg ID: 31, Name: ATTITUDE_QUATERNION
Msg ID: 33, Name: GLOBAL_POSITION_INT
Msg ID: 63, Name: GLOBAL_POSITION_INT_COV
They're taken from the MavLink common xml. Does anyone know which SR (SR2_*_*) settings would give me these messages at 10Hz?
Thanks guys!
Replies
If you look at the GCS_Mavlink.pde you can see the datastreams and what messages they send. Hopefully this gives you a start.
Ok, after some searching, it seems that ArduPlane doesn't send message ID 31. Anyone know where I could grab quaternion values from the controller? NavEKF::getQuaternion() doesn't work. I want to send a mavlink message using mavlink_msg_attitude_quaternion_send.
Just for future reference, we figured this out by using the following:
To convert the NavEKF Euler angle to quaternions:
ahrs.get_NavEKF().getQuaternion(quat);
To send the quaternion message in MAVLink:
mavlink_msg_attitude_quaternion_send(chan, millis(), quat.q1, quat.q2, quat.q3, quat.q4, gyros.x, gyros.y, gyros.z);
One can update the rate, but when you connect using MAVProxy (or any other ground station) they reupdate the rates. So this only works over serial to a microcontroller or compute.