diff --git a/Tools/msg/generate_msg_docs.py b/Tools/msg/generate_msg_docs.py index 379cbf04c3..e373bf2afd 100755 --- a/Tools/msg/generate_msg_docs.py +++ b/Tools/msg/generate_msg_docs.py @@ -36,14 +36,14 @@ class Error: if 'trailing_whitespace' == self.type: - if self.issueString.strip(): + if self.issueString.strip(): print(f"NOTE: Line has trailing whitespace ({self.message}: {self.linenumber}): {self.issueString}") else: print(f"NOTE: Line has trailing whitespace ({self.message}: {self.linenumber})") elif 'leading_whitespace_field_or_constant' == self.type: - print(f"NOTE: Whitespace before field or constant ({self.message}: {self.linenumber}): {self.issueString}") + print(f"NOTE: Whitespace before field or constant ({self.message}: {self.linenumber}): {self.issueString}") elif 'field_or_constant_has_multiple_whitepsace' == self.type: - print(f"NOTE: Field/constant has more than one sequential whitespace character ({self.message}: {self.linenumber}): {self.issueString}") + print(f"NOTE: Field/constant has more than one sequential whitespace character ({self.message}: {self.linenumber}): {self.issueString}") elif 'empty_start_line' == self.type: print(f"NOTE: Empty line at start of file ({self.message}: {self.linenumber})") elif 'internal_comment' == self.type: @@ -191,7 +191,7 @@ class CommandParam: if not "unknown_frame" in self.parent.errors: self.parent.errors["unknown_frame"] = [] self.parent.errors["unknown_frame"].append(error) - """ + """ else: print(f"WARNING: Unhandled metadata in message comment: {item}") # TODO - report errors for different kinds of metadata @@ -202,9 +202,9 @@ class CommandParam: if item == "-": unit = "" - + if unit and unit not in self.units: - self.units.append(unit) + self.units.append(unit) if unit not in ALLOWED_UNITS: invalid_units.add(unit) @@ -221,7 +221,7 @@ class CommandParam: print(f" paramText: {self.paramText}\n unit: {self.units}\n enums: {self.enums}\n lineNumber: {self.lineNumber}\n range: {self.range}\n minValue: {self.minValue}\n maxValue: {self.maxValue}\n invalidValue: {self.invalidValue}\n frameValue: {self.frameValue}\n parent: {self.parent}\n ") - + class CommandConstant: """ Represents a constant that is a command definition. @@ -252,9 +252,9 @@ class CommandConstant: if not self.comment: # This is an bug for a command #print(f"Debug WARNING: NO COMMENT in CommandConstant: {self.name}") ## TODO make into ERROR return - + # Parse command comment to get the description and parameters. - # print(f"Debug CommandConstant: {self.comment}") + # print(f"Debug CommandConstant: {self.comment}") if not "|" in self.comment: # This is an error for a command constant error = Error("command_no_params_pipes", self.parent.filename, self.line_number, self.comment, self.name) @@ -263,7 +263,7 @@ class CommandConstant: self.parent.errors["command_no_params_pipes"] = [] self.parent.errors["command_no_params_pipes"].append(error) return - + # Split on pipes commandSplit = self.comment.split("|") if len(commandSplit) < 9: @@ -318,7 +318,7 @@ Param | Units | Range/Enum | Description output+=f"{i} | {", ".join(val.units)}|{', '.join(f"[{e}](#{e})" for e in val.enums)}{rangeVal} | {val.description}\n" else: - output+=f"{i} | | | ?\n" + output+=f"{i} | | | ?\n" output+=f"\n" return output @@ -419,7 +419,7 @@ class MessageField: class UORBMessage: """ Represents a whole message, including fields, enums, commands, constants. - The parser function delegates the parsing of each part of the message to + The parser function delegates the parsing of each part of the message to more appropriate classes, once the specific type of line has been identified. """ @@ -511,11 +511,11 @@ pageClass: is-wide-page markdown += "--- | --- | --- |---\n" for name, command in self.commandConstants.items(): description = f" {command.comment} " if enum.comment else " " - markdown += f' {name} | `{command.type}` | {command.value} |{description}\n' + markdown += f' {name} | `{command.type}` | {command.value} |{description}\n' """ for commandConstant in self.commandConstants.values(): #print(commandConstant) - markdown += commandConstant.markdown_out() + markdown += commandConstant.markdown_out() # Generate enum docs if len(self.enums) > 0: @@ -529,7 +529,7 @@ pageClass: is-wide-page for enumValueName, enumValue in enum.enumValues.items(): description = f" {enumValue.comment} " if enumValue.comment else " " - markdown += f' {enumValueName} | `{enumValue.type}` | {enumValue.value} |{description}\n' + markdown += f' {enumValueName} | `{enumValue.type}` | {enumValue.value} |{description}\n' # Generate table for constants docs if len(self.constantFields) > 0: @@ -708,7 +708,7 @@ pageClass: is-wide-page if stripped_line.startswith("#"): # Its an internal comment stripped_line=stripped_line[1:].strip() - + if stripped_line: #print(f"{self.filename}: Internal comment: [{line_number}]\n {line}") error = Error("internal_comment", self.filename, line_number, line) @@ -723,7 +723,7 @@ pageClass: is-wide-page self.errors["internal_comment_empty"].append(error) #pass # Empty comment continue - + # Must be a field or a comment. self.handleField(line, line_number, parentMessage=self) diff --git a/docs/en/SUMMARY.md b/docs/en/SUMMARY.md index 1306bcb72c..18c4ec34ea 100644 --- a/docs/en/SUMMARY.md +++ b/docs/en/SUMMARY.md @@ -529,6 +529,8 @@ - [LongitudinalControlConfiguration](msg_docs/LongitudinalControlConfiguration.md) - [ManualControlSetpoint](msg_docs/ManualControlSetpoint.md) - [ModeCompleted](msg_docs/ModeCompleted.md) + - [RaptorInput](msg_docs/RaptorInput.md) + - [RaptorStatus](msg_docs/RaptorStatus.md) - [RegisterExtComponentReply](msg_docs/RegisterExtComponentReply.md) - [RegisterExtComponentRequest](msg_docs/RegisterExtComponentRequest.md) - [TrajectorySetpoint](msg_docs/TrajectorySetpoint.md) @@ -750,6 +752,7 @@ - [VehicleThrustSetpoint](msg_docs/VehicleThrustSetpoint.md) - [VehicleTorqueSetpoint](msg_docs/VehicleTorqueSetpoint.md) - [VelocityLimits](msg_docs/VelocityLimits.md) + - [Vtx](msg_docs/Vtx.md) - [WheelEncoders](msg_docs/WheelEncoders.md) - [Wind](msg_docs/Wind.md) - [YawEstimatorStatus](msg_docs/YawEstimatorStatus.md) @@ -763,8 +766,11 @@ - [RegisterExtComponentReplyV0](msg_docs/RegisterExtComponentReplyV0.md) - [RegisterExtComponentRequestV0](msg_docs/RegisterExtComponentRequestV0.md) - [VehicleAttitudeSetpointV0](msg_docs/VehicleAttitudeSetpointV0.md) + - [VehicleCommandAckV0](msg_docs/VehicleCommandAckV0.md) + - [VehicleGlobalPositionV0](msg_docs/VehicleGlobalPositionV0.md) - [VehicleLocalPositionV0](msg_docs/VehicleLocalPositionV0.md) - [VehicleStatusV0](msg_docs/VehicleStatusV0.md) + - [VehicleStatusV1](msg_docs/VehicleStatusV1.md) - [MAVLink Messaging](mavlink/index.md) - [Adding Messages](mavlink/adding_messages.md) - [Streaming Messages](mavlink/streaming_messages.md) diff --git a/docs/en/advanced_config/tuning_the_ecl_ekf.md b/docs/en/advanced_config/tuning_the_ecl_ekf.md index 6dc431532e..c59d2913f2 100644 --- a/docs/en/advanced_config/tuning_the_ecl_ekf.md +++ b/docs/en/advanced_config/tuning_the_ecl_ekf.md @@ -594,7 +594,7 @@ When this has been done, the performance metadata files can be processed to prov - Attitude output data is found in the [VehicleAttitude](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/VehicleAttitude.msg) message. - Local position output data is found in the [VehicleLocalPosition](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/VehicleLocalPosition.msg) message. - Global \(WGS-84\) output data is found in the [VehicleGlobalPosition](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/VehicleGlobalPosition.msg) message. -- Wind velocity output data is found in the [Wind.msg](https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg) message. +- Wind velocity output data is found in the [AirspeedWind.msg](https://github.com/PX4/PX4-Autopilot/blob/main/msg/AirspeedWind.msg) message. ### States diff --git a/docs/en/airframes/airframe_reference.md b/docs/en/airframes/airframe_reference.md index 2067c8f6a5..dc69aff871 100644 --- a/docs/en/airframes/airframe_reference.md +++ b/docs/en/airframes/airframe_reference.md @@ -402,7 +402,7 @@ div.frame_variant td, div.frame_variant th { Maintainer: Lorenz Meier <lorenz@px4.io>

SYS_AUTOSTART = 4050

- HolyBro QAV250 + HolyBro QAV250 Maintainer: Beat Kueng <beat-kueng@gmx.net>

SYS_AUTOSTART = 4052

