Announcement | SmartThings Edge for Devices and Automations

Was this why all of my SmartThings Hubs reported they were offline for almost 5 hours last night?

Wow! Vera (now Ezlo) has been using Lua for home automation since 2010. It’s lightweight, fast, and pretty easy to learn if you know other if/then scripting languages.

The following is a good one page top level description of Lua (for programmers), comparing it to both python and Java.

https://www.bmc.com/blogs/lua-programming-language/

It will definitely look like coding to non programmers, but so does Groovy and Webcore.

This is an intriguing step. :sunglasses:

One very good thing: if I’m reading this correctly, it should provide a path for companies like Zooz and Inovelli (and Aeotec) to provide the custom drivers for their zwave devices. Once they’re rewritten as Edge Drivers, of course. I’m not quite sure how it would work for @rboy ‘s code, though.

And I don’t know what’s going to happen to all the Tuya Zigbee devices using their proprietary clusters but rebranded and firmware modified by different companies, that could be a mess. :thinking:

Anyway, interesting for sure.

edited to update

an expert has informed me that since an edge driver can handle multiple hardware variants and the parent/child construct will be replaced by component definitions in the original edge driver, situations like the Tuya proprietary cluster can be handled in a pretty straightforward manner. Which is good news. :sunglasses:

8 Likes

You can check out an example driver using manufacturer specific clusters here: SampleDrivers/st-multipurpose-sensor at main · SmartThingsDevelopers/SampleDrivers · GitHub

4 Likes

Sorry, since I rely on a screen reader, I don’t read (listen to) code these days. In any language. :wink: I’ll have to wait for others to report back with analyses in English.

5 Likes

We are on it my man :slight_smile:

I got a glimpse from the guys at ST into how easy it is now to setup animated notifications in the new app using these drivers and it’s awesome.

@erocm1231 is working with the guys over there to make sure this rolls out ASAP.

Wish I could say more, but just know it’s going to be awesome and I’ve seen the demos of the Red Series switches in action!

17 Likes

One significant known limitation I think deserves being called out anywhere people might be thinking about playing around with this right now:

  • Driver-based devices do not work with Groovy SmartApps, including SmartLighting. Drivers do support Rules as automatons in the App or via the API, or Endpoint Apps.

SmartThings Edge Developer Beta | Known Issues and Bug Tracking

3 Likes

Everyone with a Connect home/ Smartthings Wifi hub cries deeply. Maybe we’ll get to play sometime this year.

a SmartThings Hub with firmware version 000.038.000XX or greater

3 Likes

How is a quick copy-paste confusing??? I’ve just watched some of the ST video tutorials on creating new edge drivers and it is now beyond my abilities, with acronyms like CLI, NPM, jaml etc. bouncing about like I know what any of that is.

Point 2 on the CLI instructions have me stumped already:

Install it on your path and rename it to “smartthings”. It does not need administrator privileges but of course will need to be executable.

I used to be able to tweak dth’s to suit my needs, now I haven’t got a clue.

With github integration, updates were already simple, and only necessary anyway because ST keep breaking thing that previously worked.

I’m so glad the only devices I have left on ST are my Samsung freezer and ring doorbell, everything else is working perfectly on Hubitat now.

Even those don’t work properly:

  • For the freezer, I cannot use the door contact status to trigger automations (but I can in webcore) / not compatible with Home Care Wizard despite being less than 6 months old. The only thing available in automations is the setting temperature (not even the actual temperature). webcore can see over 20 capabilities that can be used to trigger things.
  • For the ring doorbell, I can’t use motion as a trigger for automations, (but I can in webcore)
3 Likes

Yes! I can not wait to play!
#local-execution #hub-first #offline-usecases #lua #rapboard #edge-device #edge #hashtag

12 Likes

Will this include a local API on the hub? I’m assuming that’s a pretty long shot but if so I’d be over the moon!

2 Likes

