Eye4Software Hydromagic

  Hydrographic Survey Software


Download free demo version



Hydromagic MAVLink Plugin

MAVLink is a communications used to communicate with a drone by using ground control software (GCS). The MAVLink protocol contains commands to instruct an AutoPilot to fly to a specific location, take-off or land. Also sensor values like motion, elevation, speed and GPS position are transferred using the MAVLink protocol. The Hydromagic MAVLink protocol plugin allows you to feed this sensor information directly into Hydromagic as raw data.

The Cube Orange is one of the many supported autopilots supported by Hydromagic
The Cube Orange is one of the many supported autopilots supported by Hydromagic.


Loading the MAVLink plugin

To load this plugin, open the preferences window by selecting "Preferences..." from the "Options" menu. In the window that appears, select the "Devices" tab. Next click the "Add..." button.

the devices tab in the preferences dialog
The devices tab in the "Preferences" dialog.

A list of available plugins will be displayed. In this list, select the "MAVLink AutoPilot for Hydromagic" plugin and click "OK" to load and display the configuration dialog.

Select the MAVLink AutoPilot for Hydromagic plugin from the list of available plugins
Select the "MAVLink AutoPilot for Hydromagic" plugin from the list of available plugins.


Looking up the correct serial port number

If you are unsure to which (virtual) serial port number your autopilot uses, you can use the "Device Manager" of Windows. In this example, we show you have to launch the "Device Manager" when using Microsoft Windows 10. First, right click the "Start" button (normally in the lower-left corner of your screen) and select "Device Manager" from the popup-menu. When using a localized version of Windows, search for device manager translated to your own language.

When the "Device Manager" has been loaded and populated with a list of devices detected by the Windows operating system, locate the "Ports" folder and expand it by clicking the "+" sign. In the list of serial ports, look for the COMxx number which has a description matching your type of autopilot. In this case it is a Cube Orange autopilot located on COM12.

Looking up the autopilot device and serial port.
Looking up the autopilot device and serial port using the Windows Device Manager.

Configuring the MAVLink plugin

After loading the plugin, you have to select the connection parameters first. Please note that a MAVLink can be connected using a serial connection or a TCP/IP connection (for instance WiFi). First select the connection type from the drop down list and configure other connection parameters.

Configure communication settings for the MAVLink connection in the plugin window.
Configure communication settings for the MAVLink
connection in the plugin window..

To define which MAVLink messages are decoded and handled by the Hydromagic software, click the "Select Messages..." button. Your version of the plugin might have more messages to choose from then displayed in the screenshot below. Please refer to the "Supported Messages" paragraph for more details on these message types.

Select which MAVLink protocol messages are handled by the plugin
Select which MAVLink protocol messages are handled by the plugin


Monitoring incoming data

The built-in communication monitor can be used to monitor incoming data, so you can see which message's are coming in, and at what interval. To start the communications monitor for the MAVLink plugin, open the preferences window by selecting "Preferences..." from the "Options" menu. In the window that appears, select the "Devices" tab. Next select the "MAVLink AutoPilot Plugin for Hydromagic" and click the "Monitor..." button.

Monitor incoming MAVLink messages using the built-in communications monitor
Monitor incoming MAVLink messages using the built-in communications monitor.


Unloading the MAVLink plugin

To unload the MAVLink plugin, open the preferences window by selecting "Preferences..." from the "Options" menu. In the window that appears, select the "Devices" tab. Next select the "MAVLink AutoPilot Plugin for Hydromagic" and click the "Remove..." button.

Select the MAVLink plugin and click the Remove... button to unload the plugin
Select the MAVLink plugin and click the
"Remove..." button to unload the plugin.


Supported Messages

#0 - MAVLINK_MSG_ID_HEARTBEAT

Since this message is required, it is not possible to enable or disable the message. The autopilot uses this message to control the communication between the autopilot and Hydromagic. Also important information, like autopilot navigation mode en system status is sent by this message.

#1 - MAVLINK_MSG_ID_SYS_STATUS

