We’re working on an autonomous boat using a PX4 and recently picked up a PING sonar to integrate. After doing a bit of research it seems we’ll need to run the sonar through a companion computer so that we can send messages through Mavlink to the Pixhawk.
I was wondering if there is any way to wire the sonar directly to the Pixhawk (or through some kind of serial converter box) so that it can be used and read without a companion computer? We currently do not have a raspi or similar on the rover and would be difficult to integrate this late into the project.
Any help is much appreciated, thanks all!
[When reporting issues, please post the product, a description of the issue, code if it’s a software issue, and pictures of the issue. That will help us resolve it quickly!]
You could use our Arduino library for ping to create your own converter with an Arduino compatible microcontroller.
If you are aiming to use PX4 firmware, you’ll need to contact them to know the exactly output that your Arduino should provide.
ArduPilot has a project called ArduRover that supports boats, and ArduPilot already contains the driver for Ping, so the connection should be straightforward with the serial port.
Thanks for getting back to me so quickly! We are running ArduRover (newest version) but I could not find any documentation / drivers for the PING. Maybe I’m looking in the wrong place, could you point me in the right direction?
Thanks for the help!
It’s a WIP feature and it’s not in stable or beta version for both QGC and ArduPilot, but if you want to test it, I’ll put a step-by-step here of how to do it.
I’m experiencing with pixhawk 2.1 and the Bluerobotics ping sonar.
I followed the instrucions above, installed the 3.6.0 dev firmware, but cannot find the ping sonar in the rangefinder list.
In QGC in paramteres at the rngfind section i got only 4 parameters to set for rngfnd1_xxx paramters and at the type i cannot find the ping sensor.
At advanced section at rngfind i can see many options to each rangefinder but there is no dropdown list at the types. I can input numbers only but i do not know the value for the ping sensor.