# Ping360 sonar data retrieval and visualization using PingViewer with internet and radio telemetry options

**URL:** <https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901>\
**Category:** Ping Viewer\
**Tags:** ping, ping360\
**Created:** [August 19, 2023, 3:52pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901 "2023-08-19T15:52:22Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sakthivelj](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@Sakthivelj](https://discuss.bluerobotics.com/u/Sakthivelj)\
**Post date:** [August 19, 2023, 3:52pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/1 "2023-08-19T15:52:22Z")

</div>

Hello,

I am currently working on a project involving the Ping360 sonar and I am exploring wireless data retrieval options. I would like to know if it is possible to use Ping Viewer remotely, either through an internet connection or through local radio telemetry.

Would it be possible to configure Ping Viewer to receive data from the Ping360 sonar over the Internet? This would be particularly useful in remote locations where real-time data visualization is required.

As an alternative, I would like to know whether local radio telemetry can be used similarly. Are there any recommended radio telemetry solutions that can provide wireless data communication to a nearby base station and are compatible with the Ping360?

Could you share any insights or experiences with remote data retrieval and visualization using Ping360 Sonar? If anyone has successfully achieved this with specific configurations, hardware or software setups, please share them.

In advance, thank you for your help and expertise.

---

<div class="post-metadata">

**Author:** ![EliotBR](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/eliotbr/32/6937_2.png) [@EliotBR](https://discuss.bluerobotics.com/u/EliotBR)\
**Post date:** [August 21, 2023, 2:33am UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/2 "2023-08-21T02:33:33Z")

</div>

Hi @Sakthivelj,

The [Ping360](https://bluerobotics.com/store/sonars/imaging-sonars/ping360-sonar-r1-rp/) has an ethernet [communications interface option](https://bluerobotics.com/learn/changing-communications-interface-on-the-ping360/), from which you can connect it to the network hardware you desire. A couple of potentially useful components are [this adaptor](https://bluerobotics.com/store/comm-control-power/tether-interface/misc-pcb-rj45-jstgh/) (to connect to a standard ethernet cable) and/or our [Ethernet Switch](https://bluerobotics.com/store/comm-control-power/tether-interface/ethswitch/) (to connect to a local network, potentially including a wifi radio connection).

> [@Sakthivelj](#):
>
> Would it be possible to configure Ping Viewer to receive data from the Ping360 sonar over the Internet?

Ping Viewer can find and connect to Ping360 devices that are accessible on the local network, so to receive data over the internet requires using a VPN between a computer that is locally networked to the device and the computer you’re running Ping Viewer on. That should be possible using [ZeroTier](https://www.zerotier.com) (for context, we run the [ZeroTier BlueOS extension](https://docs.bluerobotics.com/BlueOS-Extensions-Repository/#:~:text=ZeroTier,-Maintainer) on the onboard Raspberry Pi when we’re doing remote connections for internal vehicle testing).

A couple of things to consider:

- Internet connectivity is generally less reliable than a tethered connection, which may result in loss of data
  - The Ping360’s network communication is done via UDP, which does not check for packet delivery success, so if some of the data request commands or returned profile data messages get lost in transit then they won’t automatically be re-requested/re-sent, and may cause lag spikes while Ping Viewer is waiting for a response from the device

- Not all internet connections are equal - consider the upload bandwidth of the device side and the download bandwidth of the control computer side
  - It’s unlikely this will be a problem, especially since scanning sonar data is much lower bandwidth than a video stream, for example, but it’s worth keeping in mind, especially if you’re planning to use a low bandwidth mobile data setup or something

---

<div class="post-metadata">

**Author:** ![Sakthivelj](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@Sakthivelj](https://discuss.bluerobotics.com/u/Sakthivelj)\
**Post date:** [August 21, 2023, 8:55am UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/3 "2023-08-21T08:55:25Z")

</div>

@EliotBR Thank you for the detailed explanation. You are correct, the internet connection is poor except for my Wi-Fi. Also, I have one more quick question: Is it possible to record, store, and view data on PingViewer at a later time?

---

<div class="post-metadata">

**Author:** ![EliotBR](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/eliotbr/32/6937_2.png) [@EliotBR](https://discuss.bluerobotics.com/u/EliotBR)\
**Post date:** [August 21, 2023, 1:51pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/4 "2023-08-21T13:51:35Z")

</div>

> [@Sakthivelj](#):
>
> Is it possible to record, store, and view data on PingViewer at a later time?

Ping Viewer automatically records any data it receives from the device. You can replay that using [Replay mode](https://docs.bluerobotics.com/ping-viewer/replay-data/), and it’s also possible to extract (and process) the data [with code](https://github.com/bluerobotics/ping-viewer/blob/master/examples/decode_sensor_binary_log.py), if you’re into that kind of thing 🙂

---

<div class="post-metadata">

**Author:** ![Sakthivelj](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@Sakthivelj](https://discuss.bluerobotics.com/u/Sakthivelj)\
**Post date:** [August 22, 2023, 1:15pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/5 "2023-08-22T13:15:03Z")

</div>

Thanks, @EliotBR,

I tried to setup the Zerotier extension is very hard to setup.

 ![image](https://us1.discourse-cdn.com/flex019/uploads/bluerobotics/original/2X/8/847c2b86ab29cf261df40c4784338b9dea03323f.png)

It always shows OFFLINE, how to make it online. is any clear procedure available?

---

<div class="post-metadata">

**Author:** ![Sakthivelj](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@Sakthivelj](https://discuss.bluerobotics.com/u/Sakthivelj)\
**Post date:** [August 22, 2023, 3:39pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/6 "2023-08-22T15:39:21Z")

</div>

> [@EliotBR](#):
>
> Ping Viewer automatically records any data it receives from the device.

Since the Raspberry PI is on the boat, is there a way to record data using Python without opening the PingViewer GUI? I

---

<div class="post-metadata">

**Author:** ![EliotBR](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/eliotbr/32/6937_2.png) [@EliotBR](https://discuss.bluerobotics.com/u/EliotBR)\
**Post date:** [August 22, 2023, 3:57pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/7 "2023-08-22T15:57:42Z")

</div>

> [@Sakthivelj](#):
>
> is any clear procedure available?

Do the instructions in [the README](https://github.com/Williangalvani/ZeroTierOne#readme) help?

> [@Sakthivelj](#):
>
> Since the Raspberry PI is on the boat, is there a way to record data using Python without opening the PingViewer GUI? I

You can use the [`ping-python`](https://github.com/bluerobotics/ping-python) library to connect to and control the sensor, and you can save the `device_data` messages you receive in a file (even [as a Ping Viewer style log file](https://github.com/bluerobotics/ping-viewer/blob/master/examples/encode_sensor_binary_log.py) if you want to, for easy playback later).

Such a program could be run on the control station computer (if you have a continuous connection to the vehicle with sufficient bandwidth, although you would likely just use Ping Viewer in that case), or in a BlueOS extension running on the onboard Raspberry Pi.

---

<div class="post-metadata">

**Author:** ![Sakthivelj](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@Sakthivelj](https://discuss.bluerobotics.com/u/Sakthivelj)\
**Post date:** [August 23, 2023, 8:34am UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/8 "2023-08-23T08:34:57Z")

</div>

> [@EliotBR](#):
>
> Do the instructions in [the README](https://github.com/Williangalvani/ZeroTierOne#readme) help?

Hi @EliotBR I follow the README link, but it wasn’t helpful. I’m still having issues with being offline and the status always shows “requesting configuration.” I tried multiple times.

Is there any manual way to solve the issue?

---

<div class="post-metadata">

**Author:** ![Sakthivelj](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@Sakthivelj](https://discuss.bluerobotics.com/u/Sakthivelj)\
**Post date:** [August 25, 2023, 4:44am UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/9 "2023-08-25T04:44:02Z")

</div>

> [@Sakthivelj](#):
>
> Is there any manual way to solve the issue?

I have tried to resolve this in the docker but have not had success.

I tried it, but it still shows as offline. I attempted this [link](https://stackoverflow.com/questions/68494575/zerotier-cli-command-giving-error-missing-port-and-zerotier-one-port-not-found) inside Docker, but I’m still experiencing the same issue on my PC. When I resolved it, it showed as online.

How to raise an issue on a zero-tier plugin. This repository \* [Williangalvani ZeroTierOne](https://github.com/Williangalvani/ZeroTierOne) doesn’t have an issue section to raise the issue

---

<div class="post-metadata">

**Author:** ![patrickelectric](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/patrickelectric/32/2162_2.png) [@patrickelectric](https://discuss.bluerobotics.com/u/patrickelectric)\
**Post date:** [August 25, 2023, 12:33pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/10 "2023-08-25T12:33:12Z")

</div>

A issue tab was open in [the repository](https://github.com/Williangalvani/ZeroTierOne), be free to report the issue.

---

<div class="post-metadata">

**Author:** ![Sakthivelj](https://avatars.discourse-cdn.com/v4/letter/s/bbce88/32.png) [@Sakthivelj](https://discuss.bluerobotics.com/u/Sakthivelj)\
**Post date:** [August 25, 2023, 1:04pm UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/11 "2023-08-25T13:04:11Z")

</div>

Thanks @patrickelectric

---

<div class="post-metadata">

**Author:** ![tony-white](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.bluerobotics.com/tony-white/32/18385_2.png) [@tony-white](https://discuss.bluerobotics.com/u/tony-white)\
**Post date:** [September 5, 2023, 8:01am UTC](https://discuss.bluerobotics.com/t/ping360-sonar-data-retrieval-and-visualization-using-pingviewer-with-internet-and-radio-telemetry-options/14901/12 "2023-09-05T08:01:18Z")

</div>

Hi!  
Have you created a zero tier account, and tried to connect to your own private network via it’s 16 digit key? Once you’ve done this from zerotier, you should try to join from the blue os extension again. It will still say offline! But don’t worry - you just need to check the “allow” button next to the newly populated device in your zerotier network dashboard, accessible once you’ve logged into their site. You should then see the private IP next to the device, and if your local machine has also joined the network via zerotier client (available for mac/windows/linux/android), then the ping360 device should auto-populate when you launch pingviewer. Sometimes this does not work, but if you setup a manual connection using the appropriate zerotier IP & pingviewer port, you can get the connection working.  
If you’re familiar with zerotier already and have done this, do you have internet access on the raspberry pi running blue os? Just because you have a link to it, does not mean it has access to outside networks. You either need to connect the WiFi of the Pi to a local 2.4ghz network, or bridge your computers network adapters - as one is used for communications to Pi, and the other the internet.

Hope that’s helpful!

In terms of recording ping360 data - I’ve been able to stream the lower-bandwidth ping single beam sonar over a 4g connection, and the program deals well with the occasional stutter. If a ping viewer client connection is open to BlueOS, then the mavlink2rest api can be used with python to collect and log sonar data to the vehicle locally with no loss, for retrieval later - even syncing the coordinates to device time or gps position, if available.  
I plan to share more to make this process easier in the future!
