Hello all, I was just wondering with groovy being deprecated will the Smartthings Binding no longer function? Is it planned to make a new edge driver for it? I tried to search but have not seen any talks about this yet. Thanks.
I didn’t see any mention of Groovy being deprecated. Where did you see that? Is this the language in general or openHAB in specific? Deprecating the rules support for Groovy should have no impact on bindings that may use Groovy. But if the support for Groovy upstream of OH is the problem, eventually any bindings that use it would need to be ported to a different language, preferably Java I would think.
I am not entirely sure how they are integrated together so I am not sure if it will cause any issues but seeing as the cloud side of ide is going away along with SmartApps I would assume it will be effected.
I’m pretty sure the openHAB smartthings binding communicates with the smartthings hub using plain old html(s)
The binding is written in java like every other openHAB binding
Groovy being EOL shouldn’t cause an issue with the binding
But there is a requirement for SmartApps installation for openHAB to communicate. The instructions mention it needs to be completed for the binding to work would this not be affected with the new changes?
oh yes, you are right, it’s been a few years since I messed with it. The openHAB binding does require installation of a smartapp. If the smartapp is written in groovy could be trouble
Sorry, I didn’t follow link, is all smartapps done or just groovy? No idea
@BobRak is author of binding, perhaps he would be able to give more infos
They will deprecate the entire IDE plattform, so everything runs locally in youre smartthings box from next year. Which means all smartapps will stop working which today are running in the cloud. So every vendor has to develop an edge driver instead which can be deployed locally to the smartthings hub. I have quite alot in my smartthings hub (everything z-wave and zigbee) so hope @BobRak can take a look at this.
A little bit off-topic, but partially related.
I came across this thread when my Smartthings Buttons stopped working due to the Platform Transition mentioned above started today 15/10/2022. (more info on support.smartthings.com/hc/en-us/articles/9339624925204)
If you’re experiencing the same problem and you want to still be able to use them with OpenHab through the SmartApp here is what I’ve done:
Disclaimer: As briefly said, this is a temporary workaround still involving the usage of SmartApps to restore the connection to Openhab. It will not change anything regarding the deprecation of IDE platform. Once the transition will be over the SmartApp will need to be replaced with something else probably.
- Install Smartthings CLI on your PC
- Install edge driver for Smartthings Zigbee Button (I used the one from Mariano-Github/Edge-Drivers-Beta/tree/main/st-zigbee-motion-sensor)
$ git clone https://github.com/Mariano-Github/Edge-Drivers-Beta.git $ smartthings edge:drivers:package [path/to/st-zigbee-button] // create a channel, if needed $ smartthings edge:channels:create // assign the package to the channel $ smartthings edge:channels:assign <st-zigbee-button-DRIVER-ID> -C <YOUR-CHANNEL-ID> // enroll your hub to the channel $ smartthings edge:channels:enroll -C <YOUR-CHANNEL-ID> // install the driver (remember to select the right channel and hub) $ smartthings edge:drivers:install [st-zigbee-button-DRIVER-ID]
- Login to smartthings ide https://graph.api.smartthings.com/
- Go to “My Devices” (of the hub where you have the Buttons of your interest)
- Optional, but recommended. Take a screenshot / save all the informations of the button devices (maybe you might need it one day)
- Remove all the button devices
- Reset the Button devices with the help of a clip (hold for 10s)
- They should flash with red and green light (pair mode)
- On the Smartthings app of your phone click on “Add new devices” → “Nearby”
- They all should be added back now. Rename them using the same name you had before.
- Go to “Automation” tab of your smartthings app and select “OpenHabAuto” SmartApps (the name of your openhab smartapp). Click on “Button” capability and select again the devices you had before.
- Optional, repeat step 11 for “Temperature” capability.
- Save and now everything should work as before.
Hope it is appreciated, please correct me if I made any mistake and also feel free to provide different procedures if this one is wrong or could be improved.
I have some problems with the smart app. It doesn’t want to be saved. I insert it in ide smart app and device handler. and when opening the smart app and inserting all devices I try to save but nothing it doesn’t work
Smart apps from ide are discontinued by SmartThings. Everything is being made into edge drivers now but it is slow for adoption and the forums are difficult to navigate as many reference the old methods. I have now totally moved away from them and they are no dead to me lol. Openhab all the way! I was only using them for icomfort integration which was using a smart app once it was dead I dug into how it worked and was able to use HTTP binding to replicate the integration as best as I could. (I’m not that great of a coder but I manage, it just doesn’t look pretty lol)
Do we have any other possibilities to connect smartthings edge with openHAB? SmartApps do not work with Groovy… what to do now :((
I have moved to strictly openhab now for the core system with no links to Smartthings. However, I did see that Smartthings Edge drivers can do http calls and I assume can receive as well but have not done enough research on that. The problem I find with the transition is no resources. I did try to learn the new api however, the documentation is lacking and when you try to search for anything. It is all old references and they made no separation. My suggestion, although frustrating and a pain, I would migrate your devices to openhab if possible.
thank you for your answer, I hope that in the near future some strong heads that are here will find a solution … unfortunately, the level of my skills is very low. I did as you said, I moved all the devices I could to openhab, unfortunately the smartthings bridge works for me with zigbee and z-wave devices … fibaro thermostats … and others … I know that I can buy a z-wave usb … I will probably do it … although I hope someone will figure it out.
I haven’t heard any updates from the original creator of the binding and I too do not have the knowledge to make amendments. I’m getting better but that’s still far away for me lol. I use the Nortek HUSBZB-1 which is zigbee and z-wave. I have noticed many developers dealing with Smartthings in the past are not making the transition to edge which makes me worried of the Smartthings future. Being international we can’t even add lock codes or anything without a 3rd party that no longer exists.
So far, during my research I came across these 2 awesome repos from @toddaustin07:
- GitHub - toddaustin07/MQTT_SmartApp: SmartThings SmartApp for Sending out device capability state updates to MQTT
- webrequestor/README.md at main · toddaustin07/webrequestor · GitHub
If I understood correctly, the first one allows you to post items’ values to mqtt topics, so it can basically replace the groovy SmartApp we’re using today (see supported devices in the repo).
The second one instead give us the ability to call POST/GET requests to an URL.
I still haven’t set the first one, but since the deprecation of groovy platform is mentioned also in the “Why” section of the project’s readme, probably this is what you’re looking for.
For now I just set the second repo:
- Created a routine in ST that, for example, if I push a button it sends a POST request to “openhab-ip:port/rest/items/BUTTON_ITEM” with payload “pushed” and header “Content-Type=text-plain”.
Hope it helps.
My OH3 Smartthings binding stopped working just a couple of days ago, From what I have read above, it seems that the Smart App concept that was being used in the binding implementation is no longer supported bty Samsung.
Can you please confirm that this is correct: the binding is no longer working, and there is no easy corrective.
Many thanks in advance.
the solution is always there but the information at the moment is hard to get, my skills are not great enough to figure out the connection… but i know there are people here who will work it out…
Thanks for your response. I hope you are right about that, as there are some devices in my home that I don’t have any other way to control through OH.
I bought myself a Samsung Soundbar recently and tried to play around with the new Samsung CLI from their Github. I found that I gain access to maybe 1/3rd of the features available through the SmartThings phone app, some of which aren’t available via the remote control, leaving only the phone app as the option to change/access certain settings.
The CLI does support JSON for pulling down settings/info, though I’ve not tried that yet as the info I want to pull down, isn’t there.
I’ve opened an enhancement request on the SmartThings CLI Github, asking them to expose more settings+information, JSON information and possibly even asking if they could make it a daemon that would work with MQTT for the Home Automation communities (Dont ask, dont get I guess).
If anyone is interested in adding to this enhancement I posted, or may wish to give it a thumbs up boost, please do.
I was asking myself is anyone start working on this ?
I see that home assistant have a working implementation using the new approach.
Not look very far on it for now, but it’s seems to be based on two python library : pysmartapps & pysmartthings.
Perhaps we can take inspiration from this to start a new implementation of the binding.