Cerulean Companion error message

Hello,

I’ve been attempting to get Cerulean Companion functioning with our ROVL to offer GPS coordinates in QGC. I believe I’m very close to having everything working, but can’t figure out an error message thrown when running Cerulean Companion.

Using the ROV Locator windows application I got everything working. The GPS successfully got a fix, the receiver IMU calibrated and all of the fields were updating as expected (no remaining red fields). After closing the application and re-connecting the GPS and receiver, I attempted to run:

cerulean-companion -r COM5 -g COM3 -e 127.0.0.1:14401 -m 192.168.2.2:27000

The resulting terminal feed is included below. I attempted to run the companion on my Ubuntu boot as well, where the feed connected to the GPS before going completely silent, without any reaction in QGC. I’d appreciate any guidance or suggestions to how this might be fixed!

Log

C:\Users\JM Terminal\Downloads>cerulean-companion -r COM5 -g COM3 -e 127.0.0.1:14401 -m 192.168.2.2:27000
usbl INFO opening device COM5
gps INFO opening device COM3
gps INFO dev_gps is now COM3
usbl INFO dev_usbl is now COM5
usbl INFO RTH: $USRTH,99.1,260.9,53.0,719.0,16*4A

usbl INFO ignoring RTH message because RMC is not ready yet
usbl INFO RTH: $USRTH,103.1,256.9,56.3,719.0,16*7B

usbl WARNING when processing data b’$USRTH,103.1,256.9,56.3,719.0,16*7B\r\n’: Traceback (most recent call last):
File “bluerov2_usbl\usbl_relay_controller.py”, line 145, in _run
File “bluerov2_usbl\usbl_relay_controller.py”, line 288, in _on_usbl_line
File “bluerov2_usbl\usbl_relay_controller.py”, line 54, in combine_rmc_rth
TypeError: must be real number, not NoneType

usbl INFO RTH: $USRTH,99.0,261.0,51.2,719.1,16*42

usbl WARNING when processing data b’$USRTH,99.0,261.0,51.2,719.1,16*42\r\n’: Traceback (most recent call last):
File “bluerov2_usbl\usbl_relay_controller.py”, line 145, in _run
File “bluerov2_usbl\usbl_relay_controller.py”, line 288, in _on_usbl_line
File “bluerov2_usbl\usbl_relay_controller.py”, line 54, in combine_rmc_rth
TypeError: must be real number, not NoneType

usbl INFO RTH: $USRTH,99.3,260.7,56.5,719.0,16*46

usbl WARNING when processing data b’$USRTH,99.3,260.7,56.5,719.0,16*46\r\n’: Traceback (most recent call last):
File “bluerov2_usbl\usbl_relay_controller.py”, line 145, in _run
File “bluerov2_usbl\usbl_relay_controller.py”, line 288, in _on_usbl_line
File “bluerov2_usbl\usbl_relay_controller.py”, line 54, in combine_rmc_rth
TypeError: must be real number, not NoneType

This message would repeat once per second.

Hello Robin,

Let me check into that and I will get back to you!

Are you running a release binary, or are you running the source code?

I don’t have enough information to know for sure, but it looks like it could be running with Python2 instead of Python3.

Thanks for the reply,

I tried setting up the ROVL again today and the Cerulean companion booted successfully, (seemingly) without having done anything differently. I have a feeling your point about Python3 is correct though; if I run into the issue again I’ll make sure to update this thread as reference. Excited to field test it tomorrow!

After encountering the issue again during the field test, I figured out its source. The topside laptop used had 2x USB 3.1 ports and 1x USB 2.0 port. Since the USB-GPS we were using (Navilock NL-602U) is USB 2.0, the error message would appear whenever the GPS was plugged into a USB 3.1 port. I was under the impression that there was backwards-compatibility for something like this, but apparently not! Hopefully this proves useful for someone in the future.

After discussing with my colleagues we realized that the GPS functions without fault in the ROV Locator app, even plugged into the ‘wrong’ USB port, whereas Cerulean companion throws the error message above. Could this indicate that the issue lies here? I am running the 0.2.2-alpha release binary for Windows.

Hmm, that’s interesting. Maybe Windows is choosing different drivers depending on which interface it gets plugged in to.

Thanks for investigating! We have a major overhaul of Cerulean Companion on the way, and I’ll add this bug to the list.

Hello?
I have a similar error message. I am trying on Windows 10.
And there is another one error, “Unknown sentence type USINF”.


Anyone has an idea about these problem?
Thanks.

Hello Tony,

Let me check into this and I will get back to you.

The $USINF message is the information message from the ROVL, which is not needed. So cerulean companion doesn’t read it.

Thank you very much for the answers!