Ultrasonic sensors

Hi everyone< my employer has tasked me with setting up an experimental submersible. The body of the vehicle has 4 ultrasonic sensor mounted on it

Link: IP68 Waterproof Underwater Compact in size Ultrasonic Obstacle Avoidance Sensor - DFRobot

It seems that these sensors communicate via serial so therefore not really compatible with bluerobotics navigator?
As I understand it they really need connecting to a raspberry pi to record the distance data from these sensors. Assuming htis is the correct approach is there a way to feed a data stream from the Pi into the navigator in a way that the autopilot can use for object avoidance. We are already using a Ping 2 for depth.

Thanks in advance for any feedback.

Hi @andrewjamez -
The Navigator does have multiple serial ports, but your bigger issue may be the sensors themselves! The IP-68 rating typically means the unit is waterproof to a depth of 1 meter for 30 minutes - something your submersible may be exceeding? The unit looks to seal to a bulkhead, but does not seem to have an o-ring for this sealing surface?
The serial output format is different than that of the Ping2 single-beam sonar, a similar product - using it would require developing your own driver or custom extension for BlueOS to interpret the serial data streams.
Checkout this guide for connecting your device to the Navigator - although you may want to install an Arduino or similar microcontroller to receive your 4 serial inputs and package the output to a single serial port connected to the Navigator.

Hi Tony, yes that is what I am thinking. DFrobot supply the example code for a Pi to take in the data from the sensors and output mavlink messages. Could this possibly work with the Mavlink extenion in bluOS?

Hi @andrewjamez -
If you output mavlink messages of the correct format, this should work with the existing system in BlueOS! You’ll want to format it as a rangefinder device.
Again, I would not trust the sensors deeper than a few meters water depth!