# Modules Reference: Driver Subcategories: - [Adc](modules_driver_adc.md) - [Airspeed Sensor](modules_driver_airspeed_sensor.md) - [Baro](modules_driver_baro.md) - [Camera](modules_driver_camera.md) - [Distance Sensor](modules_driver_distance_sensor.md) - [Imu](modules_driver_imu.md) - [Ins](modules_driver_ins.md) - [Magnetometer](modules_driver_magnetometer.md) - [Optical Flow](modules_driver_optical_flow.md) - [Radio Control](modules_driver_radio_control.md) - [Rpm Sensor](modules_driver_rpm_sensor.md) - [Transponder](modules_driver_transponder.md) ## atxxxx Source: [drivers/osd/atxxxx](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/osd/atxxxx) ### Description OSD driver for the ATXXXX chip that is mounted on the OmnibusF4SD board for example. It can be enabled with the OSD_ATXXXX_CFG parameter. ### Usage {#atxxxx_usage} ``` atxxxx [arguments...] Commands: start [-s] Internal SPI bus(es) [-S] External SPI bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-c ] chip-select pin (for internal SPI) or index (for external SPI) [-m ] SPI mode [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) stop status print status info ``` ## auterion_autostarter Source: [drivers/auterion_autostarter](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/auterion_autostarter) ### Description Driver for starting and auto-detecting different power monitors. ### Usage {#auterion_autostarter_usage} ``` auterion_autostarter [arguments...] Commands: start stop status print status info ``` ## batmon Source: [drivers/smart_battery/batmon](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/smart_battery/batmon) ### Description Driver for SMBUS Communication with BatMon enabled smart-battery Setup/usage information: https://rotoye.com/batmon-tutorial/ ### Examples To start at address 0x0B, on bus 4 ``` batmon start -X -a 11 -b 4 ``` ### Usage {#batmon_usage} ``` batmon [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 11 man_info Prints manufacturer info. suspend Suspends the driver from rescheduling the cycle. resume Resumes the driver from suspension. stop status print status info ``` ## batt_smbus Source: [drivers/batt_smbus](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/batt_smbus) ### Description Smart battery driver for the BQ40Z50 fuel gauge IC. ### Examples To write to flash to set parameters. address, number_of_bytes, byte0, ... , byteN ``` batt_smbus -X write_flash 19069 2 27 0 ``` ### Usage {#batt_smbus_usage} ``` batt_smbus [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 11 man_info Prints manufacturer info. unseal Unseals the devices flash memory to enable write_flash commands. seal Seals the devices flash memory to disable write_flash commands. suspend Suspends the driver from rescheduling the cycle. resume Resumes the driver from suspension. write_flash Writes to flash. The device must first be unsealed with the unseal command. [address] The address to start writing. [number of bytes] Number of bytes to send. [data[0]...data[n]] One byte of data at a time separated by spaces. stop status print status info ``` ## bst Source: [drivers/telemetry/bst](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/telemetry/bst) ### Usage {#bst_usage} ``` bst [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 118 stop status print status info ``` ## dshot Source: [drivers/dshot](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/dshot) ### Description This is the DShot output driver. It can be used as drop-in replacement to use DShot as ESC communication protocol instead of PWM. It supports: - DShot150, DShot300, DShot600 - telemetry via separate UART and publishing as esc_status message ### Usage {#dshot_usage} ``` dshot [arguments...] Commands: start telemetry Enable Telemetry on a UART -d UART device values: [-x] Swap RX/TX pins stop status print status info ``` ## fake_gps Source: [examples/fake_gps](https://github.com/PX4/PX4-Autopilot/tree/main/src/examples/fake_gps) ### Description ### Usage {#fake_gps_usage} ``` fake_gps [arguments...] Commands: start stop status print status info ``` ## fake_imu Source: [examples/fake_imu](https://github.com/PX4/PX4-Autopilot/tree/main/src/examples/fake_imu) ### Description ### Usage {#fake_imu_usage} ``` fake_imu [arguments...] Commands: start stop status print status info ``` ## fake_magnetometer Source: [examples/fake_magnetometer](https://github.com/PX4/PX4-Autopilot/tree/main/src/examples/fake_magnetometer) ### Description Publish the earth magnetic field as a fake magnetometer (sensor_mag). Requires vehicle_attitude and vehicle_gps_position. ### Usage {#fake_magnetometer_usage} ``` fake_magnetometer [arguments...] Commands: start stop status print status info ``` ## ft_technologies_serial Source: [drivers/wind_sensor/ft_technologies](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/wind_sensor/ft_technologies) ### Description Serial bus driver for the FT Technologies Digital Wind Sensor FT742. This driver is required to operate alongside a RS485 to UART signal transfer module. Most boards are configured to enable/start the driver on a specified UART using the SENS_FTX_CFG parameter. ### Examples Attempt to start driver on a specified serial device. ``` ft_technologies_serial start -d /dev/ttyS1 ``` Stop driver ``` ft_technologies_serial stop ``` ### Usage {#ft_technologies_serial_usage} ``` ft_technologies_serial [arguments...] Commands: start Start driver -d Serial device stop Stop driver ``` ## gimbal Source: [modules/gimbal](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/gimbal) ### Description Mount/gimbal Gimbal control driver. It maps several different input methods (eg. RC or MAVLink) to a configured output (eg. AUX channels or MAVLink). Documentation how to use it is on the [gimbal_control](../advanced/gimbal_control.md) page. ### Examples Test the output by setting a angles (all omitted axes are set to 0): ``` gimbal test pitch -45 yaw 30 ``` ### Usage {#gimbal_usage} ``` gimbal [arguments...] Commands: start status primary-control Set who is in control of gimbal MAVLink system ID and MAVLink component ID test Test the output: set a fixed angle for one or multiple axes (gimbal must be running) roll|pitch|yaw Specify an axis and an angle in degrees rollrate|pitchrate|yawrate Specify an axis and an angle rate in degrees / second stop status print status info ``` ## gps Source: [drivers/gps](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/gps) ### Description GPS driver module that handles the communication with the device and publishes the position via uORB. It supports multiple protocols (device vendors) and by default automatically selects the correct one. The module supports a secondary GPS device, specified via `-e` parameter. The position will be published on the second uORB topic instance, but it's currently not used by the rest of the system (however the data will be logged, so that it can be used for comparisons). ### Implementation There is a thread for each device polling for data. The GPS protocol classes are implemented with callbacks so that they can be used in other projects as well (eg. QGroundControl uses them too). ### Examples Starting 2 GPS devices (the main GPS on /dev/ttyS3 and the secondary on /dev/ttyS4): ``` gps start -d /dev/ttyS3 -e /dev/ttyS4 ``` Initiate warm restart of GPS device ``` gps reset warm ``` ### Usage {#gps_usage} ``` gps [arguments...] Commands: start [-d ] GPS device values: , default: /dev/ttyS3 [-b ] Baudrate (can also be p:) default: 0 [-e ] Optional secondary GPS device values: [-g ] Baudrate (secondary GPS, can also be p:) default: 0 [-i ] GPS interface values: spi|uart, default: uart [-j ] secondary GPS interface values: spi|uart, default: uart [-p ] GPS Protocol (default=auto select) values: ubx|mtk|ash|eml|fem|nmea stop status print status info reset Reset GPS device cold|warm|hot Specify reset type ``` ## gz_bridge Source: [modules/simulation/gz_bridge](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/simulation/gz_bridge) ### Description ### Usage {#gz_bridge_usage} ``` gz_bridge [arguments...] Commands: start [-w ] World name -n Model name stop status print status info ``` ## ina220 Source: [drivers/power_monitor/ina220](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/power_monitor/ina220) ### Description Driver for the INA220 power monitor. Multiple instances of this driver can run simultaneously, if each instance has a separate bus OR I2C address. For example, one instance can run on Bus 2, address 0x41, and one can run on Bus 2, address 0x43. If the INA220 module is not powered, then by default, initialization of the driver will fail. To change this, use the -f flag. If this flag is set, then if initialization fails, the driver will keep trying to initialize again every 0.5 seconds. With this flag set, you can plug in a battery after the driver starts, and it will work. Without this flag set, the battery must be plugged in before starting the driver. ### Usage {#ina220_usage} ``` ina220 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 65 [-k] if initialization (probing) fails, keep retrying periodically [-t ] battery index for calibration values (1 or 3) default: 1 [-T ] Type values: VBATT|VREG, default: VBATT stop status print status info ``` ## ina226 Source: [drivers/power_monitor/ina226](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/power_monitor/ina226) ### Description Driver for the INA226 power monitor. Multiple instances of this driver can run simultaneously, if each instance has a separate bus OR I2C address. For example, one instance can run on Bus 2, address 0x41, and one can run on Bus 2, address 0x43. If the INA226 module is not powered, then by default, initialization of the driver will fail. To change this, use the -f flag. If this flag is set, then if initialization fails, the driver will keep trying to initialize again every 0.5 seconds. With this flag set, you can plug in a battery after the driver starts, and it will work. Without this flag set, the battery must be plugged in before starting the driver. ### Usage {#ina226_usage} ``` ina226 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 65 [-k] if initialization (probing) fails, keep retrying periodically [-t ] battery index for calibration values (1 or 3) default: 1 stop status print status info ``` ## ina228 Source: [drivers/power_monitor/ina228](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/power_monitor/ina228) ### Description Driver for the INA228 power monitor. Multiple instances of this driver can run simultaneously, if each instance has a separate bus OR I2C address. For example, one instance can run on Bus 2, address 0x45, and one can run on Bus 2, address 0x45. If the INA228 module is not powered, then by default, initialization of the driver will fail. To change this, use the -f flag. If this flag is set, then if initialization fails, the driver will keep trying to initialize again every 0.5 seconds. With this flag set, you can plug in a battery after the driver starts, and it will work. Without this flag set, the battery must be plugged in before starting the driver. ### Usage {#ina228_usage} ``` ina228 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 69 [-k] if initialization (probing) fails, keep retrying periodically [-t ] battery index for calibration values (1 or 3) default: 1 stop status print status info ``` ## ina238 Source: [drivers/power_monitor/ina238](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/power_monitor/ina238) ### Description Driver for the INA238 power monitor. Multiple instances of this driver can run simultaneously, if each instance has a separate bus OR I2C address. For example, one instance can run on Bus 2, address 0x45, and one can run on Bus 2, address 0x45. If the INA238 module is not powered, then by default, initialization of the driver will fail. To change this, use the -f flag. If this flag is set, then if initialization fails, the driver will keep trying to initialize again every 0.5 seconds. With this flag set, you can plug in a battery after the driver starts, and it will work. Without this flag set, the battery must be plugged in before starting the driver. ### Usage {#ina238_usage} ``` ina238 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 69 [-k] if initialization (probing) fails, keep retrying periodically [-t ] battery index for calibration values (1 or 3) default: 1 stop status print status info ``` ## iridiumsbd Source: [drivers/telemetry/iridiumsbd](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/telemetry/iridiumsbd) ### Description IridiumSBD driver. Creates a virtual serial port that another module can use for communication (e.g. mavlink). ### Usage {#iridiumsbd_usage} ``` iridiumsbd [arguments...] Commands: start -d Serial device values: [-v] Enable verbose output test [s|read|AT ] Test command stop status print status info ``` ## irlock Source: [drivers/irlock](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/irlock) ### Usage {#irlock_usage} ``` irlock [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 84 stop status print status info ``` ## linux_pwm_out Source: [drivers/linux_pwm_out](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/linux_pwm_out) ### Description Linux PWM output driver with board-specific backend implementation. ### Usage {#linux_pwm_out_usage} ``` linux_pwm_out [arguments...] Commands: start stop status print status info ``` ## lsm303agr Source: [drivers/magnetometer/lsm303agr](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/magnetometer/lsm303agr) ### Usage {#lsm303agr_usage} ``` lsm303agr [arguments...] Commands: start [-s] Internal SPI bus(es) [-S] External SPI bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-c ] chip-select pin (for internal SPI) or index (for external SPI) [-m ] SPI mode [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-R ] Rotation default: 0 stop status print status info ``` ## mcp230xx Source: [lib/drivers/mcp_common](https://github.com/PX4/PX4-Autopilot/tree/main/src/lib/drivers/mcp_common) ### Usage {#mcp230xx_usage} ``` mcp230xx [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 39 [-D ] Direction (1=Input, 0=Output) default: 0 [-O ] Output default: 0 [-P ] Pullups default: 0 [-U ] Update Interval [ms] default: 0 [-M ] First minor number default: 0 stop status print status info ``` ## mcp9808 Source: [drivers/temperature_sensor/mcp9808](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/temperature_sensor/mcp9808) ### Usage {#mcp9808_usage} ``` mcp9808 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 24 stop status print status info ``` ## msp_osd Source: [drivers/osd/msp_osd](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/osd/msp_osd) ### Description MSP telemetry streamer ### Implementation Converts uORB messages to MSP telemetry packets ### Examples CLI usage example: ``` msp_osd ``` ### Usage {#msp_osd_usage} ``` msp_osd [arguments...] Commands: stop status print status info channel Change VTX channel ``` ## newpixel Source: [drivers/lights/neopixel](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/lights/neopixel) ### Description This module is responsible for driving interfasing to the Neopixel Serial LED ### Examples It is typically started with: ``` neopixel -n 8 ``` To drive all available leds. ### Usage {#newpixel_usage} ``` newpixel [arguments...] Commands: stop status print status info ``` ## paa3905 Source: [drivers/optical_flow/paa3905](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/optical_flow/paa3905) ### Usage {#paa3905_usage} ``` paa3905 [arguments...] Commands: start [-s] Internal SPI bus(es) [-S] External SPI bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-c ] chip-select pin (for internal SPI) or index (for external SPI) [-m ] SPI mode [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-Y ] custom yaw rotation (degrees) default: 0 stop status print status info ``` ## paw3902 Source: [drivers/optical_flow/paw3902](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/optical_flow/paw3902) ### Usage {#paw3902_usage} ``` paw3902 [arguments...] Commands: start [-s] Internal SPI bus(es) [-S] External SPI bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-c ] chip-select pin (for internal SPI) or index (for external SPI) [-m ] SPI mode [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-Y ] custom yaw rotation (degrees) default: 0 stop status print status info ``` ## pca9685_pwm_out Source: [drivers/pca9685_pwm_out](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/pca9685_pwm_out) ### Description This is a PCA9685 PWM output driver. It runs on I2C workqueue which is asynchronous with FC control loop, fetching the latest mixing result and write them to PCA9685 at its scheduling ticks. It can do full 12bits output as duty-cycle mode, while also able to output precious pulse width that can be accepted by most ESCs and servos. ### Examples It is typically started with: ``` pca9685_pwm_out start -X -a 0x40 -b 1 ``` ### Usage {#pca9685_pwm_out_usage} ``` pca9685_pwm_out [arguments...] Commands: start Start the task [-a ] 7-bits I2C address of PCA9685 values: , default: 0x40 [-b ] bus that pca9685 is connected to default: 1 stop status print status info ``` ## pmw3901 Source: [drivers/optical_flow/pmw3901](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/optical_flow/pmw3901) ### Usage {#pmw3901_usage} ``` pmw3901 [arguments...] Commands: start [-s] Internal SPI bus(es) [-S] External SPI bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-c ] chip-select pin (for internal SPI) or index (for external SPI) [-m ] SPI mode [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-R ] Rotation default: 0 stop status print status info ``` ## pps_capture Source: [drivers/pps_capture](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/pps_capture) ### Description This implements capturing PPS information from the GNSS module and calculates the drift between PPS and Real-time clock. ### Usage {#pps_capture_usage} ``` pps_capture [arguments...] Commands: start stop status print status info ``` ## pwm_out Source: [drivers/pwm_out](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/pwm_out) ### Description This module is responsible for driving the output pins. For boards without a separate IO chip (eg. Pixracer), it uses the main channels. On boards with an IO chip (eg. Pixhawk), it uses the AUX channels, and the px4io driver is used for main ones. ### Usage {#pwm_out_usage} ``` pwm_out [arguments...] Commands: start stop status print status info ``` ## pwm_out_sim Source: [modules/simulation/pwm_out_sim](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/simulation/pwm_out_sim) ### Description Driver for simulated PWM outputs. Its only function is to take `actuator_control` uORB messages, mix them with any loaded mixer and output the result to the `actuator_output` uORB topic. It is used in SITL and HITL. ### Usage {#pwm_out_sim_usage} ``` pwm_out_sim [arguments...] Commands: start Start the module [-m ] Mode values: hil|sim, default: sim stop status print status info ``` ## px4flow Source: [drivers/optical_flow/px4flow](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/optical_flow/px4flow) ### Usage {#px4flow_usage} ``` px4flow [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 66 stop status print status info ``` ## px4io Source: [drivers/px4io](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/px4io) ### Description Output driver communicating with the IO co-processor. ### Usage {#px4io_usage} ``` px4io [arguments...] Commands: start checkcrc Check CRC for a firmware file against current code on IO Firmware file update Update IO firmware [] Firmware file debug set IO debug level 0=disabled, 9=max verbosity bind DSM bind dsm2|dsmx|dsmx8 protocol sbus1_out enable sbus1 out sbus2_out enable sbus2 out supported Returns 0 if px4io is supported test_fmu_fail test: turn off IO updates test_fmu_ok re-enable IO updates stop status print status info ``` ## rgbled Source: [drivers/lights/rgbled](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/lights/rgbled) ### Usage {#rgbled_usage} ``` rgbled [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 85 stop status print status info ``` ## rgbled_aw2023 Source: [drivers/lights/rgbled_aw2023](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/lights/rgbled_aw2023) ### Usage {#rgbled_aw2023_usage} ``` rgbled_aw2023 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 69 stop status print status info ``` ## rgbled_is31fl3195 Source: [drivers/lights/rgbled_is31fl3195](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/lights/rgbled_is31fl3195) ### Usage {#rgbled_is31fl3195_usage} ``` rgbled_is31fl3195 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 84 [-o ] RGB PWM Assignment default: 123 [-i ] Current Band default: 0.5 stop status print status info ``` ## rgbled_lp5562 Source: [drivers/lights/rgbled_lp5562](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/lights/rgbled_lp5562) ### Description Driver for [LP5562](https://www.ti.com/product/LP5562) LED driver connected via I2C. This used in some GPS modules by Holybro for [PX4 status notification](../getting_started/led_meanings.md) The driver is included by default in firmware (KConfig key DRIVERS_LIGHTS_RGBLED_LP5562) and is always enabled. ### Usage {#rgbled_lp5562_usage} ``` rgbled_lp5562 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 48 [-u ] Current in mA default: 17.5 stop status print status info ``` ## roboclaw Source: [drivers/roboclaw](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/roboclaw) ### Description This driver communicates over UART with the [Roboclaw motor driver](https://www.basicmicro.com/motor-controller). It performs two tasks: - Control the motors based on the OutputModuleInterface. - Read the wheel encoders and publish the raw data in the `wheel_encoders` uORB topic In order to use this driver, the Roboclaw should be put into Packet Serial mode (see the linked documentation), and your flight controller's UART port should be connected to the Roboclaw as shown in the documentation. The driver needs to be enabled using the parameter `RBCLW_SER_CFG`, the baudrate needs to be set correctly and the address `RBCLW_ADDRESS` needs to match the ESC configuration. The command to start this driver is: `$ roboclaw start ` ### Usage {#roboclaw_usage} ``` roboclaw [arguments...] Commands: start stop status print status info ``` ## rpm_capture Source: [drivers/rpm_capture](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/rpm_capture) ### Usage {#rpm_capture_usage} ``` rpm_capture [arguments...] Commands: start stop status print status info ``` ## safety_button Source: [drivers/safety_button](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/safety_button) ### Description This module is responsible for the safety button. Pressing the safety button 3 times quickly will trigger a GCS pairing request. ### Usage {#safety_button_usage} ``` safety_button [arguments...] Commands: start stop status print status info ``` ## septentrio Source: [drivers/gnss/septentrio](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/gnss/septentrio) ### Description Driver for Septentrio GNSS receivers. It can automatically configure them and make their output available for the rest of the system. A secondary receiver is supported for redundancy, logging and dual-receiver heading. Septentrio receiver baud rates from 57600 to 1500000 are supported. If others are used, the driver will use 230400 and give a warning. ### Examples Use one receiver on port `/dev/ttyS0` and automatically configure it to use baud rate 230400: ``` septentrio start -d /dev/ttyS0 -b 230400 ``` Use two receivers, the primary on port `/dev/ttyS3` and the secondary on `/dev/ttyS4`, detect baud rate automatically and preserve them: ``` septentrio start -d /dev/ttyS3 -e /dev/ttyS4 ``` Perform warm reset of the receivers: ``` gps reset warm ``` ### Usage {#septentrio_usage} ``` septentrio [arguments...] Commands: start -d Primary receiver port values: [-b ] Primary receiver baud rate default: 0 [-e ] Secondary receiver port values: [-g ] Secondary receiver baud rate default: 0 stop status print status info reset Reset connected receiver cold|warm|hot Specify reset type ``` ## sht3x Source: [drivers/hygrometer/sht3x](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/hygrometer/sht3x) ### Description SHT3x Temperature and Humidity Sensor Driver by Senserion. ### Examples CLI usage example: ``` sht3x start -X ``` Start the sensor driver on the external bus ``` sht3x status ``` Print driver status ``` sht3x values ``` Print last measured values ``` sht3x reset ``` Reinitialize senzor, reset flags ### Usage {#sht3x_usage} ``` sht3x [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 68 [-k] if initialization (probing) fails, keep retrying periodically stop status print status info values Print actual data reset Reinitialize sensor ``` ## tap_esc Source: [drivers/tap_esc](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/tap_esc) ### Description This module controls the TAP_ESC hardware via UART. It listens on the actuator_controls topics, does the mixing and writes the PWM outputs. ### Implementation Currently the module is implemented as a threaded version only, meaning that it runs in its own thread instead of on the work queue. ### Example The module is typically started with: ``` tap_esc start -d /dev/ttyS2 -n <1-8> ``` ### Usage {#tap_esc_usage} ``` tap_esc [arguments...] Commands: start Start the task [-d ] Device used to talk to ESCs values: [-n ] Number of ESCs default: 4 ``` ## tmp102 Source: [drivers/temperature_sensor/tmp102](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/temperature_sensor/tmp102) ### Usage {#tmp102_usage} ``` tmp102 [arguments...] Commands: start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 72 stop status print status info ``` ## tone_alarm Source: [drivers/tone_alarm](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/tone_alarm) ### Description This module is responsible for the tone alarm. ### Usage {#tone_alarm_usage} ``` tone_alarm [arguments...] Commands: start stop status print status info ``` ## uwb Source: [drivers/uwb/uwb_sr150](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/uwb/uwb_sr150) ### Description Driver for NXP UWB_SR150 UWB positioning system. This driver publishes a `uwb_distance` message whenever the UWB_SR150 has a position measurement available. ### Example Start the driver with a given device: ``` uwb start -d /dev/ttyS2 ``` ### Usage {#uwb_usage} ``` uwb [arguments...] Commands: start -d Name of device for serial communication with UWB values: -b Baudrate for serial communication values: stop status ``` ## vertiq_io Source: [drivers/actuators/vertiq_io](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/actuators/vertiq_io) ### Usage {#vertiq_io_usage} ``` vertiq_io [arguments...] Commands: start UART device stop status print status info ``` ## voxl2_io Source: [drivers/voxl2_io](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/voxl2_io) ### Description This module is responsible for driving the output pins. For boards without a separate IO chip (eg. Pixracer), it uses the main channels. On boards with an IO chip (eg. Pixhawk), it uses the AUX channels, and the px4io driver is used for main ones. ### Usage {#voxl2_io_usage} ``` voxl2_io [arguments...] Commands: start Start the task -v Verbose messages -d Disable PWM -e Disable RC -p UART port calibrate_escs Calibrate ESCs min/max range enable_debug Enables driver debugging stop status print status info ``` ## voxl_esc Source: [drivers/actuators/voxl_esc](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/actuators/voxl_esc) ### Description This module is responsible for... ### Implementation By default the module runs on a work queue with a callback on the uORB actuator_controls topic. ### Examples It is typically started with: ``` todo ``` ### Usage {#voxl_esc_usage} ``` voxl_esc [arguments...] Commands: start Start the task reset Send reset request to ESC -i ESC ID, 0-3 version Send version request to ESC -i ESC ID, 0-3 version-ext Send extended version request to ESC -i ESC ID, 0-3 rpm Closed-Loop RPM test control request -i ESC ID, 0-3 -r RPM, -32,768 to 32,768 -n Command repeat count, 0 to INT_MAX -t Delay between repeated commands (microseconds), 0 to INT_MAX pwm Open-Loop PWM test control request -i ESC ID, 0-3 -r Duty Cycle value, 0 to 800 -n Command repeat count, 0 to INT_MAX -t Delay between repeated commands (microseconds), 0 to INT_MAX tone Send tone generation request to ESC -i ESC ID, 0-3 -p Period of sound, inverse frequency, 0-255 -d Duration of the sound, 0-255, 1LSB = 13ms -v Power (volume) of sound, 0-100 led Send LED control request -l Bitmask 0x0FFF (12 bits) - ESC0 (RGB) ESC1 (RGB) ESC2 (RGB) ESC3 (RGB) stop status print status info ``` ## voxlpm Source: [drivers/power_monitor/voxlpm](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/power_monitor/voxlpm) ### Usage {#voxlpm_usage} ``` voxlpm [arguments...] start [-I] Internal I2C bus(es) [-X] External I2C bus(es) [-b ] board-specific bus (default=all) (external SPI: n-th bus (default=1)) [-f ] bus frequency in kHz [-q] quiet startup (no message if no device found) [-a ] I2C address default: 68 [-T ] Type values: VBATT|P5VDC|P12VDC, default: VBATT [-k] if initialization (probing) fails, keep retrying periodically stop status print status info ``` ## vtx Source: [drivers/vtx](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/vtx) ### Description This module communicates with a VTX camera via serial port. It can be used to configure the camera settings and to control the camera's video transmission. Supported protocols are: - SmartAudio v1, v2.0, v2.1 - Tramp ### Usage {#vtx_usage} ``` vtx [arguments...] Commands: start -d VTX device values: Sets an entry in the mapping table: stop status print status info ``` ## vtxtable Source: [drivers/vtxtable](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/vtxtable) ### Description Manages the VTX frequency, power level and RC mapping table for VTX configuration. ### Usage {#vtxtable_usage} ``` vtxtable [arguments...] Commands: status Shows the current VTX table configuration. name Sets the VTX table name: bands Sets the number of bands: band Sets the band frequencies: <1-index> channels Sets the number of channels: powerlevels Sets number of power levels: powervalues Sets the power level values: powerlabels Sets the power level labels: <3 chars...> Sets an entry in the mapping table: <0-index> clear Clears the VTX table configuration. save Saves the VTX config to a file: load Loads the VTX config from a file: ``` ## zenoh Source: [modules/zenoh](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/zenoh) ### Description Zenoh demo bridge ### Usage {#zenoh_usage} ``` zenoh [arguments...] Commands: start stop status config ```