Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
F
Firmware
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Alberto Ruiz Garcia
Firmware
Commits
34058cbc
Commit
34058cbc
authored
7 years ago
by
Daniel Agar
Committed by
GitHub
7 years ago
Browse files
Options
Downloads
Patches
Plain Diff
mavlink EXTENDED_SYS_STATUS add takeoff and landing (#7064)
parent
91d2ad17
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
mavlink/include/mavlink/v1.0
+1
-1
1 addition, 1 deletion
mavlink/include/mavlink/v1.0
mavlink/include/mavlink/v2.0
+1
-1
1 addition, 1 deletion
mavlink/include/mavlink/v2.0
src/modules/mavlink/mavlink_messages.cpp
+22
-2
22 additions, 2 deletions
src/modules/mavlink/mavlink_messages.cpp
with
24 additions
and
4 deletions
v1.0
@
ba39afec
Compare
fb57c62e
...
ba39afec
Subproject commit
fb57c62ee8b14c86f423d1549a90e0f6879584dc
Subproject commit
ba39afecc6ad838f4ec22fb5487b6d0a770b3bcf
This diff is collapsed.
Click to expand it.
v2.0
@
0c358ad6
Compare
10d730a4
...
0c358ad6
Subproject commit
10d730a446995b989e88ee15f14d9c28a3a428cc
Subproject commit
0c358ad66f4a7442177780712cdff6309a85a6b1
This diff is collapsed.
Click to expand it.
src/modules/mavlink/mavlink_messages.cpp
+
22
−
2
View file @
34058cbc
...
...
@@ -3297,6 +3297,8 @@ public:
private
:
MavlinkOrbSubscription
*
_status_sub
;
MavlinkOrbSubscription
*
_landed_sub
;
MavlinkOrbSubscription
*
_pos_sp_triplet_sub
;
MavlinkOrbSubscription
*
_control_mode_sub
;
mavlink_extended_sys_state_t
_msg
;
/* do not allow top copying this class */
...
...
@@ -3307,9 +3309,10 @@ protected:
explicit
MavlinkStreamExtendedSysState
(
Mavlink
*
mavlink
)
:
MavlinkStream
(
mavlink
),
_status_sub
(
_mavlink
->
add_orb_subscription
(
ORB_ID
(
vehicle_status
))),
_landed_sub
(
_mavlink
->
add_orb_subscription
(
ORB_ID
(
vehicle_land_detected
))),
_pos_sp_triplet_sub
(
_mavlink
->
add_orb_subscription
(
ORB_ID
(
position_setpoint_triplet
))),
_control_mode_sub
(
_mavlink
->
add_orb_subscription
(
ORB_ID
(
vehicle_control_mode
))),
_msg
()
{
_msg
.
vtol_state
=
MAV_VTOL_STATE_UNDEFINED
;
_msg
.
landed_state
=
MAV_LANDED_STATE_UNDEFINED
;
}
...
...
@@ -3345,8 +3348,25 @@ protected:
if
(
land_detected
.
landed
)
{
_msg
.
landed_state
=
MAV_LANDED_STATE_ON_GROUND
;
}
else
{
}
else
if
(
!
land_detected
.
landed
)
{
_msg
.
landed_state
=
MAV_LANDED_STATE_IN_AIR
;
vehicle_control_mode_s
control_mode
=
{};
position_setpoint_triplet_s
pos_sp_triplet
=
{};
if
(
_control_mode_sub
->
update
(
&
control_mode
)
&&
_pos_sp_triplet_sub
->
update
(
&
pos_sp_triplet
))
{
if
(
control_mode
.
flag_control_auto_enabled
&&
pos_sp_triplet
.
current
.
valid
)
{
if
(
pos_sp_triplet
.
current
.
type
==
position_setpoint_s
::
SETPOINT_TYPE_TAKEOFF
)
{
_msg
.
landed_state
=
MAV_LANDED_STATE_TAKEOFF
;
}
else
if
(
pos_sp_triplet
.
current
.
type
==
position_setpoint_s
::
SETPOINT_TYPE_LAND
)
{
_msg
.
landed_state
=
MAV_LANDED_STATE_LANDING
;
}
}
}
}
else
{
_msg
.
landed_state
=
MAV_LANDED_STATE_UNDEFINED
;
}
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment