Integrating Obstacle Avoidance Using LIDAR Into BlueOS Worflow

Hello BlueOS community,

My team is currently using BlueOS for an auto boat project. We chose BlueOS because we found it useful to stream the video and there is a cool GUI like cockpit to use.

However, I realised that there is not much documentation on how can I integrate a LIDAR to do object recognition with BlueOS. I assume there is no existing extension that can handle the LIDAR data (?)

My setup:
onboard computer: Rockchip 5T - rk3588
FC: 7-nano
LIDAR: ouster OS1
camera: hikvision cam
I am running blueOS as a docker on top of the radxaOS too. Version is 1.4.4-beta.7.

My plan is to process the LIDAR data, run the obstacle avoidance script locally on the radxaOS first, and find a way to stream the output (I have yet to figure out what should be the output yet, maybe the spinnning speed of the two motors of the boat?) to the blueOS, which then send the control signal to the FC which then handles the PWM signals to the motors.

Is anyone experience in this? :folded_hands: Help is much needed.

I would recommend doing all the integration work inside a BlueOS extension, nothing in the OS itself. BlueOS extensions are simply docker containers, so you can do basically everything from there.

If you do anything in the OS, not in an extension, it will be hard to track changes and replicate a full installation on any other vehicle.

By creating an extension you receive for free code version management and a nice UI for controlling the extension runtime. This way it’s easy for you to make sure which version of the code/extension is running on each vehicle, to test development versions, to install on new vehicles, etc. The frontend of your extension (if you want to have a frontend) will also appear inside BlueOS, so easiy access as well.

The linked docs tell you how to start, but if you have any questions feel free to ask them here.

Hi @alexgosleep -

Ardurover does support some lidars and obstacle avoidance already, maybe your extension could communicate the necessary info to the autopilot process, although it sounds like you’re not using a Navigator?