You can hear about it here:
It starts at 4:42 and ends at 10:33
Nice to know something definitive, and what to get familiar with.
Iām curious why ST settled on Lua?
https://www.lua.org/
From what i have heard on the podcast, lua is very fast and light scrpting language meaning that it is also easier to code with.
Curious to see if a conversion tool is coming
Now the cats out the bag !!
I wasnāt involved in the testing, so what hasnāt immediately become apparent from the available documentation is what the deal is going to be with āstockā drivers, if such things still exist. A near fatal weakness of ST has been the lack of quality control of handlers. Once upon a time, it was seen as āa good thingā when fingerprints and modifications for previously unsupported devices appeared in the stock handlers as now we could get rid of slightly iffy community handlers. However lately I have been finding the slightly iffy community handlers have often been the better option by some distance (for example, it is no use having the āofficialā temperature sensor handler if it only reports temperature changes every two hours).
This is the repo with official device drivers here: GitHub - SmartThingsCommunity/SmartThingsEdgeDrivers
Those are the ones that have been fully tested so far. Thereās another (private) repo with a bunch more in there that are written and āworkingā, but not yet fully tested.
Weāre also making these a lot easier to use/share.
You had me right up to CLIā¦
hehehā¦ nah, I guess Iām just going to have to give it another go. I had a few install issues on my first go with it, but Iāll get it going.
(Cross posting from the official announcement thread)
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.
Hereās a good one page top level beginnerās guide to Lua for programmers, comparing it to Java and Python.
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.
One very good thing: if Iām read 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.
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.
The CLI install has been streamlined. You can install it directly from NPM if you already have that on your workstation.
Once you have the CLI and a driver you can have a device installed in less than ten minutes.
How do we know if we are using groovy or lua?
Thatās the make or break thing for me.
Yes, the channels seem like quite an interesting solution. The drivers arenāt what Iād anticipated (I was expecting a lot less code) but I guess are a pragmatic solution, particularly the LAN drivers.
You mean as a user with devices? For the most part you donāt know. At the moment, youād know because youād have opted into a channel: Preview | SmartThings-managed Edge Device Drivers
At the moment, you can go into graph and look at you list of devices and if the DTH is listed as āplaceholderā itās a Driver. You can also use the CLI, smartthings devices
will show the package key of a driver. In the app [Edit: Android only ATM, the iOS release got delayed] you can also click the ...
on the device card and thereāll be a āDriverā item that will show you which driver for a lua driver based integration.
Though, for the most part, when interacting with a device, you shouldnāt see any difference.
Ok thanks this is what is was asking.
The interesting thing is that I ran smartthings edge:drivers
out of curiosity and ten things popped up. All were custom DTHs Iād used in the past, mostly very briefly, and since deleted. Donāt know where they were dug up from.
Thatās sounds really weird, Graham. Some sort of caching glitch maybe?