@@ -604,7 +604,7 @@ div.frame_variant td, div.frame_variant th { Maintainer: John Doe <john@example.com>

SYS_AUTOSTART = 50000

- Aion Robotics R1 UGV + Aion Robotics R1 UGV Maintainer: John Doe <john@example.com>

SYS_AUTOSTART = 50001

diff --git a/docs/en/assembly/quick_start_cuav_v5_nano.md b/docs/en/assembly/quick_start_cuav_v5_nano.md index 0ccd8c5031..b41563ba50 100644 --- a/docs/en/assembly/quick_start_cuav_v5_nano.md +++ b/docs/en/assembly/quick_start_cuav_v5_nano.md @@ -33,7 +33,7 @@ We'll go through each of these in detail in the following sections. | DSM/SBUS/RSSI | Includes DSM, SBUS, RSSI signal input interface, DSM interface can be connected to DSM satellite receiver, SBUS interface to SBUS remote control receiver, RSSI for signal strength return module. | ::: info -For more interface information, please read [V5 nano Manual](http://manual.cuav.net/V5-nano.pdf). +For more interface information, please read [V5 nano Manual](https://manual.cuav.net/V5-nano.pdf). ::: ![quickstart](../../assets/flight_controller/cuav_v5_nano/connection/v5_nano_quickstart_03.png) @@ -128,6 +128,6 @@ Motors/servos are connected to the MAIN ports in the order specified for your ve - [Airframe buildlog using CUAV v5 nano on a DJI FlameWheel450](../frames_multicopter/dji_f450_cuav_5nano.md) - [CUAV V5 nano](../flight_controller/cuav_v5_nano.md) -- [V5 nano manual](http://manual.cuav.net/V5-nano.pdf) (CUAV) +- [V5 nano manual](https://manual.cuav.net/V5-nano.pdf) (CUAV) - [FMUv5 reference design pinout](https://docs.google.com/spreadsheets/d/1-n0__BYDedQrc_2NHqBenG1DNepAgnHpSGglke-QQwY/edit#gid=912976165) (CUAV) - [CUAV Github](https://github.com/cuav) (CUAV) diff --git a/docs/en/assembly/quick_start_cuav_v5_plus.md b/docs/en/assembly/quick_start_cuav_v5_plus.md index 6dfbbf4a57..66b1d8c0b5 100644 --- a/docs/en/assembly/quick_start_cuav_v5_plus.md +++ b/docs/en/assembly/quick_start_cuav_v5_plus.md @@ -33,7 +33,7 @@ We'll go through each of these in detail in the following sections. | DSM/SBUS/RSSI | Includes DSM, SBUS, RSSI signal input interface, DSM interface can be connected to DSM satellite receiver, SBUS interface to SBUS remote control receiver, RSSI for signal strength return module. | ::: info -For more interface information, please read [V5+ Manual](http://manual.cuav.net/V5-Plus.pdf). +For more interface information, please read [V5+ Manual](https://manual.cuav.net/V5-Plus.pdf). ::: ![V5+ AutoPilot](../../assets/flight_controller/cuav_v5_plus/connection/v5+_quickstart_02.png) @@ -122,12 +122,12 @@ Motors/servos are connected to the MAIN and AUX ports in the order specified for ## Pinouts -Download **V5+** pinouts from [here](http://manual.cuav.net/V5-Plus.pdf). +See [CUAV V5+ Manual](https://manual.cuav.net/V5-Plus.pdf). ## Further Information - [Airframe build-log using CUAV v5+ on a DJI FlameWheel450](../frames_multicopter/dji_f450_cuav_5plus.md) -- [CUAV V5+ Manual](http://manual.cuav.net/V5-Plus.pdf) (CUAV) +- [CUAV V5+ Manual](https://manual.cuav.net/V5-Plus.pdf) (CUAV) - [CUAV V5+ docs](https://doc.cuav.net/controller/v5-autopilot/en/v5+.html) (CUAV) - [FMUv5 reference design pinout](https://docs.google.com/spreadsheets/d/1-n0__BYDedQrc_2NHqBenG1DNepAgnHpSGglke-QQwY/edit#gid=912976165) (CUAV) - [CUAV Github](https://github.com/cuav) (CUAV) diff --git a/docs/en/companion_computer/video_streaming.md b/docs/en/companion_computer/video_streaming.md index b15437fabb..ec91b92aa5 100644 --- a/docs/en/companion_computer/video_streaming.md +++ b/docs/en/companion_computer/video_streaming.md @@ -20,7 +20,7 @@ For a Ubuntu companion, a minimal set might be: sudo apt install gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-gl -y ``` -For the full set you can mirror the QGC dependencies installed by [/tools/setup/install-dependencies-debian.sh](https://github.com/mavlink/qgroundcontrol/blob/master/tools/setup/install-dependencies-debian.sh). +For the full set you can mirror the QGC dependencies installed by [/tools/setup/install_dependencies.py](https://github.com/mavlink/qgroundcontrol/blob/master/tools/setup/install_dependencies.py). At time of writing this is: ```sh diff --git a/docs/en/complete_vehicles_mc/px4_vision_kit.md b/docs/en/complete_vehicles_mc/px4_vision_kit.md index f7267a0888..9c2e43991c 100644 --- a/docs/en/complete_vehicles_mc/px4_vision_kit.md +++ b/docs/en/complete_vehicles_mc/px4_vision_kit.md @@ -381,7 +381,7 @@ The carrier board pinouts and other information are in the [downloads section](h ## Other Development Resources - [_UP Core_ Wiki](https://github.com/up-board/up-community/wiki/Ubuntu) - _Up Core_ companion computer technical information -- [Occipital Developer Forum](https://structure.io/structure-sdk) - _Structure Core_ camera information +- [Occipital Developer Forum](https://structure.io/structure-sdk/) - _Structure Core_ camera information - [Pixhawk 4 Overview](../flight_controller/pixhawk4.md) - [Pixhawk 6C Overview](../flight_controller/pixhawk6c.md) diff --git a/docs/en/contribute/git_examples.md b/docs/en/contribute/git_examples.md index d7bc91ad4d..bedd5f07b5 100644 --- a/docs/en/contribute/git_examples.md +++ b/docs/en/contribute/git_examples.md @@ -45,7 +45,7 @@ Adding a feature to PX4 follows a defined workflow. In order to share your contr git add ``` - If you prefer having a GUI to add your files see [Gitk](https://git-scm.com/book/en/v2/Git-in-Other-Environments-Graphical-Interfaces) or [`git add -p`](https://nuclearsquid.com/writings/git-add/). + If you prefer having a GUI to add your files see [Gitk](https://git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces) or [`git add -p`](https://nuclearsquid.com/writings/git-add/). - Commit the added files with a meaningful message explaining your changes diff --git a/docs/en/dev_setup/dev_env_windows_vm.md b/docs/en/dev_setup/dev_env_windows_vm.md index 2b9f7b1c2d..79e73b34e3 100644 --- a/docs/en/dev_setup/dev_env_windows_vm.md +++ b/docs/en/dev_setup/dev_env_windows_vm.md @@ -29,11 +29,11 @@ There is also an incomplete section for VirtualBox at the end (we'd welcome expa VMWare performance is acceptable for basic usage (building Firmware) but not for running ROS or Gazebo Classic. -1. Download [VMWare Player Freeware](https://www.vmware.com/info/workstation-player/evaluation) +1. Download [VMWare Workstation Pro](https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion) (the free player has been discontinued) 1. Install it on your Windows system 1. Download the desired version of [Ubuntu Desktop ISO Image](https://ubuntu.com/download/desktop). (see [Linux Instructions Page](../dev_setup/dev_env_linux.md) for recommended Ubuntu version). -1. Open _VMWare Player_. +1. Open _Workstation Pro_. 1. Enable 3D acceleration in the VM's settings: **VM > Settings > Hardware > Display > Accelerate 3D graphics** ::: info diff --git a/docs/en/flight_controller/cuav_nora.md b/docs/en/flight_controller/cuav_nora.md index 3cea14cd39..8c9fee2791 100644 --- a/docs/en/flight_controller/cuav_nora.md +++ b/docs/en/flight_controller/cuav_nora.md @@ -5,7 +5,7 @@ PX4 does not manufacture this (or any) autopilot. Contact the [manufacturer](https://www.cuav.net) for hardware support or compliance issues. ::: -The [Nora](https://doc.cuav.net/flight-controller/x7/en/nora.html)® flight controller is a high-performance autopilot. +The [Nora](https://doc.cuav.net/controller/x7/en/nora-plus.html)® flight controller is a high-performance autopilot. It is an ideal choice for industrial drones and large-scale heavy-duty drones. It is mainly supplied to commercial manufacturers. @@ -31,7 +31,7 @@ This flight controller is [manufacturer supported](../flight_controller/autopilo - High performance processor ::: tip -The manufacturer [CUAV Docs](https://doc.cuav.net/flight-controller/x7/en/nora.html) are the canonical reference for Nora. +The manufacturer [CUAV Docs](https://doc.cuav.net/controller/x7/en/nora-plus.html) are the canonical reference for Nora. They should be used by preference as they contain the most complete and up to date information. ::: @@ -79,7 +79,7 @@ The remaining 6 PWM ports are still being adapted (so it is not compatible with ## Connections (Wiring) -[CUAV nora Wiring Quickstart](https://doc.cuav.net/flight-controller/x7/en/quick-start/quick-start-nora.html) +[CUAV nora Wiring Quickstart](https://doc.cuav.net/controller/x7/en/quick-start/quick-start-nora.html) ## Size and Pinouts @@ -167,6 +167,6 @@ The complete set of supported configurations can be seen in the [Airframes Refer ## Further info -- [Quick start](https://doc.cuav.net/flight-controller/x7/en/quick-start/quick-start-nora.html) +- [Quick start](https://doc.cuav.net/controller/x7/en/quick-start/quick-start-nora.html) - [CUAV docs](https://doc.cuav.net/) - [nora schematic](https://github.com/cuav/hardware/tree/master/X7_Autopilot) diff --git a/docs/en/flight_controller/cuav_x7.md b/docs/en/flight_controller/cuav_x7.md index 7c35742bd8..0d65fbda8e 100644 --- a/docs/en/flight_controller/cuav_x7.md +++ b/docs/en/flight_controller/cuav_x7.md @@ -39,7 +39,7 @@ This flight controller is [manufacturer supported](../flight_controller/autopilo - High performance processor ::: tip -The manufacturer [CUAV Docs](https://doc.cuav.net/flight-controller/x7/en/) are the canonical reference for the X7. +The manufacturer [CUAV Docs](https://doc.cuav.net/controller/x7/en/) are the canonical reference for the X7. They should be used by preference as they contain the most complete and up to date information. ::: diff --git a/docs/en/flight_controller/modalai_fc_v1.md b/docs/en/flight_controller/modalai_fc_v1.md index 1a0027718a..2f91d80dd1 100644 --- a/docs/en/flight_controller/modalai_fc_v1.md +++ b/docs/en/flight_controller/modalai_fc_v1.md @@ -116,7 +116,7 @@ Detailed information about the pinouts can be found [here](https://docs.modalai. ### User Guide -The full user guide is available [here](https://docs.modalai.com/flight-core-manual/). +The full user guide is available [here](https://docs.modalai.com/flight-core/). ### How to Build diff --git a/docs/en/flight_controller/modalai_voxl_2.md b/docs/en/flight_controller/modalai_voxl_2.md index 03e8836da9..fa61b164a7 100644 --- a/docs/en/flight_controller/modalai_voxl_2.md +++ b/docs/en/flight_controller/modalai_voxl_2.md @@ -62,7 +62,7 @@ ModalAI is actively maintaining a [branched PX4 version](https://github.com/moda As VOXL 2 runs Ubuntu, the production releases of PX4 for VOXL 2 are distributed through [apt package management](https://docs.modalai.com/configure-pkg-manager/) and the [VOXL SDK](https://docs.modalai.com/voxl-sdk/). -More information about the firmware can be found [here](https://docs.modalai.com/voxl2-px4-developer-guide/). +More information about the firmware can be found [here](https://docs.modalai.com/voxl-px4-developer-guide/). ### main branch @@ -84,7 +84,7 @@ This board is supported in QGroundControl 4.0 and later. ## Quick Start -Quickstarts from the vendor are located [here](https://docs.modalai.com/voxl2-quickstarts/). +Quickstarts from the vendor are located [here](https://docs.modalai.com/voxl-2-hardware-quickstart/). ### VOXL SDK @@ -127,7 +127,7 @@ The PX4 developer guide for VOXL 2 is available [here](https://docs.modalai.com/ ### How to Build -See the [VOXL PX4 Build Guide](https://docs.modalai.com/voxl2-px4-build-guide/) on how to build. +See the [VOXL PX4 Build Guide](https://docs.modalai.com/voxl-px4-dev-build-guide/) on how to build. ## Support diff --git a/docs/en/flight_controller/modalai_voxl_flight.md b/docs/en/flight_controller/modalai_voxl_flight.md index 6eff12b621..749201699f 100644 --- a/docs/en/flight_controller/modalai_voxl_flight.md +++ b/docs/en/flight_controller/modalai_voxl_flight.md @@ -30,25 +30,25 @@ This flight controller is [manufacturer supported](../flight_controller/autopilo ### Companion Computer -| Feature | Details | -| :-------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Base Operation System | Linux Yocto Jethro with 3.18 kernel. Additional Linux Operating Systems can be used by running Docker on VOXL, details [here](https://docs.modalai.com/docker-on-voxl/) | -| Compute | Qualcomm Snapdragon 821 w/ 4GB LPDDR4 1866MHz, Snapdragon 821 [Datasheet](https://developer.qualcomm.com/download/sd820e/qualcomm-snapdragon-820e-processor-apq8096sge-device-specification.pdf), [Docs](https://developer.qualcomm.com/hardware/apq-8096sg/tools) | -| CPU | Quad-core CPU up to 2.15GHz | -| GPU | Adreno 530 GPU at 624MHz | -| Compute DSP | Hexagon compute DSP (cDSP) 825MHz | -| Sensor DSP | Hexagon sensor DSP (sDSP) 700MHz | -| Video | 4k30 Video Capture h.264/5 w/ 720p FPV | -| Camera Interfaces | Support for MIPI-CSI2, USB UVC, HDMI | -| Wi-Fi | Pre-certified Wi-Fi module [QCNFA324 FCC ID:PPD-QCNFA324](https://fccid.io/PPD-QCNFA324), QCA6174A modem, 802.11ac 2x2 Dual-band, Bluetooth 4.2 (dual-mode) | -| 4G LTE | [Optional add-on module](https://www.modalai.com/collections/voxl-add-ons/products/voxl-lte) | -| Microhard pDDL | [Optional add-on module](https://www.modalai.com/collections/voxl-add-ons/products/voxl-microhard-modem-usb-hub) | -| GNSS | WGR7640 10Hz | -| I/O | 1x USB3.0 OTG (ADB port), 1x USB2.0 (expansion port), 2x UART, 3x I2C, additional GPIO and SPI can be configured | -| Storage | 32GB (UFS 2.0), Micro SD Card | -| Software | Docker, OpenCV 2.4.11, 3.4.6, 4.2, ROS Indigo, Qualcomm Machine Vision SDK, see [GitLab](https://gitlab.com/voxl-public) for lots of open source examples! | -| IMUs | ICM-42688 (SPI10), ICM-20948 (SPI1) | -| Barometer | BMP280 | +| Feature | Details | +| :-------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Base Operation System | Linux Yocto Jethro with 3.18 kernel. Additional Linux Operating Systems can be used by running Docker on VOXL, details [here](https://docs.modalai.com/docker-on-voxl/) | +| Compute | Qualcomm Snapdragon 821 w/ 4GB LPDDR4 1866MHz, Snapdragon 821 [Datasheet](https://manuals.plus/m/1409295179a6c50b5baa1ae6a7113ff67112341756058e9d0466bdb832800a60) | +| CPU | Quad-core CPU up to 2.15GHz | +| GPU | Adreno 530 GPU at 624MHz | +| Compute DSP | Hexagon compute DSP (cDSP) 825MHz | +| Sensor DSP | Hexagon sensor DSP (sDSP) 700MHz | +| Video | 4k30 Video Capture h.264/5 w/ 720p FPV | +| Camera Interfaces | Support for MIPI-CSI2, USB UVC, HDMI | +| Wi-Fi | Pre-certified Wi-Fi module [QCNFA324 FCC ID:PPD-QCNFA324](https://fccid.io/PPD-QCNFA324), QCA6174A modem, 802.11ac 2x2 Dual-band, Bluetooth 4.2 (dual-mode) | +| 4G LTE | [Optional add-on module](https://www.modalai.com/collections/voxl-add-ons/products/voxl-lte) | +| Microhard pDDL | [Optional add-on module](https://www.modalai.com/collections/voxl-add-ons/products/voxl-microhard-modem-usb-hub) | +| GNSS | WGR7640 10Hz | +| I/O | 1x USB3.0 OTG (ADB port), 1x USB2.0 (expansion port), 2x UART, 3x I2C, additional GPIO and SPI can be configured | +| Storage | 32GB (UFS 2.0), Micro SD Card | +| Software | Docker, OpenCV 2.4.11, 3.4.6, 4.2, ROS Indigo, Qualcomm Machine Vision SDK, see [GitLab](https://gitlab.com/voxl-public) for lots of open source examples! | +| IMUs | ICM-42688 (SPI10), ICM-20948 (SPI1) | +| Barometer | BMP280 | ### Flight Controller @@ -118,8 +118,8 @@ A quickstart from the vendor is located [here](https://docs.modalai.com/voxl-fli ### voxl-vision-px4 -The VOXL Flight runs [voxl-vision-px4](https://gitlab.com/voxl-public/modal-pipe-architecture/voxl-vision-px4) on the companion computer portion of the hardware serving as a sort of MAVLink proxy. -For details, the source code is available [here](https://gitlab.com/voxl-public/modal-pipe-architecture/voxl-vision-px4) +The VOXL Flight runs [voxl-vision-px4](https://gitlab.com/voxl-public/voxl-sdk/services/voxl-vision-hub) on the companion computer portion of the hardware serving as a sort of MAVLink proxy. +For details, the source code is available [here](https://gitlab.com/voxl-public/voxl-sdk/services/voxl-vision-hub) ### Connectors @@ -170,7 +170,7 @@ _Note: 1000 Series connectors accessible from the STM32/PX4_ ### User Guide -The full user guide is available [here](https://docs.modalai.com/voxl-flight-quickstart). +The full user guide is available [here](https://docs.modalai.com/voxl-flight-quickstart/). ### How to Build diff --git a/docs/en/flight_controller/nxp_rddrone_fmuk66.md b/docs/en/flight_controller/nxp_rddrone_fmuk66.md index 8146737282..d9cbb667e4 100644 --- a/docs/en/flight_controller/nxp_rddrone_fmuk66.md +++ b/docs/en/flight_controller/nxp_rddrone_fmuk66.md @@ -45,21 +45,21 @@ Telemetry radios ([HGD-TELEM433](https://www.nxp.com/part/HGD-TELEM433) and [HGD ![RDDRONE-FMUK66 FMU Kit](../../assets/flight_controller/nxp_rddrone_fmuk66/rddrone_fmu66_kit_img_contents.jpg) -A "Lite" version RDDRONE-FMUK66L is also available which does not include the power module, GPS, Jlink or USB-TTL-3V3 console cable or SDCard.[Scroll down to see FMUK66L in the buy section of the FMUK66 buy page](https://www.nxp.com/design/design-center/development-boards-and-designs/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66#buy) +A "Lite" version RDDRONE-FMUK66L is also available which does not include the power module, GPS, Jlink or USB-TTL-3V3 console cable or SDCard.[Scroll down to see FMUK66L in the buy section of the FMUK66 buy page](https://www.nxp.com/products/no-longer-manufactured/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66#buy) -Additional information can be found in the [Technical Data Sheet](https://www.nxp.com/design/design-center/development-boards-and-designs/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66). +Additional information can be found in the [Technical Data Sheet](https://www.nxp.com/products/no-longer-manufactured/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66). ## Where to Buy {#store} **RDDRONE-FMUK66** reference design kit may be purchased direct from NXP or from any of NXP's authorised worldwide network of [electronics distributors](https://www.nxp.com/support/sample-and-buy/distributor-network:DISTRIBUTORS). -- [Purchase Link](https://www.nxp.com/design/design-center/development-boards-and-designs/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66#buy) (www.nxp.com) +- [Purchase Link](https://www.nxp.com/products/no-longer-manufactured/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66#buy) (www.nxp.com) - Telemetry radios are purchased separately depending on frequency band: - [HGD-TELEM433](https://www.nxp.com/part/HGD-TELEM433) - [HGD-TELEM915](https://www.nxp.com/part/HGD-TELEM915) ::: info -_RDDRONE-FMUK66_ FMU is also included in the complete HoverGames drone kit: [KIT-HGDRONEK66](https://www.nxp.com/design/design-center/development-boards-and-designs/nxp-hovergames-drone-kit-including-flight-controller-and-peripherals:KIT-HGDRONEK66#buy) +_RDDRONE-FMUK66_ FMU is also included in the complete HoverGames drone kit: [KIT-HGDRONEK66](https://www.nxp.com/products/no-longer-manufactured/nxp-hovergames-drone-kit-including-flight-controller-and-peripherals:KIT-HGDRONEK66#buy) ::: diff --git a/docs/en/gps_compass/rtk_gps_cuav_c-rtk-9ps.md b/docs/en/gps_compass/rtk_gps_cuav_c-rtk-9ps.md index c73553ed94..78d1345802 100644 --- a/docs/en/gps_compass/rtk_gps_cuav_c-rtk-9ps.md +++ b/docs/en/gps_compass/rtk_gps_cuav_c-rtk-9ps.md @@ -1,6 +1,6 @@ # CUAV C-RTK 9Ps -The CUAV [C-RTK 9Ps](https://www.cuav.net/en/c_rtk_9ps/) is a multi-satellite, multi-band, centimeter-level, RTK GNSS system. +The CUAV [C-RTK 9Ps](https://www.cuav.net/en/c-rtk-9ps-en/) is a multi-satellite, multi-band, centimeter-level, RTK GNSS system. The module simultaneously receives GPS, GLONASS, Galileo and Beidou satellite signals, enabling faster positioning and higher accuracy. It also supports [RTK GPS Heading](../gps_compass/u-blox_f9p_heading.md) using dual modules. @@ -12,7 +12,7 @@ This is ideal for survey drones, agricultural drones and other application scena ## Where to Buy -[cuav Store](https://store.cuav.net/index.php?route=product/product&path=61&product_id=187) +[cuav Store](https://store.cuav.net/?route=product%2Fproduct&path=61&product_id=187) ## Specification diff --git a/docs/en/gps_compass/rtk_gps_cuav_c-rtk.md b/docs/en/gps_compass/rtk_gps_cuav_c-rtk.md index 7cfc9b5c31..0fb1f4d222 100644 --- a/docs/en/gps_compass/rtk_gps_cuav_c-rtk.md +++ b/docs/en/gps_compass/rtk_gps_cuav_c-rtk.md @@ -1,6 +1,6 @@ # CUAV C-RTK -The [CUAV C-RTK GPS receiver](https://www.cuav.net/en/c_rtk_9ps/) is an [RTK GPS module](../gps_compass/rtk_gps.md) for the mass market. +The [CUAV C-RTK GPS receiver](https://www.cuav.net/en/c-rtk-9ps-en/) is an [RTK GPS module](../gps_compass/rtk_gps.md) for the mass market. A complete RTK system consists of at least two C-RTK modules \(one for the base station and the others for the aircraft\). Using RTK, PX4 can get its position with centimetre-level accuracy, which is much more accurate than can be provided by a normal GPS. @@ -8,7 +8,7 @@ A complete RTK system consists of at least two C-RTK modules \(one for the base ## Where to Buy - [cuav taobao](https://item.taobao.com/item.htm?id=565380634341&spm=2014.21600712.0.0) -- [cuav aliexpress](https://www.aliexpress.com/store/product/CUAV-NEW-Flight-Controller-GPS-C-RTK-differential-positioning-navigation-module-GPS-for-PIX4-Pixhawk-pixhack/3257035_32853894248.html?spm=2114.12010608.0.0.75592fadQKPPEn) +- [cuav aliexpress](https://www.aliexpress.com/item/32853894248.html?spm=2114.12010608.0.0.75592fadQKPPEn) ## Configuration diff --git a/docs/en/gps_compass/rtk_gps_cuav_c-rtk2.md b/docs/en/gps_compass/rtk_gps_cuav_c-rtk2.md index 9a75f479d0..bb8c4630e3 100644 --- a/docs/en/gps_compass/rtk_gps_cuav_c-rtk2.md +++ b/docs/en/gps_compass/rtk_gps_cuav_c-rtk2.md @@ -1,6 +1,6 @@ # CUAV C-RTK2 GNSS Module (RTK/PPK) -The [CUAV C-RTK2 receiver](https://www.cuav.net/en/c_rtk_9ps/) is a high-performance PPK/RTK positioning module created by CUAV for professional applications such as drone aerial surveying and mapping. +The [CUAV C-RTK2 receiver](https://www.cuav.net/en/c-rtk-9ps-en/) is a high-performance PPK/RTK positioning module created by CUAV for professional applications such as drone aerial surveying and mapping. It has a high-precision IMU and positioning module, and can reduce the number of required [control points](https://www.youtube.com/watch?v=3k7v5aXyuKQ) by more than to 80%. In addition to surveying/mapping, it is suitable for many other use-cases, including: agricultural plant protection and drone swarms. @@ -18,7 +18,7 @@ In addition to surveying/mapping, it is suitable for many other use-cases, inclu ## Where to Buy -- [CUAV Store](https://store.cuav.net/index.php?route=product/product&product_id=159) +- [CUAV Store](https://store.cuav.net/?route=product%2Fproduct&product_id=159) - [CUAV aliexpress](https://pt.aliexpress.com/item/1005003754165772.html?spm=a2g0o.store_pc_groupList.8148356.13.2f893550i0NE4o) # Quick Summary diff --git a/docs/en/gps_compass/rtk_gps_datagnss_nano_hrtk.md b/docs/en/gps_compass/rtk_gps_datagnss_nano_hrtk.md index daf50ca963..ab8f49c6ca 100644 --- a/docs/en/gps_compass/rtk_gps_datagnss_nano_hrtk.md +++ b/docs/en/gps_compass/rtk_gps_datagnss_nano_hrtk.md @@ -90,7 +90,7 @@ Note that for the base we recommend the [NANO RTK Receiver](https://www.datagnss ![DATAGNSS NANO RTK Receiver with case](../../assets/hardware/gps/datagnss_gem1305/nano_rtk_with_case.png) -See to [How to setup Base station](https://wiki.datagnss.com/index.php/GEM1305-autopilot#Base_station_setup) for information on how to configure the module for use as a base station (not including step 6 and later, for which you would QGroundControl instead of Mission Planner). +See to [How to setup Base station](https://docs.datagnss.com/#Base_station_setup) for information on how to configure the module for use as a base station (not including step 6 and later, for which you would QGroundControl instead of Mission Planner). ### Rover Setup (PX4) @@ -111,13 +111,12 @@ GPS and RTK configuration on PX4 via _QGroundControl_ is plug and play (see [RTK ## Resources -- [NANO RTK Receiver 2D drawing file](https://wiki.datagnss.com/images/3/31/EVK-DG-1206_V.2.0.pdf) - [NANO HRTK Receiver Wiki](https://docs.datagnss.com/gnss/rtk_receiver/NANO/nano-helix-rtk/) (DATAGNSS WiKi) - [HED-10L Heading RTK Receiver](https://docs.datagnss.com/gnss/rtk_receiver/HED-10L/) ## More information -- [NANO RTK Receiver](https://docs.datagnss.com/gnss/rtk_receiver/NANO/nano-rtk-receiver) +- [NANO RTK Receiver](https://docs.datagnss.com/gnss/rtk_receiver/NANO/nano-rtk-receiver/) - [HELIX Antenna for RTK](https://www.datagnss.com/collections/rtk-antenna/products/smart-helix-antenna) - [RTK Antenna AGR6302G](https://www.datagnss.com/collections/rtk-antenna/products/antenna-agr6302g) - [AT400 RTK Antenna](https://www.datagnss.com/collections/rtk-antenna/products/at400-multi-band-antenna-for-rtk) diff --git a/docs/en/gps_compass/rtk_gps_gem1305.md b/docs/en/gps_compass/rtk_gps_gem1305.md index 1625484731..4757694dd0 100644 --- a/docs/en/gps_compass/rtk_gps_gem1305.md +++ b/docs/en/gps_compass/rtk_gps_gem1305.md @@ -93,7 +93,7 @@ Note that for the base we recommend the [NANO RTK Receiver](https://www.datagnss DATAGNSS NANO RTK Receiver -See to [How to setup Base station](https://wiki.datagnss.com/index.php/GEM1305-autopilot#Base_station_setup) for information on how to configure the module for use as a base station (not including step 6 and later, for which you would QGroundControl instead of Mission Planner). +See to [How to setup Base station](https://docs.datagnss.com/#Base_station_setup) for information on how to configure the module for use as a base station (not including step 6 and later, for which you would QGroundControl instead of Mission Planner). ### Rover Setup (PX4) @@ -115,14 +115,13 @@ GPS and RTK configuration on PX4 via _QGroundControl_ is plug and play (see [RTK ## Resources -- [NANO RTK Receiver 2D drawing file](https://wiki.datagnss.com/images/3/31/EVK-DG-1206_V.2.0.pdf) - [GEM1305 Wiki](https://docs.datagnss.com/gnss/rtk_receiver/GEM1305/) (DATAGNSS WiKi) - [HED-10L Heading RTK Receiver](https://docs.datagnss.com/gnss/rtk_receiver/HED-10L/) - [NANO HRTK Receiver](https://docs.datagnss.com/gnss/rtk_receiver/NANO/nano-helix-rtk/) ## More information -- [NANO RTK Receiver](https://www.datagnss.com/collections/evk/products/tau951m-1312-tiny-evk) +- [NANO RTK Receiver](https://www.datagnss.com/products/tau951m-1312-tiny-evk) - [HELIX Antenna for RTK](https://www.datagnss.com/collections/rtk-antenna/products/smart-helix-antenna) - [RTK Antenna AGR6302G](https://www.datagnss.com/collections/rtk-antenna/products/antenna-agr6302g) - [AT400 RTK Antenna](https://www.datagnss.com/collections/rtk-antenna/products/at400-multi-band-antenna-for-rtk) diff --git a/docs/en/gps_compass/rtk_gps_holybro_unicore_um982.md b/docs/en/gps_compass/rtk_gps_holybro_unicore_um982.md index 8d5b155e1a..09848e3b3e 100644 --- a/docs/en/gps_compass/rtk_gps_holybro_unicore_um982.md +++ b/docs/en/gps_compass/rtk_gps_holybro_unicore_um982.md @@ -1,10 +1,10 @@ # Holybro H-RTK Unicore UM982 GPS -The [Holybro H-RTK Unicore UM982 GPS](https://holybro.com/products/h-rtk-um982) is an multi-band high-precision [RTK GNSS System](../gps_compass/rtk_gps.md) launched by Holybro. +The [Holybro H-RTK Unicore UM982 GPS](https://holybro.com/products/h-rtk-unicore-um982) is an multi-band high-precision [RTK GNSS System](../gps_compass/rtk_gps.md) launched by Holybro. ![HB-pmw3901-1](../../assets/hardware/gps/holybro-unicore-um982/holybro-unicore-um982-1.jpg) -This module is based on the [Unicore UM982 Chip](https://en.unicorecomm.com/products/detail/24), which supports RTK positioning and dual-antenna heading calculation. +This module is based on the [Unicore UM982 Chip](https://en.unicore.com/products/dual-antenna-gnss-um982/), which supports RTK positioning and dual-antenna heading calculation. This means that it can generate a moving baseline headline/yaw determinations for autopilots with just one GPS module and dual antennas - a magnetometer is not needed. Unlike when using a module such as the U-blox F9P, where you would need [two U-blox F9P modules to compute a heading angle](../gps_compass/u-blox_f9p_heading.md), with the Unicore UM982 GPS, you only need one GPS module! @@ -20,7 +20,7 @@ Additional technical information can be found at [Holybro Technical Documentatio ## Where to Buy -- [Holybro Website](https://holybro.com/products/h-rtk-um982) +- [Holybro Website](https://holybro.com/products/h-rtk-unicore-um982) ## Wiring diff --git a/docs/en/gps_compass/u-blox_f9p_heading.md b/docs/en/gps_compass/u-blox_f9p_heading.md index 586508d611..7e7f1dc97e 100644 --- a/docs/en/gps_compass/u-blox_f9p_heading.md +++ b/docs/en/gps_compass/u-blox_f9p_heading.md @@ -10,7 +10,7 @@ This feature works on F9P devices that support CAN or expose the GPS UART2 port. The following devices are supported: - [ARK RTK GPS](https://arkelectron.com/product/ark-rtk-gps/) (arkelectron.com) -- [SparkFun GPS-RTK2 Board - ZED-F9P](https://www.sparkfun.com/products/15136) (www.sparkfun.com) +- [SparkFun GPS-RTK2 Board - ZED-F9P](https://www.sparkfun.com/sparkfun-gps-rtk2-board-zed-f9p-qwiic-gps-15136.html) (www.sparkfun.com) - [SIRIUS RTK GNSS ROVER (F9P)](https://store-drotek.com/911-sirius-rtk-gnss-rover-f9p.html) (store-drotek.com) - [mRo u-blox ZED-F9 RTK L1/L2 GPS](https://store.mrobotics.io/product-p/m10020d.htm) (store.mrobotics.io) - [Holybro H-RTK F9P Helical or Base](https://holybro.com/products/h-rtk-f9p-gnss-series) (Holybro Store) diff --git a/docs/en/hardware/board_support_guide.md b/docs/en/hardware/board_support_guide.md index dd9722e805..24e12c7782 100644 --- a/docs/en/hardware/board_support_guide.md +++ b/docs/en/hardware/board_support_guide.md @@ -93,7 +93,7 @@ _New_ experimental boards are allocated [VER and REV IDs](#ver_rev_id) based on This category includes all boards that aren't supported by the PX4 project or a manufacturer, and that fall outside the"experimental" support. - Board is somewhat compatible on paper with something we already support, and it would take minimal effort to raise it to "experimental", but neither the dev-team or the manufacturer are currently pursuing this -- Manufacturer/Owner of hardware violates our [Code of Conduct](https://discuss.px4.io/t/code-of-conduct/13655) +- Manufacturer/Owner of hardware violates our [Code of Conduct](https://discuss.px4.io/t/px4-community-code-of-conduct/13655) - Closed source, where any of the necessary tools/libs/drivers/etc needed to add support for a board is deemed incompatible due to licensing restrictions - Board doesn't meet minimum requirements outlined in the General requirements diff --git a/docs/en/log/flight_log_analysis.md b/docs/en/log/flight_log_analysis.md index 88073f60c2..978ab09e60 100644 --- a/docs/en/log/flight_log_analysis.md +++ b/docs/en/log/flight_log_analysis.md @@ -156,7 +156,7 @@ Key features: ### PX4Tools [PX4Tools](https://github.com/dronecrew/px4tools) is a log analysis toolbox for the PX4 autopilot written in Python. -The recommended installation procedure is to use [anaconda3](https://conda.io/docs/index.html). See [px4tools github page](https://github.com/dronecrew/px4tools) for details. +The recommended installation procedure is to use [anaconda3](https://docs.conda.io/docs/index.html). See [px4tools github page](https://github.com/dronecrew/px4tools) for details. Key features: diff --git a/docs/en/mavlink/index.md b/docs/en/mavlink/index.md index fd364c33a2..887bee66f5 100644 --- a/docs/en/mavlink/index.md +++ b/docs/en/mavlink/index.md @@ -77,7 +77,7 @@ You will need to work with the [MAVLink team](https://mavlink.io/en/contributing ::: PX4 includes the [mavlink/mavlink](https://github.com/mavlink/mavlink) repo as a submodule under [/src/modules/mavlink](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/mavlink). -This contains XML definition files in [/mavlink/messages/1.0/](https://github.com/mavlink/mavlink/blob/master/message_definitions/v1.0/). +This contains XML definition files in [/mavlink/messages/1.0/](https://github.com/mavlink/mavlink/tree/master/message_definitions/v1.0). The build toolchain generates the MAVLink 2 C header files at build time. The XML file for which headers files are generated may be defined in the [PX4 kconfig board configuration](../hardware/porting_guide_config.md#px4-board-configuration-kconfig) on a per-board basis, using the variable `CONFIG_MAVLINK_DIALECT`: diff --git a/docs/en/middleware/uorb.md b/docs/en/middleware/uorb.md index 401f3329b8..5c29c36665 100644 --- a/docs/en/middleware/uorb.md +++ b/docs/en/middleware/uorb.md @@ -145,8 +145,8 @@ Versioned messages include an additional field `uint32 MESSAGE_VERSION = x`, whe Versioned and non-versioned messages are separated in the file system: - Non-versioned topic message files and [server service](../ros2/user_guide.md#px4-ros-2-service-servers) message files remain in the [`msg/`](https://github.com/PX4/PX4-Autopilot/tree/main/msg) and [`srv/`](https://github.com/PX4/PX4-Autopilot/tree/main/srv) directories, respectively. -- The current (highest) version of message files are located in the `versioned` subfolders ([`msg/versioned`](https://github.com/PX4/PX4-Autopilot/tree/main/msg/versioned) and [`srv/versioned`](https://github.com/PX4/PX4-Autopilot/tree/main/srv/versioned)). -- Older versions of messages are stored in nested `msg/px4_msgs_old/` subfolders ([`msg/px4_msgs_old/msg/`](https://github.com/PX4/PX4-Autopilot/tree/main/msg/px4_msgs_old/msg) and [`msg/px4_msgs_old/srv/`](https://github.com/PX4/PX4-Autopilot/tree/main/msg/px4_msgs_old/srv)). +- The current (highest) version of message files are located in the `versioned` subfolders ([`msg/versioned`](https://github.com/PX4/PX4-Autopilot/tree/main/msg/versioned) and [`srv/versioned`](https://github.com/PX4/PX4-Autopilot/tree/main/msg/versioned)). +- Older versions of messages are stored in nested `msg/px4_msgs_old/` subfolders ([`msg/px4_msgs_old/msg/`](https://github.com/PX4/PX4-Autopilot/tree/main/msg/px4_msgs_old/msg) and [`msg/px4_msgs_old/srv/`](https://github.com/PX4/PX4-Autopilot/tree/main/msg/px4_msgs_old)). The files are also renamed with a suffix to indicate their version number. ::: tip diff --git a/docs/en/modules/modules_driver_ins.md b/docs/en/modules/modules_driver_ins.md index 844aa645bb..b5e8a1f883 100644 --- a/docs/en/modules/modules_driver_ins.md +++ b/docs/en/modules/modules_driver_ins.md @@ -9,7 +9,7 @@ Source: [drivers/ins/microstrain](https://github.com/PX4/PX4-Autopilot/tree/main MicroStrain by HBK Inertial Sensor Driver. Currently supports the following sensors: --[CV7-AR](https://www.hbkworld.com/en/products/transducers/inertial-sensors/vertical-reference-units--vru-/3dm-cv7-ar) -[CV7-AHRS](https://www.hbkworld.com/en/products/transducers/inertial-sensors/attitude-and-heading-reference-systems--ahrs-/3dm-cv7-ahrs) -[CV7-INS](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-ins) -[CV7-GNSS/INS](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-gnss-ins) +-[CV7-AR](https://www.hbkworld.com/en/products/transducers/inertial-sensors/vertical-reference/3dm-cv7-ar) -[CV7-AHRS](https://www.hbkworld.com/en/products/transducers/inertial-sensors/attitude-and-heading-reference-systems--ahrs-/3dm-cv7-ahrs) -[CV7-INS](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-ins) -[CV7-GNSS/INS](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-gnss-ins) This driver is not included in the firmware by default. Include the module in firmware by setting the diff --git a/docs/en/msg_docs/ActionRequest.md b/docs/en/msg_docs/ActionRequest.md index 9d3bad8a5f..897e092ab1 100644 --- a/docs/en/msg_docs/ActionRequest.md +++ b/docs/en/msg_docs/ActionRequest.md @@ -25,26 +25,26 @@ Request are published by `manual_control` and subscribed by the `commander` and ### ACTION {#ACTION} -| Name | Type | Value | Description | -| ------------------------------------------------------------------------------------------- | ------- | ----- | --------------------------------------------------------------------- | -| ACTION_DISARM | `uint8` | 0 | Disarm vehicle | -| ACTION_ARM | `uint8` | 1 | Arm vehicle | -| ACTION_TOGGLE_ARMING | `uint8` | 2 | Toggle arming | -| ACTION_UNKILL | `uint8` | 3 | Revert a kill action | -| ACTION_KILL | `uint8` | 4 | Kill vehicle (instantly stop the motors) | -| ACTION_SWITCH_MODE | `uint8` | 5 | Switch mode. The target mode is set in the `mode` field. | -| ACTION_VTOL_TRANSITION_TO_MULTICOPTER | `uint8` | 6 | Transition to hover flight | -| ACTION_VTOL_TRANSITION_TO_FIXEDWING | `uint8` | 7 | Transition to fast forward flight | -| ACTION_TERMINATION | `uint8` | 8 | Irreversibly output failsafe values on all outputs, trigger parachute | +| Name | Type | Value | Description | +| ----------------------------------------------------------------------------------------- | ------- | ----- | --------------------------------------------------------------------- | +| ACTION_DISARM | `uint8` | 0 | Disarm vehicle | +| ACTION_ARM | `uint8` | 1 | Arm vehicle | +| ACTION_TOGGLE_ARMING | `uint8` | 2 | Toggle arming | +| ACTION_UNKILL | `uint8` | 3 | Revert a kill action | +| ACTION_KILL | `uint8` | 4 | Kill vehicle (instantly stop the motors) | +| ACTION_SWITCH_MODE | `uint8` | 5 | Switch mode. The target mode is set in the `mode` field. | +| ACTION_VTOL_TRANSITION_TO_MULTICOPTER | `uint8` | 6 | Transition to hover flight | +| ACTION_VTOL_TRANSITION_TO_FIXEDWING | `uint8` | 7 | Transition to fast forward flight | +| ACTION_TERMINATION | `uint8` | 8 | Irreversibly output failsafe values on all outputs, trigger parachute | ### SOURCE {#SOURCE} -| Name | Type | Value | Description | -| --------------------------------------------------------- | ------- | ----- | --------------------------------------------------------------- | -| SOURCE_STICK_GESTURE | `uint8` | 0 | Triggered by holding the sticks in a certain position | -| SOURCE_RC_SWITCH | `uint8` | 1 | Triggered by an RC switch moving into a certain position | -| SOURCE_RC_BUTTON | `uint8` | 2 | Triggered by a momentary button on the RC being pressed or held | -| SOURCE_RC_MODE_SLOT | `uint8` | 3 | Mode change through the RC mode selection mechanism | +| Name | Type | Value | Description | +| ------------------------------------------------------- | ------- | ----- | --------------------------------------------------------------- | +| SOURCE_STICK_GESTURE | `uint8` | 0 | Triggered by holding the sticks in a certain position | +| SOURCE_RC_SWITCH | `uint8` | 1 | Triggered by an RC switch moving into a certain position | +| SOURCE_RC_BUTTON | `uint8` | 2 | Triggered by a momentary button on the RC being pressed or held | +| SOURCE_RC_MODE_SLOT | `uint8` | 3 | Mode change through the RC mode selection mechanism | ## Source Message diff --git a/docs/en/msg_docs/AirspeedValidated.md b/docs/en/msg_docs/AirspeedValidated.md index 4b163411ca..8c7ab58080 100644 --- a/docs/en/msg_docs/AirspeedValidated.md +++ b/docs/en/msg_docs/AirspeedValidated.md @@ -30,14 +30,14 @@ Used by controllers, estimators and for airspeed reporting to operator. ### SOURCE {#SOURCE} -| Name | Type | Value | Description | -| ----------------------------------------------------------------- | ------ | ----- | ----------------------- | -| SOURCE_DISABLED | `int8` | -1 | Disabled | -| SOURCE_GROUND_MINUS_WIND | `int8` | 0 | Ground speed minus wind | -| SOURCE_SENSOR_1 | `int8` | 1 | Sensor 1 | -| SOURCE_SENSOR_2 | `int8` | 2 | Sensor 2 | -| SOURCE_SENSOR_3 | `int8` | 3 | Sensor 3 | -| SOURCE_SYNTHETIC | `int8` | 4 | Synthetic airspeed | +| Name | Type | Value | Description | +| --------------------------------------------------------------- | ------ | ----- | ----------------------- | +| SOURCE_DISABLED | `int8` | -1 | Disabled | +| SOURCE_GROUND_MINUS_WIND | `int8` | 0 | Ground speed minus wind | +| SOURCE_SENSOR_1 | `int8` | 1 | Sensor 1 | +| SOURCE_SENSOR_2 | `int8` | 2 | Sensor 2 | +| SOURCE_SENSOR_3 | `int8` | 3 | Sensor 3 | +| SOURCE_SYNTHETIC | `int8` | 4 | Synthetic airspeed | ## Constants diff --git a/docs/en/msg_docs/ArmingCheckReply.md b/docs/en/msg_docs/ArmingCheckReply.md index cdd777cf46..7b5c22fc7b 100644 --- a/docs/en/msg_docs/ArmingCheckReply.md +++ b/docs/en/msg_docs/ArmingCheckReply.md @@ -45,9 +45,9 @@ The message is not used by internal/FMU components, as their mode requirements a ### HEALTH_COMPONENT_INDEX {#HEALTH_COMPONENT_INDEX} -| Name | Type | Value | Description | -| ----------------------------------------------------------------------- | ------- | ----- | --------------------------------------------------------- | -| HEALTH_COMPONENT_INDEX_NONE | `uint8` | 0 | Index of health component for which this response applies | +| Name | Type | Value | Description | +| --------------------------------------------------------------------- | ------- | ----- | --------------------------------------------------------- | +| HEALTH_COMPONENT_INDEX_NONE | `uint8` | 0 | Index of health component for which this response applies | ## Constants diff --git a/docs/en/msg_docs/AutotuneAttitudeControlStatus.md b/docs/en/msg_docs/AutotuneAttitudeControlStatus.md index f8b2b2f2e9..61f732bf36 100644 --- a/docs/en/msg_docs/AutotuneAttitudeControlStatus.md +++ b/docs/en/msg_docs/AutotuneAttitudeControlStatus.md @@ -37,25 +37,25 @@ The rate_sp field is consumed by the controllers, while the remaining fields (mo ### STATE {#STATE} -| Name | Type | Value | Description | -| ------------------------------------------------------------------------------- | ------- | ----- | -------------------------------------------------------- | -| STATE_IDLE | `uint8` | 0 | Idle (not running) | -| STATE_INIT | `uint8` | 1 | Initialize filters and setup | -| STATE_ROLL_AMPLITUDE_DETECTION | `uint8` | 2 | FW only: determine required excitation amplitude (roll) | -| STATE_ROLL | `uint8` | 3 | Roll-axis excitation and model identification | -| STATE_ROLL_PAUSE | `uint8` | 4 | Pause to return to level flight | -| STATE_PITCH_AMPLITUDE_DETECTION | `uint8` | 5 | FW only: determine required excitation amplitude (pitch) | -| STATE_PITCH | `uint8` | 6 | Pitch-axis excitation and model identification | -| STATE_PITCH_PAUSE | `uint8` | 7 | Pause to return to level flight | -| STATE_YAW_AMPLITUDE_DETECTION | `uint8` | 8 | FW only: determine required excitation amplitude (yaw) | -| STATE_YAW | `uint8` | 9 | Yaw-axis excitation and model identification | -| STATE_YAW_PAUSE | `uint8` | 10 | Pause to return to level flight | -| STATE_VERIFICATION | `uint8` | 11 | Verify model and candidate gains | -| STATE_APPLY | `uint8` | 12 | Apply gains | -| STATE_TEST | `uint8` | 13 | Test gains in closed-loop | -| STATE_COMPLETE | `uint8` | 14 | Tuning completed successfully | -| STATE_FAIL | `uint8` | 15 | Tuning failed (model invalid or controller unstable) | -| STATE_WAIT_FOR_DISARM | `uint8` | 16 | Waiting for disarm before finalizing | +| Name | Type | Value | Description | +| ----------------------------------------------------------------------------- | ------- | ----- | -------------------------------------------------------- | +| STATE_IDLE | `uint8` | 0 | Idle (not running) | +| STATE_INIT | `uint8` | 1 | Initialize filters and setup | +| STATE_ROLL_AMPLITUDE_DETECTION | `uint8` | 2 | FW only: determine required excitation amplitude (roll) | +| STATE_ROLL | `uint8` | 3 | Roll-axis excitation and model identification | +| STATE_ROLL_PAUSE | `uint8` | 4 | Pause to return to level flight | +| STATE_PITCH_AMPLITUDE_DETECTION | `uint8` | 5 | FW only: determine required excitation amplitude (pitch) | +| STATE_PITCH | `uint8` | 6 | Pitch-axis excitation and model identification | +| STATE_PITCH_PAUSE | `uint8` | 7 | Pause to return to level flight | +| STATE_YAW_AMPLITUDE_DETECTION | `uint8` | 8 | FW only: determine required excitation amplitude (yaw) | +| STATE_YAW | `uint8` | 9 | Yaw-axis excitation and model identification | +| STATE_YAW_PAUSE | `uint8` | 10 | Pause to return to level flight | +| STATE_VERIFICATION | `uint8` | 11 | Verify model and candidate gains | +| STATE_APPLY | `uint8` | 12 | Apply gains | +| STATE_TEST | `uint8` | 13 | Test gains in closed-loop | +| STATE_COMPLETE | `uint8` | 14 | Tuning completed successfully | +| STATE_FAIL | `uint8` | 15 | Tuning failed (model invalid or controller unstable) | +| STATE_WAIT_FOR_DISARM | `uint8` | 16 | Waiting for disarm before finalizing | ## Source Message diff --git a/docs/en/msg_docs/AuxGlobalPosition.md b/docs/en/msg_docs/AuxGlobalPosition.md index 6cea6b906c..e612fc3a68 100644 --- a/docs/en/msg_docs/AuxGlobalPosition.md +++ b/docs/en/msg_docs/AuxGlobalPosition.md @@ -30,15 +30,15 @@ pseudolites, visual navigation, or other positioning system. ### SOURCE {#SOURCE} -| Name | Type | Value | Description | -| ----------------------------------------------------- | ------- | ----- | -------------- | -| SOURCE_UNKNOWN | `uint8` | 0 | Unknown source | -| SOURCE_GNSS | `uint8` | 1 | GNSS | -| SOURCE_VISION | `uint8` | 2 | Vision | -| SOURCE_PSEUDOLITES | `uint8` | 3 | Pseudolites | -| SOURCE_TERRAIN | `uint8` | 4 | Terrain | -| SOURCE_MAGNETIC | `uint8` | 5 | Magnetic | -| SOURCE_ESTIMATOR | `uint8` | 6 | Estimator | +| Name | Type | Value | Description | +| --------------------------------------------------- | ------- | ----- | -------------- | +| SOURCE_UNKNOWN | `uint8` | 0 | Unknown source | +| SOURCE_GNSS | `uint8` | 1 | GNSS | +| SOURCE_VISION | `uint8` | 2 | Vision | +| SOURCE_PSEUDOLITES | `uint8` | 3 | Pseudolites | +| SOURCE_TERRAIN | `uint8` | 4 | Terrain | +| SOURCE_MAGNETIC | `uint8` | 5 | Magnetic | +| SOURCE_ESTIMATOR | `uint8` | 6 | Estimator | ## Constants diff --git a/docs/en/msg_docs/BatteryStatus.md b/docs/en/msg_docs/BatteryStatus.md index a8997e8c77..787d18da16 100644 --- a/docs/en/msg_docs/BatteryStatus.md +++ b/docs/en/msg_docs/BatteryStatus.md @@ -59,45 +59,45 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### SOURCE {#SOURCE} -| Name | Type | Value | Description | -| ------------------------------------------------------- | ------- | ----- | ---------------------------------------------- | -| SOURCE_POWER_MODULE | `uint8` | 0 | Power module (analog ADC or I2C power monitor) | -| SOURCE_EXTERNAL | `uint8` | 1 | External (MAVLink, CAN, or external driver) | -| SOURCE_ESCS | `uint8` | 2 | ESCs (via ESC telemetry) | +| Name | Type | Value | Description | +| ----------------------------------------------------- | ------- | ----- | ---------------------------------------------- | +| SOURCE_POWER_MODULE | `uint8` | 0 | Power module (analog ADC or I2C power monitor) | +| SOURCE_EXTERNAL | `uint8` | 1 | External (MAVLink, CAN, or external driver) | +| SOURCE_ESCS | `uint8` | 2 | ESCs (via ESC telemetry) | ### WARNING {#WARNING} -| Name | Type | Value | Description | -| --------------------------------------------------- | ------- | ----- | -------------------------------------------- | -| WARNING_NONE | `uint8` | 0 | No battery low voltage warning active | -| WARNING_LOW | `uint8` | 1 | Low voltage warning | -| WARNING_CRITICAL | `uint8` | 2 | Critical voltage, return / abort immediately | -| WARNING_EMERGENCY | `uint8` | 3 | Immediate landing required | -| WARNING_FAILED | `uint8` | 4 | Battery has failed completely | +| Name | Type | Value | Description | +| ------------------------------------------------- | ------- | ----- | -------------------------------------------- | +| WARNING_NONE | `uint8` | 0 | No battery low voltage warning active | +| WARNING_LOW | `uint8` | 1 | Low voltage warning | +| WARNING_CRITICAL | `uint8` | 2 | Critical voltage, return / abort immediately | +| WARNING_EMERGENCY | `uint8` | 3 | Immediate landing required | +| WARNING_FAILED | `uint8` | 4 | Battery has failed completely | ### STATE {#STATE} -| Name | Type | Value | Description | -| ----------------------------------------------- | ------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| STATE_UNHEALTHY | `uint8` | 6 | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in faults field | -| STATE_CHARGING | `uint8` | 7 | Battery is charging | +| Name | Type | Value | Description | +| --------------------------------------------- | ------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| STATE_UNHEALTHY | `uint8` | 6 | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in faults field | +| STATE_CHARGING | `uint8` | 7 | Battery is charging | ### FAULT {#FAULT} -| Name | Type | Value | Description | -| ----------------------------------------------------------------------- | ------- | ----- | -------------------------------------------------------------------------------------------------------------- | -| FAULT_DEEP_DISCHARGE | `uint8` | 0 | Battery has deep discharged | -| FAULT_SPIKES | `uint8` | 1 | Voltage spikes | -| FAULT_CELL_FAIL | `uint8` | 2 | One or more cells have failed | -| FAULT_OVER_CURRENT | `uint8` | 3 | Over-current | -| FAULT_OVER_TEMPERATURE | `uint8` | 4 | Over-temperature | -| FAULT_UNDER_TEMPERATURE | `uint8` | 5 | Under-temperature fault | -| FAULT_INCOMPATIBLE_VOLTAGE | `uint8` | 6 | Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage) | -| FAULT_INCOMPATIBLE_FIRMWARE | `uint8` | 7 | Battery firmware is not compatible with current autopilot firmware | -| FAULT_INCOMPATIBLE_MODEL | `uint8` | 8 | Battery model is not supported by the system | -| FAULT_HARDWARE_FAILURE | `uint8` | 9 | Hardware problem | -| FAULT_FAILED_TO_ARM | `uint8` | 10 | Battery had a problem while arming | -| FAULT_COUNT | `uint8` | 11 | Counter. Keep this as last element | +| Name | Type | Value | Description | +| --------------------------------------------------------------------- | ------- | ----- | -------------------------------------------------------------------------------------------------------------- | +| FAULT_DEEP_DISCHARGE | `uint8` | 0 | Battery has deep discharged | +| FAULT_SPIKES | `uint8` | 1 | Voltage spikes | +| FAULT_CELL_FAIL | `uint8` | 2 | One or more cells have failed | +| FAULT_OVER_CURRENT | `uint8` | 3 | Over-current | +| FAULT_OVER_TEMPERATURE | `uint8` | 4 | Over-temperature | +| FAULT_UNDER_TEMPERATURE | `uint8` | 5 | Under-temperature fault | +| FAULT_INCOMPATIBLE_VOLTAGE | `uint8` | 6 | Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage) | +| FAULT_INCOMPATIBLE_FIRMWARE | `uint8` | 7 | Battery firmware is not compatible with current autopilot firmware | +| FAULT_INCOMPATIBLE_MODEL | `uint8` | 8 | Battery model is not supported by the system | +| FAULT_HARDWARE_FAILURE | `uint8` | 9 | Hardware problem | +| FAULT_FAILED_TO_ARM | `uint8` | 10 | Battery had a problem while arming | +| FAULT_COUNT | `uint8` | 11 | Counter. Keep this as last element | ## Constants diff --git a/docs/en/msg_docs/BatteryStatusV0.md b/docs/en/msg_docs/BatteryStatusV0.md index 65397eaab8..2dbe4a74fe 100644 --- a/docs/en/msg_docs/BatteryStatusV0.md +++ b/docs/en/msg_docs/BatteryStatusV0.md @@ -60,45 +60,45 @@ Battery instance information is also logged and streamed in MAVLink telemetry. ### SOURCE {#SOURCE} -| Name | Type | Value | Description | -| ------------------------------------------------------- | ------- | ----- | ---------------------------------------------- | -| SOURCE_POWER_MODULE | `uint8` | 0 | Power module (analog ADC or I2C power monitor) | -| SOURCE_EXTERNAL | `uint8` | 1 | External (MAVLink, CAN, or external driver) | -| SOURCE_ESCS | `uint8` | 2 | ESCs (via ESC telemetry) | +| Name | Type | Value | Description | +| ----------------------------------------------------- | ------- | ----- | ---------------------------------------------- | +| SOURCE_POWER_MODULE | `uint8` | 0 | Power module (analog ADC or I2C power monitor) | +| SOURCE_EXTERNAL | `uint8` | 1 | External (MAVLink, CAN, or external driver) | +| SOURCE_ESCS | `uint8` | 2 | ESCs (via ESC telemetry) | ### WARNING {#WARNING} -| Name | Type | Value | Description | -| --------------------------------------------------- | ------- | ----- | -------------------------------------------- | -| WARNING_NONE | `uint8` | 0 | No battery low voltage warning active | -| WARNING_LOW | `uint8` | 1 | Low voltage warning | -| WARNING_CRITICAL | `uint8` | 2 | Critical voltage, return / abort immediately | -| WARNING_EMERGENCY | `uint8` | 3 | Immediate landing required | -| WARNING_FAILED | `uint8` | 4 | Battery has failed completely | +| Name | Type | Value | Description | +| ------------------------------------------------- | ------- | ----- | -------------------------------------------- | +| WARNING_NONE | `uint8` | 0 | No battery low voltage warning active | +| WARNING_LOW | `uint8` | 1 | Low voltage warning | +| WARNING_CRITICAL | `uint8` | 2 | Critical voltage, return / abort immediately | +| WARNING_EMERGENCY | `uint8` | 3 | Immediate landing required | +| WARNING_FAILED | `uint8` | 4 | Battery has failed completely | ### STATE {#STATE} -| Name | Type | Value | Description | -| ----------------------------------------------- | ------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| STATE_UNHEALTHY | `uint8` | 6 | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in faults field | -| STATE_CHARGING | `uint8` | 7 | Battery is charging | +| Name | Type | Value | Description | +| --------------------------------------------- | ------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| STATE_UNHEALTHY | `uint8` | 6 | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in faults field | +| STATE_CHARGING | `uint8` | 7 | Battery is charging | ### FAULT {#FAULT} -| Name | Type | Value | Description | -| ----------------------------------------------------------------------- | ------- | ----- | -------------------------------------------------------------------------------------------------------------- | -| FAULT_DEEP_DISCHARGE | `uint8` | 0 | Battery has deep discharged | -| FAULT_SPIKES | `uint8` | 1 | Voltage spikes | -| FAULT_CELL_FAIL | `uint8` | 2 | One or more cells have failed | -| FAULT_OVER_CURRENT | `uint8` | 3 | Over-current | -| FAULT_OVER_TEMPERATURE | `uint8` | 4 | Over-temperature | -| FAULT_UNDER_TEMPERATURE | `uint8` | 5 | Under-temperature fault | -| FAULT_INCOMPATIBLE_VOLTAGE | `uint8` | 6 | Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage) | -| FAULT_INCOMPATIBLE_FIRMWARE | `uint8` | 7 | Battery firmware is not compatible with current autopilot firmware | -| FAULT_INCOMPATIBLE_MODEL | `uint8` | 8 | Battery model is not supported by the system | -| FAULT_HARDWARE_FAILURE | `uint8` | 9 | Hardware problem | -| FAULT_FAILED_TO_ARM | `uint8` | 10 | Battery had a problem while arming | -| FAULT_COUNT | `uint8` | 11 | Counter. Keep this as last element | +| Name | Type | Value | Description | +| --------------------------------------------------------------------- | ------- | ----- | -------------------------------------------------------------------------------------------------------------- | +| FAULT_DEEP_DISCHARGE | `uint8` | 0 | Battery has deep discharged | +| FAULT_SPIKES | `uint8` | 1 | Voltage spikes | +| FAULT_CELL_FAIL | `uint8` | 2 | One or more cells have failed | +| FAULT_OVER_CURRENT | `uint8` | 3 | Over-current | +| FAULT_OVER_TEMPERATURE | `uint8` | 4 | Over-temperature | +| FAULT_UNDER_TEMPERATURE | `uint8` | 5 | Under-temperature fault | +| FAULT_INCOMPATIBLE_VOLTAGE | `uint8` | 6 | Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage) | +| FAULT_INCOMPATIBLE_FIRMWARE | `uint8` | 7 | Battery firmware is not compatible with current autopilot firmware | +| FAULT_INCOMPATIBLE_MODEL | `uint8` | 8 | Battery model is not supported by the system | +| FAULT_HARDWARE_FAILURE | `uint8` | 9 | Hardware problem | +| FAULT_FAILED_TO_ARM | `uint8` | 10 | Battery had a problem while arming | +| FAULT_COUNT | `uint8` | 11 | Counter. Keep this as last element | ## Constants diff --git a/docs/en/msg_docs/CellularStatus.md b/docs/en/msg_docs/CellularStatus.md index 10214361e7..a632b99d8a 100644 --- a/docs/en/msg_docs/CellularStatus.md +++ b/docs/en/msg_docs/CellularStatus.md @@ -27,40 +27,40 @@ This is currently used only for logging cell status from MAVLink. ### STATUS_FLAG {#STATUS_FLAG} -| Name | Type | Value | Description | -| ------------------------------------------------------------------- | -------- | ----- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| STATUS_FLAG_UNKNOWN | `uint16` | 1 | State unknown or not reportable | -| STATUS_FLAG_FAILED | `uint16` | 2 | Modem is unusable | -| STATUS_FLAG_INITIALIZING | `uint16` | 4 | Modem is being initialized | -| STATUS_FLAG_LOCKED | `uint16` | 8 | Modem is locked | -| STATUS_FLAG_DISABLED | `uint16` | 16 | Modem is not enabled and is powered down | -| STATUS_FLAG_DISABLING | `uint16` | 32 | Modem is currently transitioning to the STATUS_FLAG_DISABLED state | -| STATUS_FLAG_ENABLING | `uint16` | 64 | Modem is currently transitioning to the STATUS_FLAG_ENABLED state | -| STATUS_FLAG_ENABLED | `uint16` | 128 | Modem is enabled and powered on but not registered with a network provider and not available for data connections | -| STATUS_FLAG_SEARCHING | `uint16` | 256 | Modem is searching for a network provider to register | -| STATUS_FLAG_REGISTERED | `uint16` | 512 | Modem is registered with a network provider, and data connections and messaging may be available for use | -| STATUS_FLAG_DISCONNECTING | `uint16` | 1024 | Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated | -| STATUS_FLAG_CONNECTING | `uint16` | 2048 | Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered | -| STATUS_FLAG_CONNECTED | `uint16` | 4096 | One or more packet data bearers is active and connected | +| Name | Type | Value | Description | +| ----------------------------------------------------------------- | -------- | ----- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| STATUS_FLAG_UNKNOWN | `uint16` | 1 | State unknown or not reportable | +| STATUS_FLAG_FAILED | `uint16` | 2 | Modem is unusable | +| STATUS_FLAG_INITIALIZING | `uint16` | 4 | Modem is being initialized | +| STATUS_FLAG_LOCKED | `uint16` | 8 | Modem is locked | +| STATUS_FLAG_DISABLED | `uint16` | 16 | Modem is not enabled and is powered down | +| STATUS_FLAG_DISABLING | `uint16` | 32 | Modem is currently transitioning to the STATUS_FLAG_DISABLED state | +| STATUS_FLAG_ENABLING | `uint16` | 64 | Modem is currently transitioning to the STATUS_FLAG_ENABLED state | +| STATUS_FLAG_ENABLED | `uint16` | 128 | Modem is enabled and powered on but not registered with a network provider and not available for data connections | +| STATUS_FLAG_SEARCHING | `uint16` | 256 | Modem is searching for a network provider to register | +| STATUS_FLAG_REGISTERED | `uint16` | 512 | Modem is registered with a network provider, and data connections and messaging may be available for use | +| STATUS_FLAG_DISCONNECTING | `uint16` | 1024 | Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated | +| STATUS_FLAG_CONNECTING | `uint16` | 2048 | Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered | +| STATUS_FLAG_CONNECTED | `uint16` | 4096 | One or more packet data bearers is active and connected | ### FAILURE_REASON {#FAILURE_REASON} -| Name | Type | Value | Description | -| --------------------------------------------------------------------- | ------- | ----- | ----------------------------------------------- | -| FAILURE_REASON_NONE | `uint8` | 0 | No error | -| FAILURE_REASON_UNKNOWN | `uint8` | 1 | Error state is unknown | -| FAILURE_REASON_SIM_MISSING | `uint8` | 2 | SIM is required for the modem but missing | -| FAILURE_REASON_SIM_ERROR | `uint8` | 3 | SIM is available, but not usable for connection | +| Name | Type | Value | Description | +| ------------------------------------------------------------------- | ------- | ----- | ----------------------------------------------- | +| FAILURE_REASON_NONE | `uint8` | 0 | No error | +| FAILURE_REASON_UNKNOWN | `uint8` | 1 | Error state is unknown | +| FAILURE_REASON_SIM_MISSING | `uint8` | 2 | SIM is required for the modem but missing | +| FAILURE_REASON_SIM_ERROR | `uint8` | 3 | SIM is available, but not usable for connection | ### CELLULAR_NETWORK_RADIO_TYPE {#CELLULAR_NETWORK_RADIO_TYPE} -| Name | Type | Value | Description | -| ----------------------------------------------------------------------------------- | ------- | ----- | ----------- | -| CELLULAR_NETWORK_RADIO_TYPE_NONE | `uint8` | 0 | None | -| CELLULAR_NETWORK_RADIO_TYPE_GSM | `uint8` | 1 | GSM | -| CELLULAR_NETWORK_RADIO_TYPE_CDMA | `uint8` | 2 | CDMA | -| CELLULAR_NETWORK_RADIO_TYPE_WCDMA | `uint8` | 3 | WCDMA | -| CELLULAR_NETWORK_RADIO_TYPE_LTE | `uint8` | 4 | LTE | +| Name | Type | Value | Description | +| --------------------------------------------------------------------------------- | ------- | ----- | ----------- | +| CELLULAR_NETWORK_RADIO_TYPE_NONE | `uint8` | 0 | None | +| CELLULAR_NETWORK_RADIO_TYPE_GSM | `uint8` | 1 | GSM | +| CELLULAR_NETWORK_RADIO_TYPE_CDMA | `uint8` | 2 | CDMA | +| CELLULAR_NETWORK_RADIO_TYPE_WCDMA | `uint8` | 3 | WCDMA | +| CELLULAR_NETWORK_RADIO_TYPE_LTE | `uint8` | 4 | LTE | ## Source Message diff --git a/docs/en/msg_docs/DeviceInformation.md b/docs/en/msg_docs/DeviceInformation.md index 23e676b2a2..e6e5abc02d 100644 --- a/docs/en/msg_docs/DeviceInformation.md +++ b/docs/en/msg_docs/DeviceInformation.md @@ -27,24 +27,24 @@ as well as tracking of the used firmware versions on the devices. ### DEVICE_TYPE {#DEVICE_TYPE} -| Name | Type | Value | Description | -| ----------------------------------------------------------------------------------- | ------- | ----- | ---------------------- | -| DEVICE_TYPE_GENERIC | `uint8` | 0 | Generic/unknown sensor | -| DEVICE_TYPE_AIRSPEED | `uint8` | 1 | Airspeed sensor | -| DEVICE_TYPE_ESC | `uint8` | 2 | ESC | -| DEVICE_TYPE_SERVO | `uint8` | 3 | Servo | -| DEVICE_TYPE_GPS | `uint8` | 4 | GPS | -| DEVICE_TYPE_MAGNETOMETER | `uint8` | 5 | Magnetometer | -| DEVICE_TYPE_PARACHUTE | `uint8` | 6 | Parachute | -| DEVICE_TYPE_RANGEFINDER | `uint8` | 7 | Rangefinder | -| DEVICE_TYPE_WINCH | `uint8` | 8 | Winch | -| DEVICE_TYPE_BAROMETER | `uint8` | 9 | Barometer | -| DEVICE_TYPE_OPTICAL_FLOW | `uint8` | 10 | Optical flow | -| DEVICE_TYPE_ACCELEROMETER | `uint8` | 11 | Accelerometer | -| DEVICE_TYPE_GYROSCOPE | `uint8` | 12 | Gyroscope | -| DEVICE_TYPE_DIFFERENTIAL_PRESSURE | `uint8` | 13 | Differential pressure | -| DEVICE_TYPE_BATTERY | `uint8` | 14 | Battery | -| DEVICE_TYPE_HYGROMETER | `uint8` | 15 | Hygrometer | +| Name | Type | Value | Description | +| --------------------------------------------------------------------------------- | ------- | ----- | ---------------------- | +| DEVICE_TYPE_GENERIC | `uint8` | 0 | Generic/unknown sensor | +| DEVICE_TYPE_AIRSPEED | `uint8` | 1 | Airspeed sensor | +| DEVICE_TYPE_ESC | `uint8` | 2 | ESC | +| DEVICE_TYPE_SERVO | `uint8` | 3 | Servo | +| DEVICE_TYPE_GPS | `uint8` | 4 | GPS | +| DEVICE_TYPE_MAGNETOMETER | `uint8` | 5 | Magnetometer | +| DEVICE_TYPE_PARACHUTE | `uint8` | 6 | Parachute | +| DEVICE_TYPE_RANGEFINDER | `uint8` | 7 | Rangefinder | +| DEVICE_TYPE_WINCH | `uint8` | 8 | Winch | +| DEVICE_TYPE_BAROMETER | `uint8` | 9 | Barometer | +| DEVICE_TYPE_OPTICAL_FLOW | `uint8` | 10 | Optical flow | +| DEVICE_TYPE_ACCELEROMETER | `uint8` | 11 | Accelerometer | +| DEVICE_TYPE_GYROSCOPE | `uint8` | 12 | Gyroscope | +| DEVICE_TYPE_DIFFERENTIAL_PRESSURE | `uint8` | 13 | Differential pressure | +| DEVICE_TYPE_BATTERY | `uint8` | 14 | Battery | +| DEVICE_TYPE_HYGROMETER | `uint8` | 15 | Hygrometer | ## Source Message diff --git a/docs/en/msg_docs/VehicleCommand.md b/docs/en/msg_docs/VehicleCommand.md index 872768eee4..5f42816d9a 100644 --- a/docs/en/msg_docs/VehicleCommand.md +++ b/docs/en/msg_docs/VehicleCommand.md @@ -1490,34 +1490,34 @@ Change mode by specifying nav_state directly. ### ORBIT_YAW_BEHAVIOUR {#ORBIT_YAW_BEHAVIOUR} -| Name | Type | Value | Description | -| ----------------------------------------------------------------------------------------------------------------- | ------- | ----- | ----------- | -| ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER | `uint8` | 0 | -| ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING | `uint8` | 1 | -| ORBIT_YAW_BEHAVIOUR_UNCONTROLLED | `uint8` | 2 | -| ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE | `uint8` | 3 | -| ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED | `uint8` | 4 | -| ORBIT_YAW_BEHAVIOUR_UNCHANGED | `uint8` | 5 | +| Name | Type | Value | Description | +| --------------------------------------------------------------------------------------------------------------- | ------- | ----- | ----------- | +| ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER | `uint8` | 0 | +| ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING | `uint8` | 1 | +| ORBIT_YAW_BEHAVIOUR_UNCONTROLLED | `uint8` | 2 | +| ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE | `uint8` | 3 | +| ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED | `uint8` | 4 | +| ORBIT_YAW_BEHAVIOUR_UNCHANGED | `uint8` | 5 | ### VEHICLE_ROI {#VEHICLE_ROI} -| Name | Type | Value | Description | -| --------------------------------------------------------- | ------- | ----- | ---------------------------- | -| VEHICLE_ROI_NONE | `uint8` | 0 | No region of interest. | -| VEHICLE_ROI_WPNEXT | `uint8` | 1 | Point toward next MISSION. | -| VEHICLE_ROI_WPINDEX | `uint8` | 2 | Point toward given MISSION. | -| VEHICLE_ROI_LOCATION | `uint8` | 3 | Point toward fixed location. | -| VEHICLE_ROI_TARGET | `uint8` | 4 | Point toward target. | -| VEHICLE_ROI_ENUM_END | `uint8` | 5 | +| Name | Type | Value | Description | +| ------------------------------------------------------- | ------- | ----- | ---------------------------- | +| VEHICLE_ROI_NONE | `uint8` | 0 | No region of interest. | +| VEHICLE_ROI_WPNEXT | `uint8` | 1 | Point toward next MISSION. | +| VEHICLE_ROI_WPINDEX | `uint8` | 2 | Point toward given MISSION. | +| VEHICLE_ROI_LOCATION | `uint8` | 3 | Point toward fixed location. | +| VEHICLE_ROI_TARGET | `uint8` | 4 | Point toward target. | +| VEHICLE_ROI_ENUM_END | `uint8` | 5 | ### SPEED_TYPE {#SPEED_TYPE} -| Name | Type | Value | Description | -| ----------------------------------------------------------------- | ------- | ----- | ----------- | -| SPEED_TYPE_AIRSPEED | `uint8` | 0 | -| SPEED_TYPE_GROUNDSPEED | `uint8` | 1 | -| SPEED_TYPE_CLIMB_SPEED | `uint8` | 2 | -| SPEED_TYPE_DESCEND_SPEED | `uint8` | 3 | +| Name | Type | Value | Description | +| --------------------------------------------------------------- | ------- | ----- | ----------- | +| SPEED_TYPE_AIRSPEED | `uint8` | 0 | +| SPEED_TYPE_GROUNDSPEED | `uint8` | 1 | +| SPEED_TYPE_CLIMB_SPEED | `uint8` | 2 | +| SPEED_TYPE_DESCEND_SPEED | `uint8` | 3 | ### MAV_MOUNT_MODE {#MAV_MOUNT_MODE} diff --git a/docs/en/msg_docs/VehicleCommandAck.md b/docs/en/msg_docs/VehicleCommandAck.md index 65c2751ebf..7aea6ba850 100644 --- a/docs/en/msg_docs/VehicleCommandAck.md +++ b/docs/en/msg_docs/VehicleCommandAck.md @@ -28,18 +28,18 @@ Follows the MAVLink COMMAND_ACK message definition ### VEHICLE_CMD_RESULT {#VEHICLE_CMD_RESULT} -| Name | Type | Value | Description | -| ------------------------------------------------------------------------------------------------- | ------- | ----- | ---------------------------------------------------- | -| VEHICLE_CMD_RESULT_ACCEPTED | `uint8` | 0 | Command ACCEPTED and EXECUTED | -| VEHICLE_CMD_RESULT_TEMPORARILY_REJECTED | `uint8` | 1 | Command TEMPORARY REJECTED/DENIED | -| VEHICLE_CMD_RESULT_DENIED | `uint8` | 2 | Command PERMANENTLY DENIED | -| VEHICLE_CMD_RESULT_UNSUPPORTED | `uint8` | 3 | Command UNKNOWN/UNSUPPORTED | -| VEHICLE_CMD_RESULT_FAILED | `uint8` | 4 | Command executed, but failed | -| VEHICLE_CMD_RESULT_IN_PROGRESS | `uint8` | 5 | Command being executed | -| VEHICLE_CMD_RESULT_CANCELLED | `uint8` | 6 | Command Canceled | -| VEHICLE_CMD_RESULT_COMMAND_LONG_ONLY | `uint8` | 7 | Command is only accepted when sent as a COMMAND_LONG | -| VEHICLE_CMD_RESULT_COMMAND_INT_ONLY | `uint8` | 8 | Command is only accepted when sent as a COMMAND_INT | -| VEHICLE_CMD_RESULT_UNSUPPORTED_MAV_FRAME | `uint8` | 9 | Command does not support specified frame | +| Name | Type | Value | Description | +| ----------------------------------------------------------------------------------------------- | ------- | ----- | ---------------------------------------------------- | +| VEHICLE_CMD_RESULT_ACCEPTED | `uint8` | 0 | Command ACCEPTED and EXECUTED | +| VEHICLE_CMD_RESULT_TEMPORARILY_REJECTED | `uint8` | 1 | Command TEMPORARY REJECTED/DENIED | +| VEHICLE_CMD_RESULT_DENIED | `uint8` | 2 | Command PERMANENTLY DENIED | +| VEHICLE_CMD_RESULT_UNSUPPORTED | `uint8` | 3 | Command UNKNOWN/UNSUPPORTED | +| VEHICLE_CMD_RESULT_FAILED | `uint8` | 4 | Command executed, but failed | +| VEHICLE_CMD_RESULT_IN_PROGRESS | `uint8` | 5 | Command being executed | +| VEHICLE_CMD_RESULT_CANCELLED | `uint8` | 6 | Command Canceled | +| VEHICLE_CMD_RESULT_COMMAND_LONG_ONLY | `uint8` | 7 | Command is only accepted when sent as a COMMAND_LONG | +| VEHICLE_CMD_RESULT_COMMAND_INT_ONLY | `uint8` | 8 | Command is only accepted when sent as a COMMAND_INT | +| VEHICLE_CMD_RESULT_UNSUPPORTED_MAV_FRAME | `uint8` | 9 | Command does not support specified frame | ## Constants diff --git a/docs/en/msg_docs/VehicleOdometry.md b/docs/en/msg_docs/VehicleOdometry.md index 78fc9ad7e1..a3c6d201fd 100644 --- a/docs/en/msg_docs/VehicleOdometry.md +++ b/docs/en/msg_docs/VehicleOdometry.md @@ -32,20 +32,20 @@ Fits ROS REP 147 for aerial vehicles ### POSE_FRAME {#POSE_FRAME} -| Name | Type | Value | Description | -| ----------------------------------------------------- | ------- | ----- | --------------------------------------------------------------------------------------------- | -| POSE_FRAME_UNKNOWN | `uint8` | 0 | Unknown frame | -| POSE_FRAME_NED | `uint8` | 1 | North-East-Down (NED) navigation frame. Aligned with True North. | -| POSE_FRAME_FRD | `uint8` | 2 | Forward-Right-Down (FRD) frame. Constant arbitrary heading offset from True North. Z is down. | +| Name | Type | Value | Description | +| --------------------------------------------------- | ------- | ----- | --------------------------------------------------------------------------------------------- | +| POSE_FRAME_UNKNOWN | `uint8` | 0 | Unknown frame | +| POSE_FRAME_NED | `uint8` | 1 | North-East-Down (NED) navigation frame. Aligned with True North. | +| POSE_FRAME_FRD | `uint8` | 2 | Forward-Right-Down (FRD) frame. Constant arbitrary heading offset from True North. Z is down. | ### VELOCITY_FRAME {#VELOCITY_FRAME} -| Name | Type | Value | Description | -| --------------------------------------------------------------- | ------- | ----- | ------------------------------------------------------------------------------------------------------- | -| VELOCITY_FRAME_UNKNOWN | `uint8` | 0 | Unknown frame | -| VELOCITY_FRAME_NED | `uint8` | 1 | NED navigation frame at current position. | -| VELOCITY_FRAME_FRD | `uint8` | 2 | FRD navigation frame at current position. Constant arbitrary heading offset from True North. Z is down. | -| VELOCITY_FRAME_BODY_FRD | `uint8` | 3 | FRD body-fixed frame | +| Name | Type | Value | Description | +| ------------------------------------------------------------- | ------- | ----- | ------------------------------------------------------------------------------------------------------- | +| VELOCITY_FRAME_UNKNOWN | `uint8` | 0 | Unknown frame | +| VELOCITY_FRAME_NED | `uint8` | 1 | NED navigation frame at current position. | +| VELOCITY_FRAME_FRD | `uint8` | 2 | FRD navigation frame at current position. Constant arbitrary heading offset from True North. Z is down. | +| VELOCITY_FRAME_BODY_FRD | `uint8` | 3 | FRD body-fixed frame | ## Constants diff --git a/docs/en/msg_docs/VehicleStatusV1.md b/docs/en/msg_docs/VehicleStatusV1.md index ed7a3d0de0..c38ce82a9e 100644 --- a/docs/en/msg_docs/VehicleStatusV1.md +++ b/docs/en/msg_docs/VehicleStatusV1.md @@ -56,71 +56,71 @@ Encodes the system state of the vehicle published by commander. ### NAVIGATION_STATE {#NAVIGATION_STATE} -| Name | Type | Value | Description | -| --------------------------------------------------------------------------------------- | ------- | ----- | ------------------------------------- | -| NAVIGATION_STATE_MANUAL | `uint8` | 0 | Manual mode | -| NAVIGATION_STATE_ALTCTL | `uint8` | 1 | Altitude control mode | -| NAVIGATION_STATE_POSCTL | `uint8` | 2 | Position control mode | -| NAVIGATION_STATE_AUTO_MISSION | `uint8` | 3 | Auto mission mode | -| NAVIGATION_STATE_AUTO_LOITER | `uint8` | 4 | Auto loiter mode | -| NAVIGATION_STATE_AUTO_RTL | `uint8` | 5 | Auto return to launch mode | -| NAVIGATION_STATE_POSITION_SLOW | `uint8` | 6 | -| NAVIGATION_STATE_FREE5 | `uint8` | 7 | -| NAVIGATION_STATE_ALTITUDE_CRUISE | `uint8` | 8 | Altitude with Cruise mode | -| NAVIGATION_STATE_FREE3 | `uint8` | 9 | -| NAVIGATION_STATE_ACRO | `uint8` | 10 | Acro mode | -| NAVIGATION_STATE_FREE2 | `uint8` | 11 | -| NAVIGATION_STATE_DESCEND | `uint8` | 12 | Descend mode (no position control) | -| NAVIGATION_STATE_TERMINATION | `uint8` | 13 | Termination mode | -| NAVIGATION_STATE_OFFBOARD | `uint8` | 14 | -| NAVIGATION_STATE_STAB | `uint8` | 15 | Stabilized mode | -| NAVIGATION_STATE_FREE1 | `uint8` | 16 | -| NAVIGATION_STATE_AUTO_TAKEOFF | `uint8` | 17 | Takeoff | -| NAVIGATION_STATE_AUTO_LAND | `uint8` | 18 | Land | -| NAVIGATION_STATE_AUTO_FOLLOW_TARGET | `uint8` | 19 | Auto Follow | -| NAVIGATION_STATE_AUTO_PRECLAND | `uint8` | 20 | Precision land with landing target | -| NAVIGATION_STATE_ORBIT | `uint8` | 21 | Orbit in a circle | -| NAVIGATION_STATE_AUTO_VTOL_TAKEOFF | `uint8` | 22 | Takeoff, transition, establish loiter | -| NAVIGATION_STATE_EXTERNAL1 | `uint8` | 23 | -| NAVIGATION_STATE_EXTERNAL2 | `uint8` | 24 | -| NAVIGATION_STATE_EXTERNAL3 | `uint8` | 25 | -| NAVIGATION_STATE_EXTERNAL4 | `uint8` | 26 | -| NAVIGATION_STATE_EXTERNAL5 | `uint8` | 27 | -| NAVIGATION_STATE_EXTERNAL6 | `uint8` | 28 | -| NAVIGATION_STATE_EXTERNAL7 | `uint8` | 29 | -| NAVIGATION_STATE_EXTERNAL8 | `uint8` | 30 | -| NAVIGATION_STATE_MAX | `uint8` | 31 | +| Name | Type | Value | Description | +| ------------------------------------------------------------------------------------- | ------- | ----- | ------------------------------------- | +| NAVIGATION_STATE_MANUAL | `uint8` | 0 | Manual mode | +| NAVIGATION_STATE_ALTCTL | `uint8` | 1 | Altitude control mode | +| NAVIGATION_STATE_POSCTL | `uint8` | 2 | Position control mode | +| NAVIGATION_STATE_AUTO_MISSION | `uint8` | 3 | Auto mission mode | +| NAVIGATION_STATE_AUTO_LOITER | `uint8` | 4 | Auto loiter mode | +| NAVIGATION_STATE_AUTO_RTL | `uint8` | 5 | Auto return to launch mode | +| NAVIGATION_STATE_POSITION_SLOW | `uint8` | 6 | +| NAVIGATION_STATE_FREE5 | `uint8` | 7 | +| NAVIGATION_STATE_ALTITUDE_CRUISE | `uint8` | 8 | Altitude with Cruise mode | +| NAVIGATION_STATE_FREE3 | `uint8` | 9 | +| NAVIGATION_STATE_ACRO | `uint8` | 10 | Acro mode | +| NAVIGATION_STATE_FREE2 | `uint8` | 11 | +| NAVIGATION_STATE_DESCEND | `uint8` | 12 | Descend mode (no position control) | +| NAVIGATION_STATE_TERMINATION | `uint8` | 13 | Termination mode | +| NAVIGATION_STATE_OFFBOARD | `uint8` | 14 | +| NAVIGATION_STATE_STAB | `uint8` | 15 | Stabilized mode | +| NAVIGATION_STATE_FREE1 | `uint8` | 16 | +| NAVIGATION_STATE_AUTO_TAKEOFF | `uint8` | 17 | Takeoff | +| NAVIGATION_STATE_AUTO_LAND | `uint8` | 18 | Land | +| NAVIGATION_STATE_AUTO_FOLLOW_TARGET | `uint8` | 19 | Auto Follow | +| NAVIGATION_STATE_AUTO_PRECLAND | `uint8` | 20 | Precision land with landing target | +| NAVIGATION_STATE_ORBIT | `uint8` | 21 | Orbit in a circle | +| NAVIGATION_STATE_AUTO_VTOL_TAKEOFF | `uint8` | 22 | Takeoff, transition, establish loiter | +| NAVIGATION_STATE_EXTERNAL1 | `uint8` | 23 | +| NAVIGATION_STATE_EXTERNAL2 | `uint8` | 24 | +| NAVIGATION_STATE_EXTERNAL3 | `uint8` | 25 | +| NAVIGATION_STATE_EXTERNAL4 | `uint8` | 26 | +| NAVIGATION_STATE_EXTERNAL5 | `uint8` | 27 | +| NAVIGATION_STATE_EXTERNAL6 | `uint8` | 28 | +| NAVIGATION_STATE_EXTERNAL7 | `uint8` | 29 | +| NAVIGATION_STATE_EXTERNAL8 | `uint8` | 30 | +| NAVIGATION_STATE_MAX | `uint8` | 31 | ### FAILURE {#FAILURE} -| Name | Type | Value | Description | -| --------------------------------------------------------------- | -------- | ----- | ----------- | -| FAILURE_NONE | `uint16` | 0 | -| FAILURE_ROLL | `uint16` | 1 | (1 << 0) | -| FAILURE_PITCH | `uint16` | 2 | (1 << 1) | -| FAILURE_ALT | `uint16` | 4 | (1 << 2) | -| FAILURE_EXT | `uint16` | 8 | (1 << 3) | -| FAILURE_ARM_ESC | `uint16` | 16 | (1 << 4) | -| FAILURE_BATTERY | `uint16` | 32 | (1 << 5) | -| FAILURE_IMBALANCED_PROP | `uint16` | 64 | (1 << 6) | -| FAILURE_MOTOR | `uint16` | 128 | (1 << 7) | +| Name | Type | Value | Description | +| ------------------------------------------------------------- | -------- | ----- | ----------- | +| FAILURE_NONE | `uint16` | 0 | +| FAILURE_ROLL | `uint16` | 1 | (1 << 0) | +| FAILURE_PITCH | `uint16` | 2 | (1 << 1) | +| FAILURE_ALT | `uint16` | 4 | (1 << 2) | +| FAILURE_EXT | `uint16` | 8 | (1 << 3) | +| FAILURE_ARM_ESC | `uint16` | 16 | (1 << 4) | +| FAILURE_BATTERY | `uint16` | 32 | (1 << 5) | +| FAILURE_IMBALANCED_PROP | `uint16` | 64 | (1 << 6) | +| FAILURE_MOTOR | `uint16` | 128 | (1 << 7) | ### VEHICLE_TYPE {#VEHICLE_TYPE} -| Name | Type | Value | Description | -| ----------------------------------------------------------------- | ------- | ----- | ----------- | -| VEHICLE_TYPE_UNSPECIFIED | `uint8` | 0 | -| VEHICLE_TYPE_ROTARY_WING | `uint8` | 1 | -| VEHICLE_TYPE_FIXED_WING | `uint8` | 2 | -| VEHICLE_TYPE_ROVER | `uint8` | 3 | +| Name | Type | Value | Description | +| --------------------------------------------------------------- | ------- | ----- | ----------- | +| VEHICLE_TYPE_UNSPECIFIED | `uint8` | 0 | +| VEHICLE_TYPE_ROTARY_WING | `uint8` | 1 | +| VEHICLE_TYPE_FIXED_WING | `uint8` | 2 | +| VEHICLE_TYPE_ROVER | `uint8` | 3 | ### FAILSAFE_DEFER_STATE {#FAILSAFE_DEFER_STATE} -| Name | Type | Value | Description | -| --------------------------------------------------------------------------------------- | ------- | ----- | ------------------------------------------------ | -| FAILSAFE_DEFER_STATE_DISABLED | `uint8` | 0 | -| FAILSAFE_DEFER_STATE_ENABLED | `uint8` | 1 | -| FAILSAFE_DEFER_STATE_WOULD_FAILSAFE | `uint8` | 2 | Failsafes deferred, but would trigger a failsafe | +| Name | Type | Value | Description | +| ------------------------------------------------------------------------------------- | ------- | ----- | ------------------------------------------------ | +| FAILSAFE_DEFER_STATE_DISABLED | `uint8` | 0 | +| FAILSAFE_DEFER_STATE_ENABLED | `uint8` | 1 | +| FAILSAFE_DEFER_STATE_WOULD_FAILSAFE | `uint8` | 2 | Failsafes deferred, but would trigger a failsafe | ## Constants diff --git a/docs/en/neural_networks/mc_neural_network_control.md b/docs/en/neural_networks/mc_neural_network_control.md index 0c1cc83b57..8f4c21e3b0 100644 --- a/docs/en/neural_networks/mc_neural_network_control.md +++ b/docs/en/neural_networks/mc_neural_network_control.md @@ -17,7 +17,7 @@ Note that after training the network you will need to update and rebuild PX4. TLFM is a mature inference library intended for use on embedded devices. It has support for several architectures, so there is a high likelihood that you can build it for the board you want to use. -If not, there are other possible NN frameworks, such as [Eigen](https://eigen.tuxfamily.org/index.php?title=Main_Page) and [Executorch](https://pytorch.org/executorch-overview). +If not, there are other possible NN frameworks, such as [Eigen](https://eigen.tuxfamily.org/index.php?title=Main_Page) and [Executorch](https://docs.pytorch.org/executorch/stable/intro-overview.html). This document explains how you can include the module in your PX4 build, and provides a broad overview of how it works. The other documents in the section provide more information about the integration, allowing you to replace the NN with a version trained on different data, or even to replace the TLFM library altogether. diff --git a/docs/en/payloads/generic_actuator_control.md b/docs/en/payloads/generic_actuator_control.md index 82bd1f4df9..305dc52cc2 100644 --- a/docs/en/payloads/generic_actuator_control.md +++ b/docs/en/payloads/generic_actuator_control.md @@ -66,7 +66,7 @@ To use a generic actuator in a mission: ## MAVSDK (Example script) -The following [MAVSDK](https://mavsdk.mavlink.io/main/en/index.html) [example code](https://github.com/mavlink/MAVSDK/blob/main/examples/set_actuator/set_actuator.cpp) shows how to trigger payload release using the MAVSDK Action plugin's [`set_actuator()`](https://mavsdk.mavlink.io/main/en/cpp/api_reference/classmavsdk_1_1_action.html#classmavsdk_1_1_action_1ad30beac27f05c62dcf6a3d0928b86e4c) method. +The following [MAVSDK](https://mavsdk.mavlink.io/main/en/index.html) [example code](https://github.com/mavlink/MAVSDK/blob/main/cpp/examples/set_actuator/set_actuator.cpp) shows how to trigger payload release using the MAVSDK Action plugin's [`set_actuator()`](https://mavsdk.mavlink.io/main/en/cpp/api_reference/classmavsdk_1_1_action.html#classmavsdk_1_1_action_1ad30beac27f05c62dcf6a3d0928b86e4c) method. The `set_actuator()` index values map to the MAVLink payload outputs defined for your airframe. diff --git a/docs/en/peripherals/adsb_flarm.md b/docs/en/peripherals/adsb_flarm.md index 9cf011bf39..1e5207cc5d 100644 --- a/docs/en/peripherals/adsb_flarm.md +++ b/docs/en/peripherals/adsb_flarm.md @@ -1,6 +1,6 @@ # ADS-B/FLARM/UTM Receivers: Air Traffic Avoidance -PX4 supports simple air traffic avoidance in [missions](../flying/missions.md) using [ADS-B](https://en.wikipedia.org/wiki/Automatic_dependent_surveillance_%E2%80%93_broadcast), [FLARM](https://en.wikipedia.org/wiki/FLARM), or [UTM](https://www.faa.gov/uas/research_development/traffic_management) transponders that use the standard MAVLink interfaces. +PX4 supports simple air traffic avoidance in [missions](../flying/missions.md) using [ADS-B](https://en.wikipedia.org/wiki/Automatic_dependent_surveillance_%E2%80%93_broadcast), [FLARM](https://en.wikipedia.org/wiki/FLARM), or [UTM](https://www.faa.gov/uas/advanced_operations/traffic_management) transponders that use the standard MAVLink interfaces. If a potential collision is detected, PX4 can _warn_, immediately [land](../flight_modes_mc/land.md), or [return](../flight_modes_mc/return.md) (depending on the value of [NAV_TRAFF_AVOID](#NAV_TRAFF_AVOID)). diff --git a/docs/en/peripherals/frsky_telemetry.md b/docs/en/peripherals/frsky_telemetry.md index 74326ca07a..42da72065f 100644 --- a/docs/en/peripherals/frsky_telemetry.md +++ b/docs/en/peripherals/frsky_telemetry.md @@ -213,8 +213,8 @@ You will need connectors that are appropriate for your autopilot (e.g. _JST-GH c The Pixracer includes electronics for converting between S.PORT and UART signals, but for other boards you will need a UART to S.PORT adapter. These can be sourced from: -- [FrSky FUL-1](https://www.frsky-rc.com/product/ful-1/): [unmannedtech.co.uk](https://www.unmannedtechshop.co.uk/frsky-transmitter-receiver-upgrade-adapter-ful-1/) -- SPC: [getfpv.com](https://www.getfpv.com/frsky-smart-port-converter-cable.html), [unmannedtechshop.co.uk](https://www.unmannedtechshop.co.uk/frsky-smart-port-converter-spc/) +- [FrSky FUL-1](https://www.frsky-rc.com/product/ful-1/): [unmannedtech.co.uk](https://www.unmannedtechshop.co.uk/products/frsky-transmitter-receiver-upgrade-adapter-ful-1) +- SPC: [getfpv.com](https://www.getfpv.com/frsky-smart-port-converter-cable.html), [unmannedtechshop.co.uk](https://www.unmannedtechshop.co.uk/products/frsky-smart-port-converter-spc) More information about the connections for different boards is given below. diff --git a/docs/en/peripherals/vertiq.md b/docs/en/peripherals/vertiq.md index 224118a8bf..dc81c1a377 100644 --- a/docs/en/peripherals/vertiq.md +++ b/docs/en/peripherals/vertiq.md @@ -6,7 +6,7 @@ With closed loop velocity control for the fastest response times available, clas ![Vertiq Module Lineup](../../assets/peripherals/esc_vertiq/vertiq_esc_lineup.jpg) -All Vertiq modules support traditional [PWM input, DShot, OneShot, and Multishot communication protocols](https://iqmotion.readthedocs.io/en/latest/communication_protocols/hobby_protocol.html). Vertiq's larger modules also support [DroneCAN control](https://iqmotion.readthedocs.io/en/latest/communication_protocols/dronecan_protocol.html). +All Vertiq modules support traditional [PWM input, DShot, OneShot, and Multishot communication protocols](https://iqmotion.readthedocs.io/en/latest/communication_protocols/timer_based_protocol.html). Vertiq's larger modules also support [DroneCAN control](https://iqmotion.readthedocs.io/en/latest/communication_protocols/dronecan_protocol.html). ## Where to Buy diff --git a/docs/en/releases/1.16.md b/docs/en/releases/1.16.md index 42019f52d1..5cd1175dd1 100644 --- a/docs/en/releases/1.16.md +++ b/docs/en/releases/1.16.md @@ -55,7 +55,7 @@ Please continue reading for [upgrade instructions](#upgrade-guide). - [Battery level estimation improvements](../config/battery.md). ([PX4-Autopilot#23205](https://github.com/PX4/PX4-Autopilot/pull/23205)). - [Voltage-based estimation with load compensation](../config/battery.md#voltage-based-estimation-with-load-compensation) now uses a real-time estimate of the internal resistance of the battery to compensate voltage drops under load (with increased current), providing a better capacity estimate than with the raw measured voltage. - Thrust-based load compensation has been removed (along with the `BATn_V_LOAD_DROP` parameters, where `n` is the battery number). -- The [Position (GNSS) loss failsafe](../config/safety.md#position-gnss-loss-failsafe) configurable delay (`COM_POS_FS_DELAY`) has been removed. +- The [Position (GNSS) loss failsafe](../config/safety.md#position-loss-failsafe) configurable delay (`COM_POS_FS_DELAY`) has been removed. The failsafe will now trigger 1 second after position has been lost. ([PX4-Autopilot#24063](https://github.com/PX4/PX4-Autopilot/pull/24063)). - [Log Encryption](../dev_log/log_encryption.md) now generates an encrypted log that contains the public-key-encrypted symmetric key that can be used to decrypt it, instead of putting the key into a separate file. This makes log decryption much easier, as there is no need to download or identify a separate key file. diff --git a/docs/en/ros/external_position_estimation.md b/docs/en/ros/external_position_estimation.md index ec31ef5e44..0085decad7 100644 --- a/docs/en/ros/external_position_estimation.md +++ b/docs/en/ros/external_position_estimation.md @@ -253,7 +253,7 @@ This might break the _tf_ tree. ### OptiTrack MoCap -The following steps explain how to feed position estimates from an [OptiTrack](https://optitrack.com/applications/robotics/) system to PX4. +The following steps explain how to feed position estimates from an [OptiTrack](https://optitrack.com/applications/robotics) system to PX4. It is assumed that the MoCap system is calibrated. See [this video](https://www.youtube.com/watch?v=cNZaFEghTBU) for a tutorial on the calibration process. diff --git a/docs/en/ros/mavros_custom_messages.md b/docs/en/ros/mavros_custom_messages.md index 3549abea35..a9956836e9 100644 --- a/docs/en/ros/mavros_custom_messages.md +++ b/docs/en/ros/mavros_custom_messages.md @@ -14,7 +14,7 @@ However these steps are fairly general and so it should work with other distros/ ## MAVROS Installation -Follow _Source Installation_ instructions from [mavlink/mavros](https://github.com/mavlink/mavros/blob/master/mavros/index.md) to install "ROS Kinetic". +Follow _Source Installation_ instructions from [mavlink/mavros](https://github.com/mavlink/mavros/blob/master/mavros/README.md) to install "ROS Kinetic". ## MAVROS diff --git a/docs/en/ros2/px4_ros2_navigation_interface.md b/docs/en/ros2/px4_ros2_navigation_interface.md index 4533ce30bd..ef94186246 100644 --- a/docs/en/ros2/px4_ros2_navigation_interface.md +++ b/docs/en/ros2/px4_ros2_navigation_interface.md @@ -101,7 +101,7 @@ The following steps are required to get started: To send a position measurement, you populate the position struct with the values you have measured. Then call the interface's update function with that struct as the argument. -For a basic example of how to use this interface, check out the [examples](https://github.com/Auterion/px4-ros2-interface-lib/tree/main/examples/cpp/navigation) in the `Auterion/px4-ros2-interface-lib` repository, such as [examples/cpp/navigation/local_navigation](https://github.com/Auterion/px4-ros2-interface-lib/blob/main/examples/cpp/navigation/local_navigation/include/local_navigation.hpp) or [examples/cpp/navigation/global_navigation](https://github.com/Auterion/px4-ros2-interface-lib/blob/main/examples/cpp/navigation/local_navigation/include/global_navigation.hpp). +For a basic example of how to use this interface, check out the [examples](https://github.com/Auterion/px4-ros2-interface-lib/tree/main/examples/cpp/navigation) in the `Auterion/px4-ros2-interface-lib` repository, such as [examples/cpp/navigation/local_navigation](https://github.com/Auterion/px4-ros2-interface-lib/blob/main/examples/cpp/navigation/local_navigation/include/local_navigation.hpp) or [examples/cpp/navigation/global_navigation](https://github.com/Auterion/px4-ros2-interface-lib/blob/main/examples/cpp/navigation/global_navigation/include/global_navigation.hpp). ### Local Position Updates @@ -220,7 +220,7 @@ private: ### Global Position Updates -First ensure that the PX4 parameter [`EKF2_AGP_CTRL`](../advanced_config/parameter_reference.md#EKF2_AGP_CTRL) is properly configured to fuse external global measurements, by setting the appropriate bits to `true`: +First ensure that the PX4 [`EKF2_AGP_CTRLn`](../advanced_config/parameter_reference.md#EKF2_AGP0_CTRL) parameters are properly configured to fuse external global measurements, by setting the appropriate bits to `true`: - `0`: Horizontal position data - `1`: Vertical position data diff --git a/docs/en/sensor/airspeed.md b/docs/en/sensor/airspeed.md index c77b680ebb..e0db4f4ba0 100644 --- a/docs/en/sensor/airspeed.md +++ b/docs/en/sensor/airspeed.md @@ -12,7 +12,7 @@ Recommended digital airspeed sensors include: - Based on [Pitot tube](https://en.wikipedia.org/wiki/Pitot_tube) - I2C MEAS Spec series (e.g. [MS4525DO](https://www.te.com/usa-en/product-CAT-BLPS0002.html), [MS5525](https://www.te.com/usa-en/product-CAT-BLPS0003.html)) - - [mRo I2C Airspeed Sensor JST-GH MS4525DO](https://store.3dr.com/mro-i2c-airspeed-sensor-jst-gh-ms4525do/) (3DR store) + - [mRo I2C Airspeed Sensor JST-GH MS4525DO](https://store.3dr.com/airspeed-sensor-jst-gh-ms4525do/) (3DR store) - [Digital Differential Airspeed Sensor Kit - MS4525DO](https://store-drotek.com/793-digital-differential-airspeed-sensor-kit-.html) (Drotek). - [Holybro Digital Air Speed Sensor - MS4525DO](https://holybro.com/collections/sensors/products/digital-air-speed-sensor-ms4525do) - [Holybro Digital Air Speed Sensor - MS5525DSO](https://holybro.com/collections/sensors/products/digital-air-speed-sensor-ms5525dso) diff --git a/docs/en/sensor/airspeed_tfslot.md b/docs/en/sensor/airspeed_tfslot.md index 413911ecbd..c95b404ff7 100644 --- a/docs/en/sensor/airspeed_tfslot.md +++ b/docs/en/sensor/airspeed_tfslot.md @@ -5,7 +5,7 @@ ![TFSLOT and TFSLOT WITH TFASPDIMU02 board](../../assets/hardware/sensors/airspeed/tsflot_compose.jpg) [TFSLOT](https://github.com/ThunderFly-aerospace/TFSLOT01) is an airspeed sensor based on venturi effects. -In the basic configuration, the TFSLOT is equipped with the [TFASPDIMU02](https://github.com/ThunderFly-aerospace/TFASPDIMU02) sensor board, which contains a differential pressure sensor ([Sensirion SDP3x series](https://sensirion.com/products/catalog/?filter_series=d1816d53-f5c8-47e3-ab47-818c3fd54259)) and a 9-axis motion tracking sensor ([ICM-20948](https://invensense.tdk.com/products/motion-tracking/9-axis/icm-20948/)). +In the basic configuration, the TFSLOT is equipped with the [TFASPDIMU02](https://github.com/ThunderFly-aerospace/TFASPDIMU02) sensor board, which contains a differential pressure sensor ([Sensirion SDP3x series](https://sensirion.com/products/catalog?filter_series=d1816d53-f5c8-47e3-ab47-818c3fd54259)) and a 9-axis motion tracking sensor ([ICM-20948](https://invensense.tdk.com/products/motion-tracking/9-axis/icm-20948/)). The IMU unit can be used as an external compass. - This design brings several advantages when used on small-scale and slow-flying UAVs. diff --git a/docs/en/sensor/grf_lidar.md b/docs/en/sensor/grf_lidar.md index 836596e026..4f48bc1884 100644 --- a/docs/en/sensor/grf_lidar.md +++ b/docs/en/sensor/grf_lidar.md @@ -55,8 +55,8 @@ The [parameters to change](../advanced_config/parameters.md) are listed in the t | Parameter | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | | [SENS_EN_GRF_CFG](../advanced_config/parameter_reference.md#SENS_EN_GRF_CFG) | Set to the serial port the sensor is connected to. | -| [GRF_UPDATE_CFG](../advanced_config/parameter_reference.md#GRF_UPDATE_CFG) | Set the update rate. | -| [GRF_SENS_MODEL](../advanced_config/parameter_reference.md#GRF_SENS_MODEL) | Set the update rate. | +| [GRF_RATE_CFG](../advanced_config/parameter_reference.md#GRF_RATE_CFG) | Set the update rate. | +| [GRF_SENS_MODEL](../advanced_config/parameter_reference.md#GRF_SENS_MODEL) | Set the sensor model to use. | ## Testing diff --git a/docs/en/sensor/inertial_navigation_systems.md b/docs/en/sensor/inertial_navigation_systems.md index bdf7f39b6d..ce3e32106f 100644 --- a/docs/en/sensor/inertial_navigation_systems.md +++ b/docs/en/sensor/inertial_navigation_systems.md @@ -49,5 +49,5 @@ Essentially it is an AHRS that also includes position/velocity estimation. ## Further Information -- [What is an Inertial Navigation System?](https://www.vectornav.com/resources/inertial-navigation-articles/what-is-an-ins) (VectorNav) +- [What is an Inertial Navigation System?](https://www.vectornav.com/resources/inertial-navigation-articles/what-is-an-ins) (VectorNav) - [Inertial Navigation Primer](https://www.vectornav.com/resources/inertial-navigation-primer) (VectorNav) diff --git a/docs/en/sensor/inertiallabs.md b/docs/en/sensor/inertiallabs.md index 2d677e0d53..45fc7197a0 100644 --- a/docs/en/sensor/inertiallabs.md +++ b/docs/en/sensor/inertiallabs.md @@ -21,8 +21,8 @@ The mode is configurable using a parameter. [Get technical support or send requests to sales team](https://inertiallabs.com/inertial-labs-inc/contact-inertial-labs-team/). Recommended sensors: -- [INS-U GNSS/INS](https://inertiallabs.com/ins-u-datasheet): Recommended for fixed-wing systems without hovering, where static heading is not necessary. -- [INS-DU DUAL GNSS/INS](https://inertiallabs.com/ins-du-datasheet): Recommended for multicopter systems where hovering and low dynamics requires the use of static heading. +- [INS-U GNSS/INS](https://inertiallabs.com/wp-content/uploads/2026/01/INS-U_INS-U-OEM_Datasheet_REV2.18_JAN2026.pdf): Recommended for fixed-wing systems without hovering, where static heading is not necessary. +- [INS-DU DUAL GNSS/INS](https://inertiallabs.com/wp-content/uploads/2025/12/INS-DU_INS-DU-OEM_Datasheet_REV1.00_DEC2025.pdf): Recommended for multicopter systems where hovering and low dynamics requires the use of static heading. ## Hardware Setup diff --git a/docs/en/sensor/lidar_lite.md b/docs/en/sensor/lidar_lite.md index 56162491fe..7c7bc4a5e1 100644 --- a/docs/en/sensor/lidar_lite.md +++ b/docs/en/sensor/lidar_lite.md @@ -6,7 +6,7 @@ LIDAR-Lite is a compact, high-performance optical distant measurement sensor sol ## Where to Buy -- [LIDAR-Lite v3](https://buy.garmin.com/en-AU/AU/p/557294) (5cm - 40m) +- [LIDAR-Lite v3](https://www.garmin.com/en-AU/p/557294/) (5cm - 40m) ## Pinouts diff --git a/docs/en/sensor/microstrain.md b/docs/en/sensor/microstrain.md index 9a6964180d..b969b18ea0 100644 --- a/docs/en/sensor/microstrain.md +++ b/docs/en/sensor/microstrain.md @@ -7,10 +7,10 @@ Widely used across industries like aerospace, robotics, industrial automation, a The driver currently supports the following hardware: -- [`MicroStrain CV7-AR`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/vertical-reference-units--vru-/3dm-cv7-ar): Inertial Measurement Unit (IMU) and Vertical Reference Unit (VRU) -- [`MicroStrain CV7-AHRS`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/attitude-and-heading-reference-systems--ahrs-/3dm-cv7-ahrs): Inertial Measurement Unit (IMU) and Attitude Heading Reference System (AHRS) -- [`MicroStrain CV7-INS`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-ins): Inertial Measurement Unit (IMU) and Inertial Navigation System (INS). -- [`MicroStrain CV7-GNSS/INS`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/inertial-navigation-systems--ins-/3dm-cv7-gnss-ins): Inertial Measurement Unit (IMU) and Inertial Navigation System (INS) combined with dual multiband (GNSS) receivers. +- [`MicroStrain CV7-AR`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/vertical-reference/3dm-cv7-ar): Inertial Measurement Unit (IMU) and Vertical Reference Unit (VRU) +- [`MicroStrain CV7-AHRS`](https://www.microstrain.com/inertial-sensors/3dm-cv7-ahrs): Inertial Measurement Unit (IMU) and Attitude Heading Reference System (AHRS) +- [`MicroStrain CV7-INS`](https://www.microstrain.com/inertial-sensors/3dm-cv7-ins): Inertial Measurement Unit (IMU) and Inertial Navigation System (INS). +- [`MicroStrain CV7-GNSS/INS`](https://www.hbkworld.com/en/products/transducers/inertial-sensors/navigation/3dm-cv7-gnss-ins): Inertial Measurement Unit (IMU) and Inertial Navigation System (INS) combined with dual multiband (GNSS) receivers. PX4 can use these sensors to provide raw IMU data for EKF2 or to replace EKF2 as an external INS. For more information, including user manuals and datasheets, please refer to the sensors product page. @@ -18,7 +18,7 @@ For more information, including user manuals and datasheets, please refer to the ## Where to Buy MicroStrain sensors can be purchased through HBK's official [MicroStrain product page](https://www.hbkworld.com/en/products/transducers/inertial-sensors) or through authorized distributors globally. -For large orders, custom requirements, or technical inquiries, reach out directly to [sales](https://www.hbkworld.com/en/contact-us/contact-sales-microstrain) +For large orders, custom requirements, or technical inquiries, reach out directly to [sales](https://www.hbkworld.com/en/contact-us) ## Hardware Setup diff --git a/docs/en/sensor/optical_flow.md b/docs/en/sensor/optical_flow.md index f76a40b4bb..ddc8a48297 100644 --- a/docs/en/sensor/optical_flow.md +++ b/docs/en/sensor/optical_flow.md @@ -71,7 +71,7 @@ It is used in a number of products, including some from: Bitcraze, Tindie, Hex, ### Other Cameras/Sensors It is also possible to use a board/quad that has an integrated camera. -For this the [Optical Flow repo](https://github.com/PX4/OpticalFlow) can be used (see also [snap_cam](https://github.com/PX4/snap_cam)). +For this the [Optical Flow repo](https://github.com/PX4/PX4-OpticalFlow) can be used (see also [snap_cam](https://github.com/PX4/snap_cam)). ## Range Finders diff --git a/docs/en/sensor/rangefinders.md b/docs/en/sensor/rangefinders.md index 425b129241..90e1b6a0e9 100644 --- a/docs/en/sensor/rangefinders.md +++ b/docs/en/sensor/rangefinders.md @@ -93,7 +93,7 @@ It has a sensor range from (5cm - 40m) and can be connected to either PWM or I2C ### MaxBotix I2CXL-MaxSonar-EZ -The MaxBotix [I2CXL-MaxSonar-EZ](https://www.maxbotix.com/product-category/i2cxl-maxsonar-ez-products) range has a number of relatively short-ranged sonar based rangefinders that are suitable for assisted takeoff/landing and collision avoidance. +The MaxBotix [I2CXL-MaxSonar-EZ](https://maxbotix.com/collections/i2cxl-maxsonar-ez-products) range has a number of relatively short-ranged sonar based rangefinders that are suitable for assisted takeoff/landing and collision avoidance. These can be connected using an I2C port. The rangefinders are enabled using the parameter [SENS_EN_MB12XX](../advanced_config/parameter_reference.md#SENS_EN_MB12XX). @@ -163,7 +163,7 @@ Features: - [VL53L1CBV0FY-1](https://www.st.com/resource/en/datasheet/vl53l1.pdf) sensor - Input voltage sensor -- CAN connectors: 2 [UCANPHY Micro (JST-GH 4)](https://raccoonlabdev.github.io/docs/guide/wires/). +- CAN connectors: 2 [UCANPHY Micro (JST-GH 4)](https://docs.raccoonlab.co/guide/wires/). ## Configuration/Setup {#configuration} diff --git a/docs/en/sensor/sbgecom.md b/docs/en/sensor/sbgecom.md index 2115f1f4c1..60b79771af 100644 --- a/docs/en/sensor/sbgecom.md +++ b/docs/en/sensor/sbgecom.md @@ -2,7 +2,7 @@ [SBG-Systems](https://www.sbg-systems.com/) designs, manufactures, and support an extensive range of state-of-the-art inertial sensors such as Inertial Measurement Units (IMU), Attitude and Heading Reference Systems (AHRS), Inertial Navigation Systems with embedded GNSS (INS/GNSS), and so on. -PX4 supports [all SBG Systems products](https://www.sbg-systems.com/products/) and can use these as an [external INS](../sensor/inertial_navigation_systems.md) (bypassing/replacing the EKF2 estimator), or as a source of raw sensor data provided to the navigation estimator. +PX4 supports [all SBG Systems products](https://www.sbg-systems.com/) and can use these as an [external INS](../sensor/inertial_navigation_systems.md) (bypassing/replacing the EKF2 estimator), or as a source of raw sensor data provided to the navigation estimator. ![Ellipse](../../assets/hardware/sensors/inertial/ellipse-inertial-navigation-system.png) @@ -17,7 +17,7 @@ SBG Systems products provide a range of benefits to PX4 users and can be integra The sbgECom PX4 driver is streamlined to provide a simple plug-and-play architecture, removing engineering obstacles and allowing the acceleration of the design, development, and launch of platforms to keep pace with the rapid rate of innovation. -The driver supports [all SBG Systems products](https://www.sbg-systems.com/products/). +The driver supports [all SBG Systems products](https://www.sbg-systems.com/). In particular the following systems are recommended: - **Pulse:** Recommended for fixed-wing systems without hovering, where static heading is not necessary. @@ -142,5 +142,5 @@ Published topics can be viewed using the `listener` command. ## Hardware Specifications -- [Product Briefs](https://www.sbg-systems.com/products/) +- [Product Briefs](https://www.sbg-systems.com/) - [Datasheets](https://www.sbg-systems.com/contact/#products) diff --git a/docs/en/sensor/sf45_rotating_lidar.md b/docs/en/sensor/sf45_rotating_lidar.md index 796c194440..39dc53a02b 100644 --- a/docs/en/sensor/sf45_rotating_lidar.md +++ b/docs/en/sensor/sf45_rotating_lidar.md @@ -12,7 +12,7 @@ You will need to [create and use a custom build](#add-the-driver-to-the-px4-buil ## LightWare Studio Setup -In the [LightWare Studio](https://www.lightwarelidar.com/resources-software) app set following values: +In the [LightWare Studio](https://lightwarelidar.com/resources-software/) app set following values: | Parameter | Description | | --------- | ----------- | diff --git a/docs/en/sensor/sfxx_lidar.md b/docs/en/sensor/sfxx_lidar.md index 2ca57d9972..ea17162b36 100644 --- a/docs/en/sensor/sfxx_lidar.md +++ b/docs/en/sensor/sfxx_lidar.md @@ -9,14 +9,14 @@ These are useful for applications including terrain following, precision hoverin The following models are supported by PX4, and can be connected to either the I2C or Serial bus (the tables below indicates what bus can be used for each model). -| Model | Range (m) | Bus | Description | -| ------------------------------------------------------- | --------- | ----------------- | ------------------------------------------------------------------------------------------ | -| [SF11/C](https://lightwarelidar.com/shop/sf11-c-100-m/) | 100 | Serial or I2C bus | -| [LW20/C](https://lightware.co.za/products/lw20-c-100-m) | 100 | I2C bus | Waterproofed (IP67) with servo for sense-and-avoid applications | -| [SF30/D](https://lightwarelidar.com/shop/sf30-d-200-m/) | 200 | I2C bus | Waterproofed (IP67) | -| [SF45/B](../sensor/sf45_rotating_lidar.md) | 50 | Serial | Rotary Lidar (Used for [Collision Prevention](../computer_vision/collision_prevention.md)) | -| [GRF250](../sensor/grf_lidar.md) | 250 | Serial or I2C | Gimbal Range Finder | -| [GRF500](../sensor/grf_lidar.md) | 500 | Serial or I2C | Gimbal Range Finder | +| Model | Range (m) | Bus | Description | +| ---------------------------------------------------------- | --------- | ----------------- | ------------------------------------------------------------------------------------------ | +| [SF11/C](https://lightwarelidar.com/shop/sf11-c-100-m/) | 100 | Serial or I2C bus | +| [LW20/C](https://lightwarelidar.com/products/lw20-c-100-m) | 100 | I2C bus | Waterproofed (IP67) with servo for sense-and-avoid applications | +| [SF30/D](https://lightwarelidar.com/shop/sf30-d-200-m/) | 200 | I2C bus | Waterproofed (IP67) | +| [SF45/B](../sensor/sf45_rotating_lidar.md) | 50 | Serial | Rotary Lidar (Used for [Collision Prevention](../computer_vision/collision_prevention.md)) | +| [GRF250](../sensor/grf_lidar.md) | 250 | Serial or I2C | Gimbal Range Finder | +| [GRF500](../sensor/grf_lidar.md) | 500 | Serial or I2C | Gimbal Range Finder | ::: details Discontinued diff --git a/docs/en/sensor/thunderfly_tachometer.md b/docs/en/sensor/thunderfly_tachometer.md index 779af6f29a..30f37a61b0 100644 --- a/docs/en/sensor/thunderfly_tachometer.md +++ b/docs/en/sensor/thunderfly_tachometer.md @@ -31,7 +31,7 @@ The LED lights up when the pulse input is grounded or exposed to logical 0, so y Hall-Effect sensors (magnetically operated) are ideal for harsh environments, where dirt, dust, and water can contact the sensed rotor. Many different hall effect sensors are commercially available. -For example, a [55100 Miniature Flange Mounting Proximity Sensor](https://m.littelfuse.com/media?resourcetype=datasheets&itemid=6d69d457-770e-46ba-9998-012c5e0aedd7&filename=littelfuse-hall-effect-sensors-55100-datasheet) is a good choice. +For example, a [55100 Miniature Flange Mounting Proximity Sensor](https://m.littelfuse.com/assetdocs/littelfuse-hall-effect-sensors-55100-datasheet?assetguid=6d69d457-770e-46ba-9998-012c5e0aedd7) is a good choice. ![Example of Hall effect probe](../../assets/hardware/sensors/tfrpm/hall_probe.jpg) diff --git a/docs/en/sensor/vectornav.md b/docs/en/sensor/vectornav.md index 9e1dae0f2d..bd1c12c1f8 100644 --- a/docs/en/sensor/vectornav.md +++ b/docs/en/sensor/vectornav.md @@ -76,7 +76,7 @@ IMU data should be published at 800Hz (400Hz if using VN-300). ## VectorNav Configuration -Definitions for all commands and registers referenced in this section can be found in the respective [VectorNav ICD](https://www.vectornav.com/resources/interface-control-documents). +Definitions for all commands and registers referenced in this section can be found in the respective [VectorNav ICD](https://www.vectornav.com/resources/interface-control-documents). Upon initialization, PX4 configures the VectorNav unit as follows: diff --git a/docs/en/sensor_bus/translator_tfi2cadt.md b/docs/en/sensor_bus/translator_tfi2cadt.md index 0c12106d78..002a47eedf 100644 --- a/docs/en/sensor_bus/translator_tfi2cadt.md +++ b/docs/en/sensor_bus/translator_tfi2cadt.md @@ -13,7 +13,7 @@ The module contains two pairs of connectors, each pair responsible for different ::: info [TFI2CADT01](https://github.com/ThunderFly-aerospace/TFI2CADT01) is designed as open-source hardware with GPLv3 license. -It is commercially available from [ThunderFly](https://www.thunderfly.cz/) company or from [Tindie eshop](https://www.tindie.com/products/26353/). +It is commercially available from [ThunderFly](https://www.thunderfly.cz/) company or from [Tindie eshop](https://www.tindie.com/products/thunderfly/tfi2cadt01-pixhawk-i2c-address-translator/). ::: ## Address Translation Method @@ -30,7 +30,7 @@ If you need your own value for address translation, changing the configuration r The tachometer sensor [TFRPM01](../sensor/thunderfly_tachometer.md) can be set to two different addresses using a solder jumper. If the autopilot has three buses, only 6 sensors can be connected and no bus remains free (2 available addresses \* 3 I2C ports). In some multicopters or VTOL solutions, there is a need to measure the RPM of 8 or more elements. -The [TFI2CADT01](https://www.tindie.com/products/26353/) is highly recommended in this case. +The [TFI2CADT01](https://www.tindie.com/products/thunderfly/tfi2cadt01-pixhawk-i2c-address-translator/) is highly recommended in this case. ![Multiple sensors](../../assets/peripherals/i2c_tfi2cadt/tfi2cadt01_multi_tfrpm01.jpg) diff --git a/docs/en/sim_gazebo_gz/gazebo_models.md b/docs/en/sim_gazebo_gz/gazebo_models.md index 34af877400..623cf8e711 100644 --- a/docs/en/sim_gazebo_gz/gazebo_models.md +++ b/docs/en/sim_gazebo_gz/gazebo_models.md @@ -45,7 +45,7 @@ You can connect a PX4-enabled vehicle to an instance of _gz-server_ using severa You can then drag and drop any PX4 model into your simulation. ::: info - These models are taken from an web-server called [Gazebo Fuel](https://app.gazebosim.org/dashboard), which essentially acts as an online database for all types of models and worlds that can be launched in Gazebo. + These models are taken from an web-server called [Gazebo Fuel](https://app.gazebosim.org/PX4), which essentially acts as an online database for all types of models and worlds that can be launched in Gazebo. ::: After dropping the vehicle of your choice into Gazebo, launch PX4 SITL with: diff --git a/docs/en/sim_gazebo_gz/index.md b/docs/en/sim_gazebo_gz/index.md index 8f4ed2fee8..4f6686acfc 100644 --- a/docs/en/sim_gazebo_gz/index.md +++ b/docs/en/sim_gazebo_gz/index.md @@ -5,7 +5,7 @@ Gazebo was previously known as "Gazebo Ignition" (while _Gazebo Classic_ was pre See the [official blog post](https://www.openrobotics.org/blog/2022/4/6/a-new-era-for-gazebo) for more information. ::: -[Gazebo](https://gazebosim.org/home) is an open source robotics simulator. +[Gazebo](https://gazebosim.org/docs/latest/getstarted/) is an open source robotics simulator. It supersedes the older [Gazebo Classic](../sim_gazebo_classic/index.md) simulator, and is the only supported version of Gazebo for Ubuntu 22.04 and onwards. **Supported Vehicles:** Quadrotor, Plane, VTOL, Rover diff --git a/docs/en/sim_sih/index.md b/docs/en/sim_sih/index.md index adbcff61ae..07312cca95 100644 --- a/docs/en/sim_sih/index.md +++ b/docs/en/sim_sih/index.md @@ -314,7 +314,7 @@ For SIH as SITL (no FC): - `param set-default SENS_EN_MAGSIM 1` - `param set-default SENS_EN_ARSPDSIM 1` (if it is a fixed-wing or VTOL airframe with airspeed sensor) -For specific examples see the `_sihsim_` airframes in [ROMFS/px4fmu_common/init.d-posix/airframes](https://github.com/PX4/PX4-Autopilot/blob/main/ROMFS/px4fmu_common/init.d-posix/airframes/) (SIH as SITL) and [ROMFS/px4fmu_common/init.d/airframes](https://github.com/PX4/PX4-Autopilot/tree/main/ROMFS/px4fmu_common/init.d/airframes) (SIH on FC). +For specific examples see the `_sihsim_` airframes in [ROMFS/px4fmu_common/init.d-posix/airframes](https://github.com/PX4/PX4-Autopilot/tree/main/ROMFS/px4fmu_common/init.d-posix/airframes) (SIH as SITL) and [ROMFS/px4fmu_common/init.d/airframes](https://github.com/PX4/PX4-Autopilot/tree/main/ROMFS/px4fmu_common/init.d/airframes) (SIH on FC). ## Controlling Actuators in SIH diff --git a/docs/en/simulation/index.md b/docs/en/simulation/index.md index 9951cd4fde..e3b38c4277 100644 --- a/docs/en/simulation/index.md +++ b/docs/en/simulation/index.md @@ -67,7 +67,7 @@ The messages are described below (see links for specific detail). -PX4 directly uses the [Gazebo API](https://gazebosim.org/docs) to interface with [Gazebo](../sim_gazebo_gz/index.md) and MAVlink is not required. +PX4 directly uses the [Gazebo API](https://gazebosim.org/docs/) to interface with [Gazebo](../sim_gazebo_gz/index.md) and MAVlink is not required. ## Default PX4 MAVLink UDP Ports @@ -209,7 +209,7 @@ For setup information see the _QGroundControl User Guide_: PX4 supports capture of both still images and video from within the [Gazebo Classic](../sim_gazebo_classic/index.md) simulated environment. This can be enabled/set up as described in [Gazebo Glassic > Video Streaming](../sim_gazebo_classic/index.md#video-streaming). -The simulated camera is a gazebo classic plugin that implements the [MAVLink Camera Protocol](https://mavlink.io/en/protocol/camera.html) . +The simulated camera is a gazebo classic plugin that implements the [MAVLink Camera Protocol](https://mavlink.io/en/services/camera.html) . PX4 connects/integrates with this camera in _exactly the same way_ as it would with any other MAVLink camera: 1. [TRIG_INTERFACE](../advanced_config/parameter_reference.md#TRIG_INTERFACE) must be set to `3` to configure the camera trigger driver for use with a MAVLink camera diff --git a/docs/en/smart_batteries/rotoye_batmon.md b/docs/en/smart_batteries/rotoye_batmon.md index a50eba58e2..2b8963a818 100644 --- a/docs/en/smart_batteries/rotoye_batmon.md +++ b/docs/en/smart_batteries/rotoye_batmon.md @@ -1,6 +1,6 @@ # Rotoye Batmon -[Rotoye Batmon](https://rotoye.com/batmon/) is a kit for adding smart battery functionality to off-the-shelf Lithium-Ion and LiPo batteries. +[Rotoye Batmon](https://shop.rotoye.com/batmon/) is a kit for adding smart battery functionality to off-the-shelf Lithium-Ion and LiPo batteries. It can be purchased as a standalone unit or as part of a factory-assembled smart-battery. ![Rotoye Batmon Board](../../assets/hardware/smart_batteries/rotoye_batmon/smart-battery-rotoye.jpg) @@ -9,7 +9,7 @@ It can be purchased as a standalone unit or as part of a factory-assembled smart ## Where to Buy -[Rotoye Store](https://rotoye.com/batmon/): Batmon kits, custom smart-batteries, and accessories +[Rotoye Store](https://shop.rotoye.com/batmon/): Batmon kits, custom smart-batteries, and accessories ## Wiring/Connections diff --git a/docs/en/software_update/stm32_bootloader.md b/docs/en/software_update/stm32_bootloader.md index cbb0d2648d..fac2fb498e 100644 --- a/docs/en/software_update/stm32_bootloader.md +++ b/docs/en/software_update/stm32_bootloader.md @@ -62,7 +62,7 @@ arm-none-eabi-gdb ### J-Link -These instructions are for the [J-Link GDB server](https://www.segger.com/jlink-gdb-server.html). +These instructions are for the [J-Link GDB server](https://www.segger.com/products/debug-probes/j-link/tools/j-link-gdb-server/about-j-link-gdb-server/). #### Prerequisites diff --git a/docs/en/telemetry/cuav_p8_radio.md b/docs/en/telemetry/cuav_p8_radio.md index a20873b889..f8440a664d 100644 --- a/docs/en/telemetry/cuav_p8_radio.md +++ b/docs/en/telemetry/cuav_p8_radio.md @@ -19,7 +19,7 @@ It supports multiple modes such as point-to-point, point-to-multipoint, and rela ## Where to Buy -- [CUAV store](https://www.cuav.net/en/p8-2/) +- [CUAV store](https://www.cuav.net/en/p8-en/) - [CUAV alibaba](https://www.alibaba.com/product-detail/Free-shipping-CUAV-UAV-P8-Radio_1600324379418.html?spm=a2747.manage.0.0.2dca71d2bY4B0M) ## PX4 Configuration @@ -61,6 +61,6 @@ CUAV P8 Radio does not support power supply from the flight controller, it needs ## More information -[P8 manual](http://manual.cuav.net/data-transmission/p8-radio/p8-user-manual-en.pdf) +[P8 manual](https://manual.cuav.net/data-transmission/p8-radio/p8_user_manual_cn.pdf) [CUAV P8 Radio](https://doc.cuav.net/data-transmission/p8-radio/en/) (Official Guide)