Skip to content

Ping360 messages

set

2000 set_device_id

Change the device id

Type Name Description Units
u8 id Device ID (1-254). 0 and 255 are reserved.
u8 reserved reserved

get

2300 device_data

This message is used to communicate the current sonar state. If the data field is populated, the other fields indicate the sonar state when the data was captured. The time taken before the response to the command is sent depends on the difference between the last angle scanned and the new angle in the parameters as well as the number of samples and sample interval (range). To allow for the worst case reponse time the command timeout should be set to 4000 msec.

Type Name Description Units
u8 mode Operating mode (1 for Ping360)
u8 gain_setting Analog gain setting (0 = low, 1 = normal, 2 = high)
u16 angle Head angle gradians
u16 transmit_duration Acoustic transmission duration (1~1000 us) microseconds
u16 sample_period Time interval between individual signal intensity samples in 25 ns increments (80 to 40000 == 2 to 1000 us) eicosapenta-nanoseconds
u16 transmit_frequency Acoustic operating frequency (500~1000 kHz). It is only practical to use say 650 to 850 kHz due to the narrow bandwidth of the acoustic receiver. kilohertz
u16 number_of_samples Number of samples per reflected signal (supported values: 200~1200) samples
u16 data_length The length of the proceeding vector field
u8[] data An array of return strength measurements taken at regular intervals across the scan region. The first element is the closest measurement to the sensor, and the last element is the farthest measurement in the scanned range.

2301 auto_device_data

[NOT RELEASED] Extended version of device_data with auto_transmit information. The sensor emits this message when in auto_transmit mode.

Type Name Description Units
u8 mode Operating mode (1 for Ping360)
u8 gain_setting Analog gain setting (0 = low, 1 = normal, 2 = high)
u16 angle Head angle gradians
u16 transmit_duration Acoustic transmission duration (1~1000 us) microseconds
u16 sample_period Time interval between individual signal intensity samples in 25 ns increments (80 to 40000 == 2 to 1000 us) eicosapenta-nanoseconds
u16 transmit_frequency Acoustic operating frequency (500~1000 kHz). It is only practical to use say 650 to 850 kHz due to the narrow bandwidth of the acoustic receiver. kilohertz
u16 start_angle Head angle to begin scan sector for autoscan (0~399 = 0~360 degrees). gradians
u16 stop_angle Head angle to end scan sector for autoscan (0~399 = 0~360 degrees). gradians
u8 num_steps Number of 0.9 degree motor steps between pings for auto scan (1~10 = 0.9~9.0 degrees) gradians
u8 delay An additional delay between successive transmit pulses (0~100 ms). This may be necessary for some programs to avoid collisions on the RS485 USRT. milliseconds
u16 number_of_samples Number of samples per reflected signal (supported values: 200~1200) samples
u16 data_length The length of the proceeding vector field
u8[] data An array of return strength measurements taken at regular intervals across the scan region. The first element is the closest measurement to the sensor, and the last element is the farthest measurement in the scanned range.

control

2600 reset

Reset the sonar. The bootloader may run depending on the selection according to the bootloader payload field. When the bootloader runs, the external LED flashes at 5Hz. If the bootloader is not contacted within 5 seconds, it will run the current program. If there is no program, then the bootloader will wait forever for a connection. Note that if you issue a reset then you will have to close all your open comm ports and go back to issuing either a discovery message for UDP or go through the break sequence for serial comms before you can talk to the sonar again.

Type Name Description Units
u8 bootloader 0 = skip bootloader; 1 = run bootloader
u8 reserved reserved

2601 transducer

The transducer will apply the commanded settings. The sonar will reply with a device_data message. If the transmit field is 0, the sonar will not transmit after locating the transducer, and the data field in the device_data message reply will be empty. If the transmit field is 1, the sonar will make an acoustic transmission after locating the transducer, and the resulting data will be uploaded in the data field of the device_data message reply. To allow for the worst case response time the command timeout should be set to 4000 msec.

Type Name Description Units
u8 mode Operating mode (1 for Ping360)
u8 gain_setting Analog gain setting (0 = low, 1 = normal, 2 = high)
u16 angle Head angle gradians
u16 transmit_duration Acoustic transmission duration (1~1000 us) microseconds
u16 sample_period Time interval between individual signal intensity samples in 25 ns increments (80 to 40000 == 2 to 1000 us) eicosapenta-nanoseconds
u16 transmit_frequency Acoustic operating frequency (500~1000 kHz). It is only practical to use say 650 to 850 kHz due to the narrow bandwidth of the acoustic receiver. kilohertz
u16 number_of_samples Number of samples per reflected signal (supported values: 200~1200) samples
u8 transmit 0 = do not transmit; 1 = transmit after the transducer has reached the specified angle
u8 reserved reserved

2602 auto_transmit

[NOT RELEASED] Extended transducer message with auto-scan function. The sonar will automatically scan the region between start_angle and end_angle and send auto_device_data messages as soon as new data is available. Send a line break to stop scanning (and also begin the autobaudrate procedure). Alternatively, a motor_off message may be sent (but retries might be necessary on the half-duplex RS485 interface).

Type Name Description Units
u8 mode Operating mode (1 for Ping360)
u8 gain_setting Analog gain setting (0 = low, 1 = normal, 2 = high)
u16 transmit_duration Acoustic transmission duration (1~1000 us) microseconds
u16 sample_period Time interval between individual signal intensity samples in 25 ns increments (80 to 40000 == 2 to 1000 us) eicosapenta-nanoseconds
u16 transmit_frequency Acoustic operating frequency (500~1000 kHz). It is only practical to use say 650 to 850 kHz due to the narrow bandwidth of the acoustic receiver. kilohertz
u16 number_of_samples Number of samples per reflected signal (supported values: 200~1200) samples
u16 start_angle Head angle to begin scan sector for autoscan (0~399 = 0~360 degrees). gradians
u16 stop_angle Head angle to end scan sector for autoscan (0~399 = 0~360 degrees). gradians
u8 num_steps Number of 0.9 degree motor steps between pings for auto scan (1~10 = 0.9~9.0 degrees) gradians
u8 delay An additional delay between successive transmit pulses (0~100 ms). This may be necessary for some programs to avoid collisions on the RS485 USRT. milliseconds

2903 motor_off

The sonar switches the current through the stepper motor windings off to save power. The sonar will send an ack message in response. The command timeout should be set to 50 msec. If the sonar is idle (not scanning) for more than 30 seconds then the motor current will automatically turn off. When the user sends any command that involves moving the transducer then the motor current is automatically re-enabled.

No payload.