I’ve had SmartThings pretty much the entire time it’s been in existence so I take a look from time to time at posts here in the community. I must say that this one caught my eye and gave me cause to actually make a reply to the topic, which is something I haven’t felt compelled to do in a long time simply due to nothing but not being satisfied with the new SmartThings app and from changes made functionally well beyond the new app, it seemed becoming less and less reliable.

With that being said as at least my personal experience, I was made to then explore other options. So, I depend on SmarThings now less and less.

Although, surely I’m not the only somewhat early adopter of SmartThings that notices the irony in that essentially, Samsung has, in a roundabout way, just reinstated features that were available as promised on the original Kickstarter listing of SmartThings? Am, I?

4 Likes

I agree on this one, being that those “hubs” are 2.5 basically.
This is huge news none the less, That’s something that drove me away from this platform in favor of Apple HomeKit, All is left now is to have the hub connect directly to Apple’s eco system and thats a huge win for everyone, everywhere. (something that wont happen because apple’s strict rules)

1 Like

I know your frustration. You’ve got what you have paid for, a Samsung product with half baked, generalised integration in Samsung’s own in-house SmartThings app… Look at the Samsung Hob integration, search for some topics, and you will cry when you see how much that is basic without any understanding of home automation.

2 Likes

Pfft, I cant even automate a Samsung vacuum anymore (something that i was able to do when i first bought it back in 2018!!!)

2 Likes

So what is the migration process going to look like for existing handlers? Is there going to be a conversion tool?

1 Like

It may happen with Matter for matter compliant devices. Samsung hasn’t published any details on what their matter support will look like, but Apple has published a lot, including the fact that other hubs will be able to join and their Matter-exposed devices can appear in the Home app. Which is very cool. :sunglasses:

1 Like

To be honest, this looks awesome, but I feel it is a bit late for many people who have jumped ships during the past year.

Anyhow, congratulations to the developer team, you have done it again, you put back SmartThings to the map of home automation systems with this improved local execution solution. I am curious to see a local API next for interoperability. (And a working Google Home integration without sharing all devices with the Voice Assistant :wink: )

Just few short questions,

Where is this solution standing regarding bindings and group associations? (Both Zigbee and Zwave…)

Is there an example how the IKEA motion sensors and 5 button remotes are working with this edge solution? (The group binding of these devices was an Achilles heel for their integration of missing local execution.)

Is there an example of the old presence sensors, as those were using undocumented manufacturer specific clusters and multiple endpoints as well for reporting and beep control?

7 Likes

The new APIs are very much so speaking the raw underlying protocols with some reasonable security restrictions based around our Permissions system along with a larger variety of helper methods for zigbee/z-wave generated based off specifications where applicable.

See Edge Device Driver Reference — SmartThings Edge Device Drivers documentation for the detailed API docs.

For both Zigbee and Z-Wave, our development teams put together a structure for configuring the drivers decoratively where possible but there is still the full power to drop down to do what needs to be done for more bespoke devices.

If you take a look at the drivers that have been released you can get a feel and when we are able to release more drivers, things will hopefully be easier to build off those additional examples. For something like the IKEA 5-button device, we need to do a little extra work during configure to build and send a ZDO Bind Request via st.zigbee.zdo.bind_request

Hopefully we’ll have one of the drivers using that feature released soon to share as a reference in addition to what can be found in the docs.

I believe we have working integrations for both of those devices and we will be making the source available as well as sharing the driver via beta in the coming days and weeks as devices go through rounds of internal testing. I believe these will be part of the “zigbee-button” and “zigbee-motion” category drivers that will eventually be present in SmartThingsEdgeDrivers/drivers/SmartThings at main · SmartThingsCommunity/SmartThingsEdgeDrivers · G

These haven’t been ported to the new engine yet as they are supported locally via the existing “Protocol Handlers” so they weren’t an early priority but these may be ones we move to support via drivers in the future.

2 Likes

Will the new edge drivers support zwave central scene commands or are these still going to be abstracted into some kind of button press paradigm?

Central scene is listed in the docs Paul linked to above

3 Likes