Message number #1 reports the general system state of the autopilot device. This message contains a list of sensors attached to the system, as well as some power statistics, like battery voltage, battery current, system load and remaining battery.

#24 - MAVLINK_MSG_ID_GPS_RAW_INT

The global position, as returned by the Global Positioning System (GPS). This is NOT the global position estimate of the system, but rather a RAW sensor value. This packet has a length of 30 bytes and contains WGS84 position, EGM96 altitude, HDOP/VDOP, fix type, satellite count and velocity and speed over ground. When both messages #24 and #33 are available, message #24 is preffered over message #33.

#30 - MAVLINK_MSG_ID_ATTITUDE

The attitude message contains attitude information like pitch, roll and yaw. This is calculated from an IMU or motion sensor on board the drone or USV. The range for roll and pitch is +-90 degrees. When this message is not supported, message #31 could be used as alternative.

#31 - MAVLINK_MSG_ID_ATTITUDE_QUATERNION

The attitude message contains pitch and roll information encoded as a quaternion (x,y,z,w values). Hydromagic converts this to a pitch and roll value. The range for roll and pitch is +-90 degrees. When this message is not supported, message #30 could be used as alternative.

#33 - MAVLINK_MSG_ID_GLOBAL_POSITION_INT

Just like message #24 this message contains position information. However the difference with message #24 is, that this message only contains a geographic position and speed vectors in x,y and z direction. When #24 is present, disable message number 33.

#42 - MAVLINK_MSG_ID_MISSION_CURRENT

This message let Hydromagic know to which waypoint the autopilot is currently navigating.

#46 - MAVLINK_MSG_ID_MISSION_ITEM_REACHED

When one of the waypoints in the route has been reached, it will be send to Hydromagic by using this message. The active waypoint in the data view will be updated using the waypoint reported in this message.

#62 - MAVLINK_MSG_ID_NAV_CONTROLLER_OUPUT

When navigating from one waypoint to another, the autopilot sends this message to send information like distance to waypoint, bearing to waypoint and the current cross track error. This information can be displayed in the dataview, when the navigation info item has been selected.

#87 - MAVLINK_MSG_ID_POSITION_TARGET_GLOBAL_INT

When navigating from one waypoint to another, the autopilot sends this message to send the latitude and longitude (geographic) position of the target waypoint in WGS84. This information can be displayed in the dataview, when the navigation info item has been selected.

#125 - MAVLINK_MSG_ID_POWER_STATUS

Contains voltage measurements for the systems servo's and 5 volt rail. Not used yet.

#132 - MAVLINK_MSG_ID_DISTANCE_SENSOR

Sends distance or depth information to Hydromagic. This message is only used when an NMEA0183 compatible echo sounder, an EchoLogger or BlueRobotics Ping1d is connected directly to one of the autopilot's serial connectors. Depending on the autopilot model and configuraton, one of the messages #132, #173 or #11038 is used. Please select only one of them to avoid redundant data being recorded to your raw data files.

#173 - MAVLINK_MSG_ID_RANGE_FINDER

Send distance or depth information to Hydromagic. This message is only used when an NMEA0183 compatible echo sounder, an EchoLogger or BlueRobotics Ping1d is connected directly to one of the autopilot's serial connectors. Depending on the autopilot model and configuraton, one of the messages #132, #173 or #11038 is used. Please select only one of them to avoid redundant data being recorded to your raw data files.

#253 - MAVLINK_MSG_ID_RANGE_FINDER

When this message is enabled, status messages generated by the autopilot will be send to the activity view in Hydromagic. Could be information about the current route, sensors, alarms and other additional information useful for trouble shooting.

#11038 - MAVLINK_MSG_ID_WATER_DEPTH

Send distance or depth information to Hydromagic. This message is only used when an NMEA0183 compatible echo sounder, an EchoLogger or BlueRobotics Ping1d is connected directly to one of the autopilot's serial connectors. Depending on the autopilot model and configuraton, one of the messages #132, #173 or #11038 is used. Please select only one of them to avoid redundant data being recorded to your raw data files.