Can i change transmit_duration on Ping sonar?

Can i change transmit_duration on Ping sonar?
I tested the sonar and i have false readings of 60mm in 1m deep watter using NPL equations of function of temperature. I was thinking can i change transim duration to have accurate readings? to calibrate the sonar.


As far as I’m aware the transmit duration is set automatically based on the range and speed of sound. We don’t specify a message for controlling transmit duration in the protocol, just requesting to be informed of the current value for it.

I’ve asked internally for confirmation.

This is very significantly off. I expect either you’re testing in an overly small tank or pipe with echoes that are messing up the distance estimate algorithm, or you’re incorrectly applying your NPL equation / there’s an error in your calculation (perhaps you’ve used incorrect units somewhere?).

To better help you, could you please explain

  1. how is your testing set up?
  2. which equation are you using?
  3. can you show a worked example of the calculations you’re doing, starting from the message you get from the sonar?

The Formatting a Post/Comment section of the “How to Use the Blue Robotics Forums” post explains how to format maths in the “in text” subsection :slight_smile:

Thnx for the reply.

The water level was measured at two places along the sides of the channel and at the sonar location and its value is 1108mm. The sonar is submerged for its height in the amount of 35mm.

The experiment was performed using a measuring needle with a resolution of 0.5 mm. The sonar is attached to the measuring needle for a more accurate and controlled depth change. The initial depth of 1073 mm corresponds to 26 cm on the measuring needle. The depth change was made by ∆h=50mm, lowering the needle by ∆h reduces the depth at which the sonar measures.

The obtained sound propagation speed in water is 1487.79 m/s at a water temperature of 21.81℃. The temperature was measured using a DS18B20 temperature sensor.

Sonar recive signal from the front isolated area (marked blue on picture) not from backside? Like on this picture?

Uploading: IMG_20220725_131135.jpg…

results are off by 60mm , giving longer distance not shorter.
i was 70 80cm from the side of the pool. But pool depth was 1m deep. I dont know is it enough. what affected the results?

this is offset results form real ones.

I plan to try it on pool which have 5m depth.
Thank you in advance.


It seems I misunderstood your initial post - I thought you were saying you were expecting to measure 1000mm and were instead receiving measurements of 60mm, but you’re actually saying you’re having an error of 60mm from the measurement values you expected.

That seems reasonable, assuming you’re testing in fresh water.

That’s correct - the sonar transmissions and receiving are from the front of the device, where the blue ring is.

Given the consistency of those result, either your pool has its strongest acoustic reflection a bit below the surface that you’re measuring, or there’s some kind of offset error in the sonar’s estimation algorithm. Assuming the latter, can you try controlling the sensor in manual mode, and lowering the gain? It’s possible the readings may be saturated.

Thank you for detailed reply. I will train to play with gain to see if i can get better results.

@EliotBR One more question, can i connect ping sonar in some wireless mode to receive data? tnx

The Ping Sonar is a serial only device, so it has no wireless mode. You could potentially connect it to a wireless capable device and use that to forward the data.