“Device Integration Coding for Dummies” ? [2018 New Platform Nongroovy Edition]

As of this writing (fall 2018) smartthings is in a transitional state, moving to a new app, new hub, and new development platform.

Custom device type handlers will no longer run in the smartthings groovy cloud. Instead, Developers will host their own apps and integrate with smartthings through a developer kit.

Below thanks to a link from @Automated_House , A presentation from the 2018 Samsung developers conference:

https://m.youtube.com/watch?feature=youtu.be&v=kSk8UdSGpsg

And here is the link to the new platform developer documentation for smartapps and device integrations:

https://smartthings.developer.samsung.com/develop/guides/smartapps/basics.html

  • The SmartApp can either be an AWS Lambda function, or a WebHook endpoint with a RESTful API interface.

A directly connected device communicates directly with SmartThings Cloud
.
You can use one of the following platforms:
.

  • TizenRT is an RTOS-based lightweight platform. For more information, see here.
  • Tizen IoT supports any type of special-purpose IoT device based on the Linux kernel. For more information, see here.

There is also an option to use oauth to integrate with third-party apps. On the new platform, This requires Samsung approval.

https://smartthings.developer.samsung.com/develop/guides/oauth/oauth-integration.html

SmartThings uses OAuth2 for authentication. To integrate a third-party application with SmartThings, first submit a request. Once approved, you can enable users of your platform to interact with SmartThings Cloud through your application.

So a lot is changing, the process is still in flux, and not all the details are known yet.

There is a discussion thread going back to the initial 2017 announcement of the changes here:

3 Likes

There are several SDC 2018 videos on that YouTube channel that are worth watching. SmartThings has really fleshed out cloud-to-cloud, direct to cloud and smart app development on the new platform. And once the dev is ready, they now have a streamlined process for getting your cloud-to-cloud or direct to cloud devices either Works With SmartThings certified or SmartThings compatible certified. The whole SDC video series regarding SmartThings is a good watch. Even the Bixby one (you can create automations by voice)

One thing they have yet to provide any detail on are hub connected devices (LAN, z-wave or zigbee) on the new platform.

The SmartThings Device Kit seems like the SmartThings equivalent of the Alexa Gadgets dev kit. May be fun for someone like @ogiewon to tinker with, too. Maybe a second version of SmartThings Anything?

2 Likes

My biggest concern: What happens to existing SmartThings handlers and applications. Will they carry forward into the future or will they die out automatically if not updated to the new paradigm?

Dave

I’m sure at some point groovy dev ow handlers and smartapps will stop working because at some point the groovy platform will be retired. But considering the new platform doesn’t even have a way of writing hub connected device handlers, that’s probably a ways off.

1 Like

The new SmartThings ecosystem will be based on an html/JavaScript/xml-based plugin architecture for devices, and although they say the new “SmartThings app uses a default plugin for IoT devices that simply use predefined capabilities with built-in UI widgets”, the use of the Developer Workspace is still required to integrate devices into SmartThings. To make a device created in the Developer Workspace available to all users, it needs to be published, and I only see reference to publishing devices as SmartThings-certified or SmartThings-compatible, both of which essentially require the developer to be the manufacturer / producer of the device.

So regardless of whether the use of the groovy language for device drivers is grandfathered or supplanted (likely by JavaScript), a larger concern should be how user community created device drivers, plugins (and smart apps) will be published or shared with other users.

Will we need to create a “fake” developer account to self publish, as people are doing with SmartThings-Alexa, SmartThings-Nest, etc. integrations?

That would just raise the bar to entry a little too high for many people, I believe.

2 Likes

Yes.

The new SmartThings platform is not intended to be the same as the “old” SmartThings platform.

A miniscule fraction of SmartThings Customers use the IDE at all, let alone actually paste in a custom (non-officially-certified-published) DTH or SmartApp.

The bar is being set high intentionally. SmartThings is not meant as self-publishing platform for average consumers. “many people” < 0.1% of the target market.

3 Likes

Creating a closed system like this will likely fail. Too bad Smarthings was a great platform.

“Fail”?

There are plenty of systems that use the same model. e.g., The process that Samsung envisions is to be similar to publishing an Amazon Alexa skill. Last I check, Alexa was doing just fine.

1 Like

Maybe so. But (in my opinion) the community is what has kept Smartthings momentum going since the Samsung purchase. Samsung has a hard time delivering on promises and Samsung has not followed through on many things they have announced (ask Samsung TV owners having ST integration issues (used to work now doesn’t), or Samsung TV owners who were supposed to get upgrades through the smart connect, etc). I can’t even get my 2018 Samsung TV to work with a Samsung app Scene or Automation without an error (no response on problem log either). Seems we have been waiting quite a while for direct connect to hub device capability to come out on the new platform and meantime custom DTH code won’t work. I do hope they get it worked out soon, if not there are other alternatives that might grab the market share ST has today and losing a lead like that would be a fail.

Could you folks please take the business model discussion to another thread, maybe one of the several threads that already exist on that topic? We’re getting pretty far afield for this particular thread, which is supposed to be technical. Thanks!

Just look for the tags “IOTindustry“ or “iotfuture“ and you’ll find lots of similar discussions. :sunglasses:

If you want something specific to concerns about the new smartthings platform, see the existing active thread: