Skip to main content
Skip table of contents

Configuring the Skyhub setup

When using a Medusa spectrometer in combination with the UgCS Skyhub, both systems need to be configured to send and receive data.

Prerequisite

Software

  • The Medusa spectrometer with a mDOS software version of V3.2 - Build 420 or higher.

  • The Skyhub with a GNSS output software version of 1.4.1.22. and higher.

  • A Universal driver and True Terrain Following license for the Skyhub.

Hardware

  • Skyhub (version xx and up)

  • MDC-510 cable to have power and communication between the Medusa sensor and the Skyub.

  • Optionally For height measurements: a Lidar or Radar altimeter, compatible with the Skyhub.

  • Optionally: For DJI M350 integration the MSB-302 mounting brackets are recommended.

Configuring the Skyhub

Enabling the output of GPS and altitude readings to the Medusa sensor, and accepting data coming from the Medusa sensor to the Skyhub can be done by configuring the skyhub.conf file. For more information on how to do this, check the Skyhub manual.

GPS and altitude

Modify the ROS_MONITOR_GNSSOUT_0 configuration to output NMEA strings including the altitude readings (RMZ). Below is the configuration snippet that enables all NMEA messages and the altitude:

CODE
[ROS_MONITOR_GNSSOUT_0]
BAUD_RATE=115200
ENABLE_PPS=false
GGA_RATE_HZ=5
MESSAGES=RMC GGA ZDA RMZ
RMZ_RATE_HZ=5
NMEA_LOG=false
PREFIX=GN
SERIAL_DEVICE=/dev/ttyNMEA
RMC_RATE_HZ=5

Universal driver

The Skyhub offers the possibility to stream data from the Medusa sensor over the drones radiolink to the ground station. This can, for example, be displayed on the remote controller of the DJI M300/M350, and can be monitored in SPHs Custom Payload Monitor.

Configuring the skyhub.conf is done similarly to configuring the NMEA output. Make sure the following configuration is present in the file:

CODE
[ROS_PAYLOADS]
UNIVERSAL=true

[ROS_UNIVERSAL_UNIVERSALDRIVER_0]
PAYLOAD_ID=192
SENSOR_NAME=MedusaGRS
SEPARATOR_PATTERN=\\r\\n
UART_BAUD_RATE=115200
UART_SERIAL_DEVICE=/dev/ttyUNIVERSAL
VALUE_PATTERN=(\\d+)

Allowing both services

The configuration below is for enabling both the input and output datastream. When only one stream is needed, the optional port splitting is not needed and the SERIAL_DEVICE=/dev/ttyNMEA and SERIAL_DEVICE=/dev/ttyUNIVERSAL should be replaced with SERIAL_DEVICE=/dev/ttyAMA3

By default the Skyhub can also accept either a input or output stream on the same port. Therefore a program needs to be enabled that splits the input and output stream.

This is done by:
a. Copy the attached medusa.service file to the following path on the skyhub: /etc/systemd/system/medusa.service

b. Copy the attached createVirtualPorts.py to the following path on the skyhub: /root/


Then, while logged in on the skyhub via ssh, execute the following commands:

CODE
# Reload deamon
sudo systemctl daemon-reload

# Enable the medusa service
sudo systemctl enable medusa.service

# Start the service
sudo systemctl start medusa.service

Finally, reboot the Skyhub and the configuration is complete

Attachments

Medusa.service file

Port splitting file

Skyhub.conf example

medusa.service

createVirtualPorts.py

skyhub.conf

Configuring the Medusa spectrometer

The spectrometer needs to be configured by using the mDOS interface on the data tab. Consult the mDOS manual for access to this page.

GPS and altimeter input

The input mode has to be configured as “NMEA strings”. Enable the NMEA contain RMZ messages, to enable parsing of altitude readings.

image-20250327-122053.png

RMZ altitude and GPS readings will become visible on the mDOS dashboard page. The sensor readings look as following:

image-20250328-115747.png

Internal and external GPS
The Medusa sensor also has an internal GPS. When using the external Skyhub GPS, it is recommended to disable the internal GPS so that one GPS source is used. This can be done on the settings tab in mDOS.

The GPS can be inspected on the dasboard page by using the inspect datastream icon. GPS records sent from the skyhub have the eID “GPS_external” as shown in the screenshot below.

image-20250328-115611.png


Medusa data output

When using the Universal driver capabilities of the Skyhub the detector needs to be configured to stream data to the skuhub. This is done by selecting an output mode on the same data tab. Currently, the Skyhub supports Count rate only and Dose rate streaming.

image-20250327-125915.png

For calculating a dose rate, the detector needs to be stabilized. Depending on the sensor size, this can take up to several minutes. The progress of stabilization can be seen on the dashboard tab of mDOS. While the sensor is not stabilized, no dose rate will be sent to the Skyhub.

image-20250328-115440.png


When the above configuration is set the count rate or dose rate can be seen in SPHs Custom Payload Monitor (CPM) and on the remote controller of the DJI drone when using the UgCS companion app.

CPM settings for the Medusa spectrometer

Count rate in the CPM

image-20250328-113605.png
image-20250328-113734.png

UgCS companion

Below is a screenshot of the UgCS companion app with a Medusa MS-100 sensor configured according to the above described protocol. In the bottom left corner the radar altimeter readings are displayed, and in the bottom right corner the count rate of the Medusa sensor.

PXL_20250328_114709640.jpg

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.