# Ping from a PLC - webservice frontend

**URL:** <https://community.br-automation.com/t/ping-from-a-plc-webservice-frontend/1063>\
**Category:** Code & Libraries\
**Tags:** plc, library, automation-runtime, automation-studio, toolkit, mapp-view\
**Created:** [November 24, 2023, 1:58pm UTC](https://community.br-automation.com/t/ping-from-a-plc-webservice-frontend/1063 "2023-11-24T13:58:20Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![alexander.hefner](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/alexander.hefner/32/111_2.png) [@alexander.hefner](https://community.br-automation.com/u/alexander.hefner)\
**Post date:** [November 24, 2023, 1:58pm UTC](https://community.br-automation.com/t/ping-from-a-plc-webservice-frontend/1063/1 "2023-11-24T13:58:20Z")

</div>

Hi all,

from time to time I need to ping a device from the PLC, for example in test setups a.s.o.

Therefore, for my own convinience, I coded a small library that exposes the ping functionality to a small web frontend (not nice, but functional 😉 ) that helps using ping like in routers or other embedded devices.  
Additionally, some statistic values from a ethernet interface can be shown.

Here, I want to share this with you, maybe anyone else can somewhen utilize it, who knows?  
It should be easy to use:

- import the library “WebPing”  
**EDIT: I removed the download , the library can be found inside my Github repository, pls. see the infos in the following post**

- execute the function block “webPingInterface” in a task  

- That’s it.  
If everything is ok, you should now be able to open “\<PLC’s\_IP\_address\>/ping.cgi” in a browser and see the frontend.  
(internally, the function block uses the capabilities from the B&R Libraries AsICMP, AsHttp, AsETH, AsArCfg, AsHost to collect and provide the information shown in the web frontend).

Here’s a short description for the frontend:

 ![image](https://europe1.discourse-cdn.com/brcommunity/original/1X/ad02e6411cc63dffeba16f8bdea8c24edb346691.png)

Output when ping was successful:

 ![image](https://europe1.discourse-cdn.com/brcommunity/original/1X/1bb5d99a3ba5defeca8a7a5f030037957c8fd12c.png)

Output when ping failed:

 ![image](https://europe1.discourse-cdn.com/brcommunity/original/1X/888ec50bd67ee5ed88504fb7a47c2e3887298500.png)

Output of statistic values of the PLC’s ethernet interface:

 ![image](https://europe1.discourse-cdn.com/brcommunity/original/1X/be347268b607b63dc61bf2e11148d41d3d6ee006.png)

---

<div class="post-metadata">

**Author:** ![alexander.hefner](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/alexander.hefner/32/111_2.png) [@alexander.hefner](https://community.br-automation.com/u/alexander.hefner)\
**Post date:** [March 19, 2026, 7:44am UTC](https://community.br-automation.com/t/ping-from-a-plc-webservice-frontend/1063/2 "2026-03-19T07:44:31Z")

</div>

Just a small side-note:

I added https support to the webservice frontend.  
For better maintenance, I removed the direct download from the post above and added the library to my Github repository.  
More details about the repo’s content can be found in this post:

> [@Assorted collection of libraries on Github](https://community.br-automation.com/t/assorted-collection-of-libraries-on-github/9374):
>
> Hi all, inspired by some Community posts and discussions (for example [Code samples](https://community.br-automation.com/t/code-samples/9144)), I decided to publish a handful of libraries / samples that I’ve developed within the last years in my private projects or for educational reasons. About naming it an “assorted collection”, I want to quote Forrest Gump: “Life is like a box of chocolates - you never know what you’re gonna get.” slight_smile Some of the functions included I’ve already published here and there in our Community before (like [Push…](https://community.br-automation.com/t/push-notifications/8874)
