[DEPRECATED] DTH for Fibaro Heat Controller FGT-001

Device handler for Fibaro Heat Controller


This DTH was modified by officials and pushed to SmartThingsPublic repository. All z-wave inclusion should now happen automatically in new SmartThings app.



Update (7.11.2018) – v0.2.0:

ATTENTION – this release is not compatible with the previous ones. Please remove (exclude) and again add (include) devices to SmartThings.

  • Fixed a bug, where a setpoint was limited to 16-24°C range instead of 10-30°C (turning the knob manually is still limited by device itself)
  • Google Home and Amazon Alexa are now supported – with a limited functionality (read temperature, change setpoint). NOTE: I do not recommend using it, both SmartApps are obsolete. Google Home for example increments setpoint by half a degree, which is automatically rounded. Alexa on the other hand updates both cooling and heating setpoint. For example if you set 22°C in Alexa, it actually sets heating setpoint as 20°C and cooling setpoint as 24°C. Device Handler uses only heating setpointc, so value displayed in Alexa is 2°C higher than actual.
  • Polling – re-added battery, added settings for custom interval between automatic polls
  • Settings – added trace logging, added default value and required validation
  • Added automatic refresh during first setup (inclusion) in SmartThings
  • Added protection against device command overflow while multi-command method is already running (refresh, polling, etc…)
  • Licence changed to GNU v3.0

Update (16.9.2018) – v0.1.0:

  • Removed battery query from automatic polling – it heavily drained Valve battery
  • Fixed depleted battery value – 255% to 0%

Update (1.4.2018):

There is already indeed new firmware 4.3. I have the ability to update my device, but it would costs 25$ and over an hour of my time, so I’m going to wait for more stable firmware. The new firmware shoudn’t break any of DTH functionality.

  • Added support for external sensor
  • Added ability to change device additional parameters
  • Added automatic polling
  • Added new tiles showing if external sensor is connected and if open window is detected


First iteration (25.3.2018):


This device consists of two endpoinds. One represents radiator valve, the other is external temperature sensor. Device handler is tested on firmware 4.0 only. This is currently the newest (and only?) firmware, but I’ve heard that new firmware is in development due to bad PID regulator algoritm.


  • Set thermostat mode (fully open, close or automaticaly regulate valve)
  • Set thermostat setpoint (regulate temperature between 16°C to 24°C)
  • Both can be set via tiles or manually on the device
  • Show battery levels
  • Manual refresh battery and thermostat mode
  • Added external sensor support
  • Set additional configurable parameters

What is missing:

  • Second endpoint (temperature sensor)
  • Scheduling
  • Notifications
  • Configurable parameters
  • Farenheit :slight_smile:

Known issues:

  • Manual refresh does not update thermostat setpoint, becuase the method returns zero values
  • Missing whole thermostat capability, therefore Google Assistant integration (set temperature commands)


Additional comments:
As always, if you find any bugs, request additional features I forgot or if you just want to hate suggest update on UX, everything is welcome. Specially UX changes, gotta keep my OCD satisfied. As soon as external temperature sensor will be available to buy, I’ll get it and develop it’s functionality. I also plan to develop configurable parameters. The rest of missing features aren’t planned in near future. I’m currently in negotiating process with a few people from local reseller and if they will be willing to update my Fibaro devices with future firmwares via their Fibaro hub, I’ll also update this DTH, if needed.


Would love to try this, had one of these gathering dust for last few months. I’ve added the new DTH as custom code. But try as I might I cant get the Fibraro Heat Controller to pair with Smartthings. How did you do it?


This is device handler for old SmartThings developer workspace. To be honest with you I haven’t got time to look into it yet. Do you have trouble to pair device via Z-Wave? Try to use old SmartThings app. I don’t know, how to access old developer workspace, where you should put DTH code. I’ll look into it soon. Anyway as soon as new hub-connected workspace will be available, I’ll develop device handler for new SmartThings app.

Hi - I recently bought the FGT-001 from Vesternet, they had a sale on. I’ve downloaded the device handler and paired up the rad valve. However I can’t seem to manually open / close the valve or set the temperature in Auto mode. Any tips?

Cheers for taking the time to write the device handler.

You cannot close / open valve manually via app or via knob itself? Also are you using the old SmartThings app and old SmartThings developer workspace?

Cheers for the quick response.

