Mavlink Communications End of trail navigation bar

Table of Contents > QUARC > User's Guide > Communications

Multiwii Communications

Multiwii is a flight controller communications protocol originally developed for a project using the Nintendo Wiimote. Information about Multiwii may be found at the Multiwii website.

The Multiwii communications blockset may be found under the QUARC Targets/Communications/Multiwii library in the Simulink Library Browser. This blockset includes a large set of blocks designed to interface with Multiwii-based auto-pilot systems. These blocks are designed to be used with non-blocking I/O and are typically used with a serial port connection to the auto-pilot.

Warning

Note that most auto-pilots only support a subset of the blocks below. For example, an auto-pilot may return zero values for features it does not support, such as GPS.

Multiwii communications are established with a flight controller using the Multiwii Connect block. The underlying protocol to use for Multiwii is determined using the standard QUARC URI paradigm for communications. For Multiwii, communications with the flight controller is typically based on a serial connection to the QUARC target platform. Hence, a URI such as serial://localhost:1?baud=115200,word=8,parity=none,stop=1 might be used.

Multiwii is a command-request protocol, so blocks that receive data send a packet to the flight controller requesting the data. The Multiwii blocks use blocking I/O so that the data is available immediately. Be aware that if the baud rate is low then the response time may be slow. For example, at 115200 baud only 11 bytes may be sent or received each sample time when the sampling period is one millisecond and the serial link is 8N1.

The list of Multiwii blocks is enumerated below:

Multiwii Connect

Connects to the auto-pilot.

Multiwii Altitude

Reads the altitude of the aircraft.

Multiwii Analog

Reads the analog sensors, such as voltage and current measurements.

Multiwii Attitude

Reads the attitude of the aircraft, including its heading.

Multiwii Bind

Binds to satellites.

Multiwii Box Identifiers

Gets the box identifiers used by the auto-pilot.

Multiwii Calibration

Calibrates auto-pilot sensors.

Multiwii Computed GPS

Gets the GPS coordinates relative to the home location.

Multiwii EEPROM Write

Writes the settings to the auto-pilot EEPROM.

Multiwii Heading Lock

Sets a new heading lock reference.

Multiwii Identity

Gets information about the auto-pilot.

Multiwii IMU

Gets raw IMU sensor data from the auto-pilot.

Multiwii Motor Pins

Gets the motor pin indications from the auto-pilot.

Multiwii Names

Gets the names of the boxes or PID items from the auto-pilot.

Multiwii Read Actuators

Reads the commands for the servos or motors from the auto-pilot.

Multiwii Read Boxes

Reads the box items from the auto-pilot. Each word in the output array is a bitmask of activation switches.

Multiwii Read GPS

Reads the raw GPS data from the auto-pilot.

Multiwii Read Miscellaneous

Reads miscellaneous information from the auto-pilot, such as thresholds, triggers and counters.

Multiwii Read PID

Reads PID gains from the auto-pilot.

Multiwii Read RC

Reads RC values from the auto-pilot.

Multiwii Read RC Tuning

Reads RC tuning parameters from the auto-pilot.

Multiwii Read Servo Configuration

Reads the servo configuration from the auto-pilot.

Multiwii Read Waypoint

Reads the current waypoint from the auto-pilot.

Multiwii Reset Configuration

Resets all parameters to defaults in the auto-pilot.

Multiwii Select Setting

Select the setting configuration for the auto-pilot.

Multiwii Status

Gets the status of the auto-pilot.

Multiwii Write Actuators

Writes the commands for the motors to the auto-pilot.

Multiwii Write Boxes

Writes box items to the auto-pilot. Each word in the input array is a bitmask of activation switches.

Multiwii Write GPS

Writes raw GPS data to the auto-pilot. The data is injected into the GPS stream.

Multiwii Write Miscellaneous

Writes miscellaneous information from the auto-pilot, such as thresholds, triggers and counters.

Multiwii Write PID

Writes PID gains to the auto-pilot.

Multiwii Write RC

Writes raw RC values to the auto-pilot.

Multiwii Write RC Tuning

Writes RC tuning parameters to the auto-pilot.

Multiwii Write Servo Configuration

Writes the servo configuration to the auto-pilot.

Multiwii Write Waypoint

Writes a new waypoint to the auto-pilot.

Multiwii Write Waypoint

Writes a new waypoint to the auto-pilot.

Multiwii Debug

Gets debug values from the auto-pilot.

 

navigation bar