Add a bespoke / custom device that perform a "ping"

Hi everyone.

TL;DR
I’d like to have my Smartthings v3 hub be made aware if an IP address on my LAN is unreachable. If it’s not contactable then a virtual switch gets toggled. Happy to use another service like IFTTT or similar if anyone knows of something…?

Background
Still no support for Tado heating systems (I’ve been nagging Tado again, but still nothing). I’ve been using Google Home as a middleware layer which is better than nothing but still far from ideal.

One specific issue I’d like to address is a simple one… I’d like a notification if/when the Tado system is “unavailable” or “offline”. This usually happens when the Tado “internet Bridge” has no power.

This “Internet Bridge” for those who aren’t familiar is an Ethernet to 6LoWPAN hub / access point used by Tado instead of using WiFi or ZigBee/Z-Wave. It’s a little USB-powered brick connected via Ethernet to my home router and then communicates wirelessly using 6LoWPAN to the Tado “Wireless Thermostat” and the “Wireless Receiver” (with the latter wired to my boiler).

Ideally, I’d like to have Smarthings ping an IP address on my LAN. Should there be no ICMP echo (or “Ping”) reply then something like a virtual switch on my Smartthings hub should be flipped. I’d then have a routine that states if the switch is flipped on, notifications are sent, colour of some smart lights we have are set to red etc.

More Info
Whilst I’ve said earlier on this post that I’m trying to use “Ping” as a trigger, really I’m just trying to obtain the status of the “Tado Internet Bridge”. Tado uses their own cloud, so when I open the Tado app on my phone it will show our heating system as being “disconnected” (or “offline” or something similar). This is always because the “Internet Bridge” has lost power. It’s detecting this which is the problem, as there’s zero integration available between Tado and ST. (Even though there’s a public API for Tado).

Google Home
I do have Google Home in our household which is secondary to our SmartThings platform. GHome does have an integration with Tado, but it’s so, so basic. Can see current and target temperature / humidity and the ability to set the temperature. Unfortunately there’s no trigger option in Google Home “Automations” for a device being offline, in fact I can’t use the Tado heating object as the trigger for any “Automation”. I did think of creating a virtual switch in ST, and then having an GHome Automation that flips the ST switch if GHome sees Tado as being offline… but alas that won’t work.

IFTTT
I don’t actually use IFTTT, but thought I’d take a look just for this one issue as Tado is officially supported by IFTTT as well as ST. However there’s no existing Applet for Tado status. I’m looking now to see if you can create your own Applet which is something I’ll keep investigating, but this is definitely a paid for feature and I’m not sure if it’s something that’s possible. If anyone has any more info on this please do feel free to share / educate this noon on IFTTT!

Final thoughts
As I’m not a developer - but an infrastructure man - I’ve given up (other than the IFTTT route) on trying to get the status of my Tado from the Tado cloud API, instead focusing on just getting the high-level TCP/IP status of the “Internet Bridge” instead, as this has always been the point of failure and will confirm both power and networking (on the Ethernet side at least) is up. However even to achieve this I still need a way for my ST hub to know if a certain IP on the LAN is echo’ing / replying to a ping - either directly (from the hub) or indirectly (something else does the ping and update the virtual switch in ST).

Sorry for the long post, I have a habit of this! Would love others thoughts on this.

Thanks,

Steve

It’s not going to happen directly, because smartthings doesn’t allow us to run anything on the hub that goes outside of the local network. I think it’s just a security feature they’ve adopted.

however, you can certainly write your own smartapp and host it yourself and use that to do the ping and communicate the result to smartthings by turning on a virtual switch.

You can either host it in a cloud service like AWS or on a local device.

@TAustin has done a number of projects of this type and might have some more specific suggestions.

So you aren’t going to add a custom device that does the ping. You are going to add a virtual device to represent the status of the ping. And you will need to write a custom smartapp hosted somewhere else to do that ping.

So, definitely doable, just not quite the way you were imagining.

1 Like

Hi Steven. Happy to help you any way I can, so feel free to direct message me.

Edge drivers don’t have access to the ping command, so other TCP or UDP-based methods need to be used and of course depends on how your device responds. If you know the IP and port number, you can try opening a socket and see if you get an error.

Sometimes too, devices might make their presence known through mDNS, UPnP/SSDP, or other multicast broadcasts.

1 Like

No Smartthings solution but I have 2 raspberry pi’s that ping each other (as well as pinging other devices - all with fixed IPs) and they send me an email when there’s no response to pings.

1 Like

Thanks everyone, that’s good information to know. Disappointing that there’s no way to have the Aeotec hub to do something as basic as ping or to attempt to open a socket on a port to something on the same LAN.

After a bit of consideration and research, I’m thinking of going down the route of Home Assistant. Whilst I appreciate for the bulk of users you’d want a to run HA as a physical device on your LAN, for my needs I was looking at deploying it in Azure. The intention would be use HA as a integration node between SmartThings and anything I own that doesn’t have a SmartThings native integration, such as my Tado. After some research it doesn’t look like running HA in Azure is very viable (even if it’s technically possible), so as a stop gap I’ve deployed it as VM on my laptop to play and indeed I can see the status of my Tado as being “offline”, so it looks like this could be a winner.

To save messing about too much with hardware I’ve pulled the trigger on buying the Home Assistant Green which is a pre-built appliance built on a PI from what I can see.

Thanks again everyone for your help an input. I’m hoping having both a Aeotec SmartThing hub plus a Home Assistant device on my LAN I can finally cover all bases, using Google Home as a user-friendly human interface (for the family) where necessary / voice assistant I can get everything working fully.

Thanks again - appreciate the fantastic community around SmartThings.

2 Likes