FAQ: An Overview of Using Custom Code in SmartThings (SmartThings Classic)

Thanks @JDRoberts. Just diving into the ST world. Most of my smart devices were from Lowes and was using their Iris system. I have successfully moved most of my Iris gear over to ST. The only thing I haven’t found a DTH for is the Iris Smart Wifi switch. (https://support.irisbylowes.com/link/portal/30143/30206/Article/835/Iris-Wi-Fi-Smart-Switch). I saw some articles about it but I don’t think anyone’s completed anything yet.

My first project to install was the Automated Garage Door Opener app. It absolutely blew my mind away. I’m an old time techie and many many moons ago dabbled in programming so I found it very fascinating. And the more research I did on a topic, it seems I ran into a post by @JDRoberts. :slight_smile: So thank you for all you do for this community. It is very much like the computer user communities that existed “back in the day”.

Thanks again and best wishes.


I just came up with a work around for the Iris Wi-Fi Smart switch. See how I did it here.

March 2018 Update

There are now two mobile apps:

"SmartThings classic,” which we are calling the V2 classic app in the forum.

“SmartThings (Samsung connect),” which we are calling the V3 app in the forum.

The process described in this FAQ will only make sense if you are using SmartThings classic.

At the time of this writing, The V3 app will not support custom device type handlers at all.

It will support custom smartapps, but only if you first add them through the SmartThings classic app.

We have not been given a timeline for when custom code will work with The V3 app :disappointed_relieved:


Very useful for understanding custom code, smart app and device handler. I was struggling to configure monoprice zwave motion sensor through my smarthings app. I tried to change the battery and unpair / repair countless of time, but it was always disconnecting randomly. One of my colleague sent me this link and I went through all post and comment. Changed device handler to Go control motion sensor and i didn’t have any problem since last 4 days… Kudos to you guys and making life little easier.


Where can I find a getting start guide for smartthings?

Unfortunately There isn’t really one right now. :disappointed_relieved:

Smartthings is in the middle of going through a big platform architecture transition, But the new stuff isn’t yet complete, so right now (June 2018) there are two separate mobile apps, two separate developer platforms, etc. It can get pretty confusing so I would just get in touch with support or search the forums or the community – created wiki when you have specific questions. Make sure you tell people which version of the app you are using, because the features are very different.

Meanwhile, the official supportbase has a few articles.


And the community – created wiki has resources for the original version of the app, now called “SmartThings classic“ but very little on the new version, which is called “SmartThings (Samsung connect)”.


Please take any follow on questions to other sections of the forum, as this thread is just an FAQ on custom code for the classic app.

(Also, This isn’t specifically for you, but just for general information: I don’t typically read private messages so there’s no point in sending them to me. I’m just another community member and physically I find opening the private messages very difficult. There are many people in the community who are always glad to help, so publicly posted questions will get the quickest and best responses.)


A Noob Question here, so bear with me - Im trying to add a custom Device handler for the Carrier Infinity Thermostat, but according to instructions the Device needs to be added first.

So the question is- What do I select in the drop-down for Device Type in the create Device page(since Carrier thermostats are not part of the list)? Should I just select an available thermostat on the list and simply use the new custom Device Type later?

Perhaps it is referring to adding the device through the ST app. Do you have a link to the instructions you are using?

I was referring to the instructions given by jdroberts on the very first post of this thread where he has laid out the steps to as new custom device type… Here is the section from his post-


These steps assume you have already added the device to your account through the SmartThings mobile app…"

Are these instructions only for switching the device type for an existing device? How do I add the carrier infinity thermostat… I can get the IP address of course, and fill in details manually, but what should I select for device type? Would I be able to just add and publish the custom device type first and then just choose that when adding the device?

Zigbee and zwave devices can be added through the mobile app first as a generic “thing“ as @jkp referenced and then you can change the device type handler assigned to that specific device.

Devices using other protocols or cloud to cloud integrations may have special instructions, which should’ve been included in the author thread where you got the code for the custom device type handler.

Which custom device type handler are you using and where specifically did you get it?

Has anyone used the new smartthings app? My devices using a custom device handler seem to be in a stuck “Checking status…”

This FAQ is specific to the classic app.

If you read one of the threads on the new app, you’ll find the answer to your question:


flagged . . .


Hello, did you solve this?
I have the same problem, I can’t get the device pair with SmartThings, I can’t add a generic “Thing” nor in the new version, nor in the classic app.

I am not able to find answer to this any where. Basically I modified the device handler for Garage Door simulator and removed the simulation part and added a command to set the state of the door, the device works in simulation mode. I know want to create a smart app that can add this specific device type and use the custom command I added.

I can’t figure out how to look for this specific device type as I have not created a new capability and use the custom command.

Can anyone point me to an example?

Ask your question in the developer section of the forum, and the people who write code should be able to help you there. :sunglasses:

Just start a new thread in the following section:


As always, JDRoberts knows the answer. I read that previously but I guess it didn’t sink in.



Has any body got step by step instructions on how to install this including using the Smarthings Developer portal? i can’t seem to find the ‘My Smart Apps’ to begin copying code across… When i select Smart Apps it just gives me information on what a Smart App is… I am obviously doing something incredibly stupid but im totally new to smartthings as of this morning.

You might be looking for IDE at https://account.smartthings.com

There are two sections - My Smartapps and My Device Handlers where you can add code and publish.

1 Like

thank you, ths developer portal I was on didn’t have these sections, I found a link in a youtube tutorial to the right page and followed the instructions and it worked. it failed a few times when I was logging in with my hive credentials but I eventually got it.

thanks for the support.

1 Like