Custom Capability and CLI Developer Preview

Hello @cdikland,

For the config.yaml file, try to insert the personal access token without the quotation marks and with the correct indentation, see the sample below:

          token: xxxx-xxx-xxxx

Another alternative is to add the --token parameter in the command. For example:
smartthings devices --token=xxxx-xxx-xxxx

1 Like

Have anyone manage to make the automations of custom capabilities appear on automation screen?


As far as I am aware, that is further down the ‘to do’ list as that is new functionality.

1 Like

Good grief… That was it. Works like a charm. Now… where was I?

I have amended the readme for the CLI to make it more clear what file should be edited and what it should look like @cdikland can you tell me if this makes it more clear?

Thanks again for pointing out how to get information about the built-in capabilities, I’m still surprised I never tried those commands without a prefix.

Being able to see those and call some of those APIs directly would have saved me hours of trial and error.

On a different note, is there a known bug with getting custom capabilities to display multiple things on the details screen? I can make it display the button or the state, depending on the order, but I can’t get it to display both.

I’ve also implemented the button the same way as momentary, but it just spins instead of executing that command, any thoughts?

Or know why when you create a handler with multiple custom capabilities the IDE sometimes displays a duplicate error, but if you delete one of the capability lines it saves and still saves fine after putting that line back?

It’s best to use a single controls with each presentation at the moment, it doesn’t support more than one for custom presentations atleast.

Button commands are broken at this time, the only ones that work are state, list (partial) and switch (partially). Many posts above someone had summarized the working/broken controls but in a nutshell, state and list are the most stable (althought list will show the key instead of the value on screen). Jody and team working on getting it fixed (soon hopefully).

I tried a list yesterday and the list is there and I can select an item from it but it doesn’t call the command and I always get an error ‘A network or server error occurred. Try again later’.

Of course, what I really want is four buttons instead of 4 items in a list but I can’t make any sense of how to use the stock button capability. No way to set labels or anything and I can’t find an example to use.

I think you may be looking at this backwards. The “Button” capability is for DTH’s which report pushing/pressing a buttons on the device. It only displays the event (pushed, pressed, held etc) (from a UI perspective it this is a state control).

I think what you’re looking to use in your DTH is a custom pushButton control which is completely different from the capability. This control however at this time doesn’t work.

1 Like

OK, thanks. Yes, I was looking for a set of virtual buttons to trigger actions. Sounds like that would be pushbutton but that can only be one where I really want buttons at least in pairs (+/-). This is all for trying to create some sort of time update/display. Wish that was a stock capability. sigh.

If you’re looking for pairs look at the stepper control. Not sure if it’s working yet but that may be a better option.

Yes, stepper works great for numbers and I am already using those but, for time, I need two numbers (hours and minutes). I can’t display them together both with steppers since only one attribute can be displayed per capability. Plan was to use textField and then separate buttons to adjust but there is just so darn much that doesn’t work or other limitations in this new system. It’s ridiculous how bad this is.

Very tempted to jump ship but I’m a cheapskate. If I can get all my stuff working, I will be happy. Right now, I’m at 95%. Just need this one more thing but it doesn’t seem possible within the current capabilities/limitations.

Is there some problem with SmartThings custom DTH right now? I just created a new DTH using steppers and all I get when I try to use the stepper is ‘A network or server error occurred. Try again later’.

EDIT: It’s me. Went away on vacation and forgot everything. That’s what happens when something is so complicated. Still working everything out but getting closer.

EDIT 2: Still can’t figure this out. I have created two steppers using the same syntax as previous ones that are working but now it will not display any values and does not call the setter command. Did something change? I updated to the latest CLI and no change.

1 Like

Thank you for the info. I searched this topic for those other questions and didn’t find anything, but I should have searched for all of them before asking…

It would be nice if there was a list of known issues somewhere that they regularly update instead of having them buried in a topic with 600+ posts…

1 Like

Totally agree. I saved a link to that post a while back so I could find it. Otherwise it is just buried in the quagmire.

In case you need it:


Well, I had tried everything including deleting and re-creating. Finally just waited it out and it is now magically working.

Thank you for posting that, but it’s a bit disconcerting to see that it was posted 6 weeks ago and none of those issues have been fixed…

I ended up reading the 270+ posts after that one and I highly recommend that to others just jumping into this because it will most likely answer some of their questions and at the very least it make them realize that pretty much everyone else is just as frustrated as they are.


You triggered a thought in my head and I got it working today. A bit messy but I am using 3 capabilities control a time value. Two steppers with hours and minutes (units on hours=AM/PM) and then a textField that ties them together. So each time the hours or minutes are changed by the stepper, the string updates to the desired time. Now I just need to extend it for 4 different time values (simple duplication). I can tie this device to my sprinkler control in WebCoRE.

Doesn’t look pretty but works in the new app so now I have full functionality again (minus Echo Speaks :frowning:). Really appreciate all the help here.

Yeah it can be rough. Start with this post and then follow the “quote” links in it and it should give you a list of what works and what doesn’t. I’m given to understand that the team is working on a release which should fix all (or most) of these issues, just awaiting an ETA.

Given that I just got yet another notification that the classic app is going away in just two weeks, I sure hope they get a move on this release that supposedly fixes so many broken things soon!