Ping protocol's missing features for Ping360

Hi,

We are working on the integration of Ping360 in a Linux environment. We noticed that some features of the ping protocol are missing for Ping360 and that’s preventing us from working with the device.

In our preparations, we noticed that some of the functionality in Ping protocol, especially for Ping360 device setters are missing.

  • Setters for Ping360 in Ping Protocol haven’t been defined yet.
  • In the ping-cpp repository, there is no template file for Ping 360.
  • In the ping-python repository, there is a template however, it looks for the ping-protocol’s definition JSON file for generating the necessary files.
  • Much of the documentation is autogenerated from the ping-protocol library. Therefore the information we need isn’t in the documentation either.

Where could we find such information?

Hi @incebellipipo,

Ping360 has setters definition, you can check under the set category. For ping360, there is a single set that is specific for the sensor.

There is a PR with an open proposal here, further discussion and review will be done.

Can you point what is missing ? Everything necessary for the sensor is on the protocol description, that replicates to all softwares that we use and communicate with ping360. Nothing should be missing.

There is a pretty good discussion on the forum about how the sensor works, how you can use the libraries to communicate and how to do the necessary math to operate here:

1 Like

The one with generators issue
It’s true that C++ code generation wasn’t available but it’s waiting for a pull request right now. It should be closed very soon, thanks to @patrickelectric !. Here is the PR: Add ping360 device generation by patrickelectric · Pull Request #38 · bluerobotics/ping-cpp · GitHub

The one with getters and setters issue:
Ok, I want to point out a funny UX situation. I tend to read things in a small browser window. But, if you make things smaller in the blue robotics documentation, the table of contents goes away. So… I didn’t see the “control” section. As a programmer, I assumed “oh, if there is a setter, there must be a getter and that’s it!”. I should’ve looked at control section in the documentation. Wouldn’t it be better if there is a table of contents at the beginning of the page… anyway who’s to say :smiley:

The one with ping-python repository issue:
I’m completely wrong. There is a whole big block of code that defines the control methods in the ping-python repository.

I consider this issue closed. Thank you very much for a swift response and PR.

1 Like