ZXT-120 in 'newer' (non-classic) app

So!.. My ZXT-120 arrived, i’ve got it programmed (for my unlisted A/C brand, which was fun) and it now works using a mixture of code i found online from various other people. All is good using the ‘Classic’ SmartThings app.

However - i can’t get my head around how you write it so it works within the new SmartThings app? It’s like a different framework or something? My perfectly working device in Classic just looks like a random heating thermostat in the new app (and crashes when i try to change anything). I can’t even turn it on or off without a lockup/error.

What’s the deal with making apps (or should i say, Device Handlers) for the new application? I’m clearly missing something? All my other (Samsung) devices are perfect in the new app and i kinda wanted my ZXT-120 unit in the same place really?

Any pointers please? Cheers! :slight_smile:

1 Like

Read the following post. It is possible you may be able to add some code to the header of the device handler to get it to work in the new app

1 Like

Hi - thanks for that!


I had two issues, but i only have one now i’ve worked out how to force the updates in the App:

  1. My device (the ZXT-120) is an IR blaster, which pretends to be a thermostat, but in reality it controls an A/C unit. So i’m really not clear what new ‘type’ of device i need it to be (in the context of these vid: and ocfDeviceType: elements).

So, any idea on that? Thanks! :slight_smile:

I am not sure. You may want to post in the thread I posted above and see if someone else might be able to offer some assistance.

1 Like

Any luck getting ZXT-120 to work in the new app?

Hi - i found a ‘reasonable’ setup for it yes, you can use the code from Ronald Gouldner from here

And modify the definition line as follows:

definition (name: "ZXT-120 IR", namespace: "your-namespace", author: "your-name", vid: "SmartThings-smartthings-Z-Wave_Thermostat", mnmn: "SmartThings", ocfDeviceType: "oic.d.thermostat")

It’s not perfect (there is a thing where it always shows ‘heating’ even when mode = off further down the page) but for my purposes it was OK. Personally, i ended up writing an app to drive it from other inputs (combined from the central heating supply water temperature and the status of other A/C units) so it it’s pretty autonomous now, but i did get the app working reasonably well with those settings.

Hope that helps!


Very cool. I will give it a try. I will try to disable anything related to Heating since my 4 mini-splits don’t have a heating mode. There is no feedback so ZXT doesn’t know if the unit is on or off. I’m thinking about just sticking a small door sensor to tell of the door that opens when it’s on is open. I just don’t know how to get the DH to know that the device is actually on and not do anything if it is and adjust its state to match reality. I’m an idiot when creating stuff, but I can try reverse-engineering stuff. Anything you can share is great. Thanks!

Hi - the ZXT seems to send everything every time you make a ‘change’ so if it is on already, and you change purely the setpoint, then it will send ‘on’ followed by ‘cooling mode’ followed by ‘target setpoint’ in one sequence. So it doesn’t actually care if you have turned the unit off or put it into a different mode manually in the meantime. The only thing is if you query the device on ST, it will tell you the last thing ‘it’ sent - as it has no knowledge of the events which may have locally occurred.

That said, it’s entirely possible this is something that is vendor-specific with the control codes, so your unit may differ i guess.

To keep mine in sync, i’ve just hidden the original remote and installed ST on everyone’s phones :wink:

I have had a zxt-120 for a longtime now before the “new” app when Gouldner was still supporting the handler. I am no coder but with a little more time since the lockdown I have been trying to do what you just did. Thanks for the tip. I have since been able to fix the Telguard GDC1 handler. Now if I or someone can figure out how to have the handler declare that it supports other fan modes than Auto and On maybe, Low Med and Hi can show up and be available to control.

I have three ZXT-120’s here, and the new app also migrated them from Ronald Gouldner’s to a useless handler.

Samsung tells me this new app “doesn’t support custom integration or device handlers”, so I haven’t even looked to see where a user could even paste any custom code like before.

If anyone could reply with a step-by-step on how to get them working again, it would restore my faith in humanity.

Thanks, Al

Incorrect information. The new app still supports custom device handlers but groovy will cease at some point in 2021.

You may need to make modifications to existing custom code to get it to work with the new app. There is also the possibility some aspects may not display properly as it did in the Classic app.

1 Like

Thanks @jkp - but I need to establish my lack of process knowledge here (hence my request above for basic steps).

I go to api.smartthings.com and my custom handlers are still there and assigned. The devices in the new app are just not using them.
Is this even the right place any more? Then where?
If not groovy any more, then what? Jython or something?

Sorry, rather than asking about my one problem device I guess I just need to polish my searching skills to find the ABSOLUTE BASIC STEPS of code migration - for novices like me who infrequently customize…

Thanks for your note tho - about Samsung being incorrect. A relief I guess. ;-]

Use https://account.SmartThings.com to access IDE :slight_smile:

Thanks again @jkp - account just redirects me back to api.smartthings.com again, the same UI where I am already logged in.

I forgot to mention that I did do the definition mod that @robsqueak mentioned above last December.

I’m obviously missing some important beginner’s step here - so I’ll keep looking around.

Developpment with integration in new app?

All to make the ZXT-120 from Remotec work in the new app of Smartthings, just use the “CT100 Thermostat” DEVICE TYPE under devices. It works like a charm!

Go to https://graph-na02-useast1.api.smartthings.com/ and change the ZXT-120 devices to this new handler and Voila!


Be sure to share this link so users are directed to their appropriate shard.

I want to change the device IR code. If using

there is NO option to do that. Please advice.

Hi. Were you able to figure this out? I have two ZXT-120 devices that were previously working fine at RemoteCode 10 but I mistakenly changed the code, and it wont change back anymore. Thanks

Hi. I wasn’t able to do so and the IR remote codr…I ended using RBoy thermostat device Handler which is NOT freex but works well also with ZXT 120 . My device is now properly working… Thank you @RBoy for your wonderful work

1 Like