How to begin if I want to start coding


I’m new to the ST ecosystem, or actually smart devices in general. I’m interested in learning much more and possibly developing for ST as a hobby. It would be great if someone could shed a little light on my still somewhat confused mind on ST. These are the questions I have in mind at the moment:

1.Should I start with learning Groovy IDE? Or is it better to go with Webcore? (from what I’ve read, some users seem to think Groovy might be going away in the near future)

  1. I’d like to use Xiaomi devices with ST. I’ve already used @ArstenA’s device handlers for I think 7 devices and they’re all working and so far none have dropped a connection. I have the ST Hub v3. I ordered more Xiaomi sensors and would be interested in developing ST device handlers for them (for example, the Xiaomi Flora sensor). I’m not an advanced developer. Am I too optimistic? :slight_smile: Where would I begin? Where can I read more on how to communicate with a Xiaomi device?

  2. Is it possible to create automations that span across multiple hubs from different manufacturers? For example, a light bulb connected to ST hub would turn on if a motion detector connected to a Xiaomi hub is triggered?

Thanks a lot!

The groovy platform is definitely going away, there have been official announcement to that extent, we just don’t know when and it could be quite a while yet.

You didn’t mention what technical background, if any, you already have. Do you already do any coding in any language? With the new platform, you can code pretty much in any language you want because you will host your own smartapps and communicate with smartthings via their new API.

My personal suggestion for now, though, is that you just start with webcore. It’s essentially a scripting language for smartthings. Very powerful, and there are lots of people who will be able to help you with it. It has its own forum.

As far as writing automations which include multiple platforms, it all depends on the integration possibilities for each platform. Xaomi does not offer very many, they basically assume that people will be using their devices with their gateway. I haven’t heard of anyone trying to combine a Xaomi gateway based system with a smartthings hub-based system, but hopefully if someone has they will chime in.

There are other hubs/gateways that do have open APIs or have Ifttt channels, and then there are things that you can do, just as you can work with a smartthings hub and a Phillips hue bridge. But it comes back to the first rule of home automation: the model number matters. It will be possible with some platforms and not with others.

As far as getting started with a new platform, see the following link:


Hello, @Lpns

While ago I had three LIFX mini bulbs (pretty much useless then) because the LIFX integration to control lights through ST app was kinda incomplete. So with basic JavaScript - Node knowledge I’ve managed to create a connector using the NPM LIFX library and use the bulbs by my own.

Then the integration was needed, so I used the ST-Schema documentation as guidance to made it possible.

Once I shared at a post some npm libraries regarding the Xiaomi Flora Sensor. Here the post:

There hasn’t been an update since then, but surely you can contact these developers to review your code and exchange develop approaches.

Hope this information results useful to you,

Thank you @JDRoberts and @erickv - very helpful. I will start with learning WebCore and perhaps later on add Javascript.

@JDRoberts I’ve never really coded for work. I’ve only got experience through university/Coursera courses on Java, C, PHP and SQL. Well, actually I did work with Javascript and JQuery (related to frontend website development) but I think it was very basic stuff like manipulating the DOM and tweaking CSS.