You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: common/source/docs/common-telemetry-rockblock.rst
+48-24Lines changed: 48 additions & 24 deletions
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,7 @@ Due to the very low datarate of the RockBLOCK, there are a few key limitations:
19
19
20
20
- A single `HIGH_LATENCY2 <https://mavlink.io/en/messages/common.html#HIGH_LATENCY2>`__ packet will be sent every ``RCK_PERIOD`` sec. This will give basic position and status information.
21
21
- No heartbeats, statustexts, parameters and waypoints will be sent from the vehicle to the GCS.
22
-
- The RockBLOCK only sends a subset of command MAVlink messages (see below list) from the GCS to Vehicle. Parameters and waypoints will not be sent.
22
+
- The RockBLOCK only sends a subset of MAVlink messages (see below list) from the GCS to Vehicle. Parameters and waypoints will not be sent.
23
23
- Only 1 command message can be sent per ``RCK_PERIOD`` from the GCS to vehicle. Any additional commands will overwrite the previous command
24
24
25
25
In practice, this means the RockBLOCK can only be used whilst monitoring a vehicle during automated flight modes. Any sort
@@ -28,36 +28,59 @@ of manual control (outside of low-rate GUIDED mode "fly to" locations) is not po
28
28
The RockBLOCK has a latency of 20-60 seconds and is only able to send 1 message per 30 second period (or greater). This period is
29
29
configurable via the ``RCK_PERIOD`` parameter.
30
30
31
+
If desired, the RockBlock can automatically activate on loss-of-GCS-telemetry. This is done by setting the ``RCK_FORCEHL`` parameter to 2.
32
+
The RockBLOCK will then automatically activate when telemetry is lost for ``RCK_TIMEOUT`` seconds. When telemetry is restored,
33
+
the RockBLOCK will deactivate.
34
+
31
35
.. note:: Any modem using the Iridium 9602 or 9603 chipset *should* work, though only the RockBLOCK 9603N modem has been tested.
32
36
33
-
Supported MAVLink command messages
34
-
==================================
37
+
Supported MAVLink messages
38
+
==========================
35
39
36
-
- CMD_NAV_RETURN_TO_LAUNCH
37
-
- CMD_NAV_LAND
38
-
- CMD_NAV_TAKEOFF
39
-
- CMD_NAV_VTOL_TAKEOFF
40
-
- CMD_NAV_VTOL_LAND
41
-
- CMD_DO_SET_MODE
42
-
- CMD_MISSION_START
43
-
- CMD_COMPONENT_ARM_DISARM
44
-
- CMD_CONTROL_HIGH_LATENCY
40
+
The following MAVLink messages are supported from the GCS to the vehicle:
45
41
46
-
Setup
47
-
=====
42
+
- COMMAND_LONG
43
+
- COMMAND_INT
44
+
- MISSION_ITEM_INT
45
+
- MISSION_SET_CURRENT
46
+
47
+
Within the COMMAND_LONG and COMMAND_INT messages, the following commands are supported:
48
48
49
-
Due to limitations of the RockBLOCK web service, all packets in the Vehicle to GCS direction need to go via a public-facing web service.
50
-
See `here <https://docs.rockblock.rock7.com/docs/integration-with-application>`__ for details.
51
-
For the purposes of this configuration, the free `adafruit.io <https://io.adafruit.com/>`__ service is used.
49
+
- MAV_CMD_NAV_RETURN_TO_LAUNCH
50
+
- MAV_CMD_NAV_LAND
51
+
- MAV_CMD_NAV_TAKEOFF
52
+
- MAV_CMD_NAV_VTOL_TAKEOFF
53
+
- MAV_CMD_NAV_VTOL_LAND
54
+
- MAV_CMD_DO_SET_MODE
55
+
- MAV_CMD_DO_CHANGE_SPEED
56
+
- MAV_CMD_DO_SET_SERVO
57
+
- MAV_CMD_DO_PARACHUTE
58
+
- MAV_CMD_MISSION_START
59
+
- MAV_CMD_COMPONENT_ARM_DISARM
60
+
- MAV_CMD_DO_REPOSITION
61
+
- MAV_CMD_CONTROL_HIGH_LATENCY
62
+
63
+
Vehicle Setup
64
+
============
52
65
53
66
#. Connect the RockBLOCK modem to a spare UART on the flight controller. Only the +5V, RX, TX and GND lines need to be connected
54
67
#. Ensure the modem is activated in your RockBLOCK account
55
-
#. Create a `new feed on adafuit.io <https://learn.adafruit.com/using-the-rockblock-iridium-modem/forwarding-messages>`__. Ensure the Feed History is OFF and a webhook is active. Connect this feed to your RockBLOCK account.
56
68
#. Copy the `Ardupilot RockBLOCK Lua script <https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_Scripting/applets/RockBlock.lua>`__ to the flight controller's SD card.
57
69
#. Ensure :ref:`LUA Scripts<common-lua-scripts>` are enabled and the RockBLOCK UART is set as a scripting UART.
58
-
#. Run the RockBLOCK gateway `rockblock2mav.py <https://github.com/stephendade/rockblock2mav>`__ on the GCS to send/receive telemetry on 127.0.0.1:16000. Ensure the GCS software is connected to this ip/port.
59
70
60
-
.. note:: QGroundControl and Mission Planner have very limited support for RockBLOCK MAVLink telemetry. It is highly recommended to use MAVProxy, which fully supports this telemetry.
71
+
72
+
Ground Setup
73
+
============
74
+
75
+
The RockBLOCK messages are sent and received via the Rock7 gateway. It has an API that allows for
76
+
sending and receiving messages via a web service.
77
+
78
+
The `Rockblock2MAV <https://github.com/stephendade/rockblock2mav>`__ software is a companion to the RockBlock Lua
79
+
script. Use this software on the GCS to send and receive MAVLink messages from the RockBLOCK modem via the Rock7 gateway.
80
+
81
+
See the `Rockblock2MAV documentation <https://github.com/stephendade/rockblock2mav>`__ for installation and usage instructions.
82
+
83
+
.. note:: QGroundControl and Mission Planner have limited support for RockBLOCK MAVLink telemetry. It is recommended to use MAVProxy, which fully supports this telemetry.
61
84
62
85
63
86
Usage
@@ -87,12 +110,13 @@ Parameters
87
110
88
111
The following parameters are available to control the script:
0 commit comments