Last year, we told you that we are transitioning to an API-first SmartThings Platform. As a part of this, we started investing deeply in improving stability and security. Today we are announcing the beta release of SmartThings Edge - a new architecture for Hubs that use Device Drivers and Rules to execute Hub Connected devices with lower latency, higher reliability, and… local execution.
What is SmartThings Edge?
We are taking smart home events that would have happened on the SmartThings Cloud and moving them to your SmartThings Hub. SmartThings Edge uses Lua© based Device Drivers and our Rules API to control and automate devices connected directly with a SmartThings Hub. This includes Zigbee, Z-Wave, and LAN devices as well as Automations triggered by timers and other Hub Connected devices using Drivers. In the future, this will expand to include more protocols and features, like the new Matter standard.
For customers, edge processing means reduced latency. For partners and developers, SmartThings Edge also brings new benefits, including reduced cloud costs, an improved device permissioning model, and the ability to deploy updates to their drivers. Local device support is open to everyone - not just WWST partners - enabling easier device support and integration with standard Capabilities.
Building Hub Connected Devices
Hub Connected Devices are defined by a Driver package that includes the Fingerprints, Components, Preferences, and Lua code files. As a WWST partner, you can create your own Driver package or add your device’s Fingerprint to our predefined supported Drivers.
Rules and Automations
As part of our June SmartThings app release, you may have noticed that some of your Automations show a little icon. This means the Automation is using locally-executing Conditions and Actions - such as time of day. As your devices begin using Drivers and compatible Rules, they will begin running on your Hub - meaning higher reliability and faster response times.
Sharing and Distribution
Previously, sharing Device Type Handlers required end-users copy and paste the code for each individual DTH into their accounts. This could be confusing and time consuming for users to ensure they had the latest updates installed.
With SmartThings Edge, we are also introducing Driver Sharing for device testing and community distribution. OEMs can submit their Drivers to SmartThings for WWST Certification and distribution in the SmartThings Catalog. However, hobbyists can now share custom Devices with a simple link… no need to copy and paste code! To learn more, visit these Drivers
Getting Started
With this beta release, you can start testing features and providing us feedback before we start the platform migration. To get started, you need the latest version of the SmartThings app, a SmartThings Hub with firmware version 000.038.000XX or greater, and a Zigbee, Z-Wave, or LAN device.
Developers
We’ve created the following resources to help you get started:
- New Developer Documentation Portal with Capabilities and Device Preference Reference Guides
- Tutorials for Creating Edge Drivers and Rules
- Code Samples for Generic Zigbee, Z-Wave, and LAN Drivers
Feel free to start a thread or reply to existing threads on the same topic if you have questions or feedback on building Edge drivers.
Customers
This first release is primarily targeted for developers and advanced users - there may be bugs. Edge Drivers downloaded from the Community are not supported for end users.
Once we work through the initial bugs and glitches, we will begin upgrading your devices from Device Type Handlers to Edge Drivers in phases. When we begin upgrading your device, the transition should be seamless; any associated Automations that can run locally will automatically transition to your Hub. We appreciate your patience while we ensure a great and seamless experience for all users.
Have feedback? Feel free to respond to one of our tutorials or create a new thread. Follow @SmartThings on Twitter and share your projects with us!