Correct, I can click open / close in the app, but that doesn’t seem to move the valve (or set / change the temperature).

I haven’t yet been migrated to the new Samsung SmartThings app so still on the older one. I’m not too are what dev. workspace I’m on (I took you code from GitHub and pasted into the SmartThings API “My Device Handlers” section.

In “My Devices” click on this device. Do you see any “Current States” or “Preferences”?

Current States:
battery: 60 %
temperature: 24.0 C
thermostatSetpoint: 22 C
thermostatMode: off
externalSensorConnected: true
openWindowDetected: false
batterySensor: 91 %


I guess you mean to check on the SmartThings API (as opposed to via the app), assuming you meant from the API “Current State” says:

Battery 100%
Temp 22.7
Thermostat mode: off
External sensor: true
Open window: false
Battery sensor: 100

Under Preferences they all show false.

So it looks like the SmartThings is connecting to the rad valve but the mechanical motor is not responding to changes too open / close the valve (for example if I toggle the valve to open or close in the app, the motor does not move - even after leaving it a few minutes).

It’s very good of you to spend time trying to diagnose this.

Cheers, Adrian

You assumed right :slight_smile: If you try to open or close valve manually via knob, did it worked? Does the motor inside valve do something? If not, make sure you install valve correctly and then perform “head calibration”. If it works, is your SmartThings app updated? For example if you manually close or open valve.

Guys, please update your DTH with the latest commit. Automated polling (every 5 - 6 minutes) heavily drained the battery, so I removed query for battery and kept only the query for temperature.

I need a little bit help :slight_smile: I cannot set temperature. It works only open and close as well. The auto mode doesn’t work for me. Am I alone?

1 Like

Hm, I was just testing it, becuase it’s starting to get cold in here. Auto mode works as intended for me.

Could you please go to Live Logging in Developer Workspace? Then try to set AUTO and change temperature. Also try it manually via knob. Try it multiple times, becuase the log can miss a message. Filter Live Logging to this device only and copypaste it here.

I developed new version of DTH. If you want to update, please remove your device from z-wave network and add it again. DTH is not backwards compatible due to some settings initialized during installation.


I seem to be having problems with the Thermostat when no sensor is attached. More specifically, I don’t get any temperature reading, even though it has an integrated temperature sensor.
Message: “parsed event SensorMultilevelReport(scale: 0, sensorValue: [0, 0], precision: 1, sensorType: 1, scaledSensorValue: 0.0, size: 2) into: [name:temperature, unit:C, value:0.0, isStateChange:false, displayed:false, linkText:Living 1, descriptionText:Living 1 temperature is 0.0°C]”
Does anyone else have this problem?


This is expected behavior. The device itself cannot display temperature from its internal sensor. You can read about it here.

On the other hand, the device handler displays 0.0°C, but should display --°C, when external sensor isn’t connected. I have this in mind for a few months, I guess it’s time to implement it.

Hey! I was trying out my Fibaro Thermostat for couple of weeks with this DTH, but it does not seem to work correctly. The device is communicating and everything, but it does not behave as I expect. E.g. I have sensor temperature 24 and device set to 22, but it still heats the radiator. Sometimes it heats even if it is in Closed state.

What could be the problem? Is it the devices themselves (I have 2 with the same behaviour)? I’m not sure if I need to update the firmware? I don’t have Fibaro HC though and it seems it is required for firmware update. Or is it the DTH? How could I troubleshoot it?

Anyone has it working correctly?

Hi. At this point, I’m not sure. I don’t see how this issue could be related to DTH itself. There could be a bug, which sets wrong setpoint, but the value is propagated back and it would show immediately. DTH does not touch regulation itself, because it cannot.

You’re not the first one with this problem. As a matter of fact I also have this issue, but most of my heads are on firmware 4.3, which is a shitty one – according to Fibaro forums. I advise you to update firmware.

Anyway valve should definitely not heat, when the state is closed. First, try refresh button. If the state is still closed, I’d say that the valve is faulty and you should RMA it.

Hi again. So you were right. With the help of the local retailer I updated the firmware to 4.4 and it works very well! Thank you for this DTH!

Glad that it did help! That’s actually good news. I should finally update my TRVs too, but I still rather wait for 4.5 firmware.

May your contribution proposed upstream ? if not done yet please link pull request url here.

just for curiosity are there any DTH for other radiator’s valve ?