BlueOS equivalent of adding Serial to mavlink?

I want to connect a serial device on the navigator running the latest BlueOS and show the parse data in QGC. Example Oxygen concentration.

What would be the easiest way? Or where should I start? I don’t want to build an application on the topside computer nor rebuilding QGC. Just see the data in QGC like we see depth from Ping sensor. I come to understand that if the data is in the mavlink stream, it should be available in QGC. IS this true?
In the BlueOS, the bridge extension can send data to UDP but then? An extension that send data to the mavlink stream would be great. How is it related?
Any idea of how to do this?

I can already communicate with my serial device using Arduino and with some effort using python. Does a python code could help me here?

See my confusion :frowning:
thank you

Ok so after some work I found that the easiest solution is to use the node-red extension of the blueos.
Using this, I was able to transfer data from third party serial sensor to a node-red flow and then see them in Dashboard. I also manage to get some mavlink info (GPS, depth) from rover and combine them to my sensor in one string for transfer to a write/read csv.file. Usefull for mapping.

I have one question about the node-red “write” node. It ask for a path to store the data on the Raspberry /Navigator. I created a file here : “Home/userdata/test.txt” but the file never get update nor is created if I leave the folder empty.
What filename path should I use to accomplish this? I feel it is not behaving the same as on a normal raspebrry pi. At least it do not behave like the tutorial showing how to do this.

Also, I fail to get the time from the rover. What Mavlink stream should I look at to get the timestamp for my data? (I mean non-unix thing).

1 Like

Hi @Charles -
So glad you’re having success with node-red and BlueOS!
Your files are being saved within the docker container the node-red extension is running in. It should be possible to save them in the main environment, so you can access them via the BlueOS file-browser. Our documentation is still in progress, but this could help:

I think if you save files in this directory, you will be able to find them:

/data/ *

will save to BlueOS’s extensions/node-red/ folder, thanks to the mapping “Binds”: [
“/usr/blueos/extensions/node-red:/data:rw”,

Would you be willing to share your node-red flow here? I’m not particularly familiar with it having only dabbled before.

This thread may be helpful when trying to get the time into your flow - others will likely have a better recommendation!

Here are some screenshots from some of our own teams testing:
image
image

Thank you @tony-white for those input. It was usefull. Because I am in the testing phase and never calibrate the copass or other things, I was running the factory OS despite the fact that I initially update the OS. In the factory configuration, the extension folder do not appear in the file browser. When I reboot in the newest OS version the extension folder is visible and using :/data/*.txt as a path do work to store data and retrieve them later.

Hi @Charles -
Make sure you update the bootstrap after performing a system update- otherwise the system can revert to factory!