---
pageClass: is-wide-page
---
# PositionControllerLandingStatus (UORB message)
**TOPICS:** position_controller_landing_status
## Fields
| Name | Type | Unit [Frame] | Range/Enum | Description |
| ------------------------ | --------- | ------------ | ---------- | ------------------------------------------------------------------- |
| timestamp | `uint64` | us | | time since system start |
| lateral_touchdown_offset | `float32` | m | | lateral touchdown position offset manually commanded during landing |
| flaring | `bool` | | | true if the aircraft is flaring |
| abort_status | `uint8` | | |
## Constants
| Name | Type | Value | Description |
| ------------------------------------------------------------- | ------- | ----- | --------------------- |
| NOT_ABORTED | `uint8` | 0 |
| ABORTED_BY_OPERATOR | `uint8` | 1 |
| TERRAIN_NOT_FOUND | `uint8` | 2 | FW_LND_ABORT (1 << 0) |
| TERRAIN_TIMEOUT | `uint8` | 3 | FW_LND_ABORT (1 << 1) |
| UNKNOWN_ABORT_CRITERION | `uint8` | 4 |
## Source Message
[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/PositionControllerLandingStatus.msg)
::: details Click here to see original file
```c
uint64 timestamp # [us] time since system start
float32 lateral_touchdown_offset # [m] lateral touchdown position offset manually commanded during landing
bool flaring # true if the aircraft is flaring
# abort status is:
# 0 if not aborted
# >0 if aborted, with the singular abort criterion which triggered the landing abort enumerated by the following abort reasons
uint8 abort_status
# abort reasons
# after the manual operator abort, corresponds to individual bits of param FW_LND_ABORT
uint8 NOT_ABORTED = 0
uint8 ABORTED_BY_OPERATOR = 1
uint8 TERRAIN_NOT_FOUND = 2 # FW_LND_ABORT (1 << 0)
uint8 TERRAIN_TIMEOUT = 3 # FW_LND_ABORT (1 << 1)
uint8 UNKNOWN_ABORT_CRITERION = 4
```
:::