From the Mavlink receiver implemented in the PX4 Firmware, we can read that there are undocumented features for the SET_POSITION_TARGET_LOCAL_NED mavlink message.
We can see there are a Takeoff, Land, Loiter and Idle setpoints for Offboard mode.
How far are those implemented? Are those safe to use? What happens if we send a Position and a Velocity setpoint? (by ignoring neither the velocity nor the position)
I’m still using version 1.4.4 but I will switch to 1.5.5
As I’m landing using Offboard command, i’m using this bitmask : (0x2000 | 0b110111000011). I also set null speed for vx and vy (even if its redundant with bitfield, just to make sure)
nedSetpoint->vx = 0; /* Set Null Speed for x and y translation */
nedSetpoint->vy = 0;
Also as I request landing the first step I do in order to bouild the NED setpoint is to use the actual Local NED for North and East, hence landing vertically.
If I correctly remember, you need to set non Null speed in SET_POSITION_TARGET_LOCAL_NED message.
I’m not sure the MASK_LAND_POSITION is really usefull as the developpers are able to decompose it in two steps. In order to avoid freefall, But having a clear and simple vertical landing procedure in offboard mode will be great
I don’t use Idle or Loiter (in order to achieve loiter, I continously send SET_POSITION_TARGET_LOCAL_NED message with the exact same North East Down coordonate). I do not know what Idle is intended for.
Do you mean that if i where OFFBORAD, (e.g Raspberry pi connected to Pixhawk). I should use the following message SET_POSITION_TARGET_LOCAL_NED to take off??