[OBSOLETE] Filtrete 3M-50 Wi-Fi Thermostat. Version 2.0 Released 12/17/2016

If you happen to have [Filtrete 3M-50 Wi-Fi Thermostat][1], you can now connect it to SmartThings. They used to sell at Home Depot for $99, but now seem to be discontinued.

I used to have it integrated with Vera, but since I switched to ST, I could only control it remotely with the Radio Thermostat mobile app, which is, by the way, very well done. And now, I have fully integrated it with SmartThings.

The source code and installation instructions are available here:

Note that like most Wi-Fi devices, it relies polling, thus installing [Pollster][2] is highly recommended. If fact, I wrote Pollster specifically for this application.

[1]: http://www.radiothermostat.com/filtrete/products/3M-50/
[2]: https://github.com/statusbits/smartthings/tree/master/Pollster.md


Wow, this looks awesome! I’m currently using some hacked together code for another thermostat to even get it to somewhat work. I’ll definitely be switching over to this device type today. Thank you for sharing!!!

Thank you so much for sharing @gecko.

1 Like

Nice work @geko I bought a Z-Wave Module for mine and added it along with the WiFi Module. This is pretty cool though and I may have to give it a try.

I’ll certainly appreciate your feedback. I’ve been using it for a couple of weeks and I hope I ironed out most of the wrinkles, but you can never be sure until someone else tries it. :smile:

I have both the wifi and zwave module. The zwave module does nothing but cause issues for me so I ripped it out. Wifi is definitely the way to go and this device type is awesome!

Only thing not working for me is toggling the fan so far.

Can this be modified to work with a Honeywell WiFi thermostat relatively easily…or this is pretty custom to the 3M thermostat?

There’re several thermostats on the market that use the same WiFi module made by Radio Thermostat Company of America (http://www.radiothermostat.com) sold under different brand names. Those should work, although different models may have some variations in available features.

@chevyman142000, Good catch! As it turns out, 3M-50 (CT-30) does not support fan Circulate mode, only Auto and On. Fixed in Version 1.0.1.

Please note, Radio Thermostat moved to a new Github repository:

That fixed it. Thank you!

I finally got this working. One things to note however…I initially setup the device with the wrong IP address. I realized this because (a) it wasn’t working, and (b) I discovered it had a different device ID hex address than the thermostat device I already had installed. I made the change on the phone to the correct address but it still didn’t work. I also realized online that the device ID never changed from its original state, the equivalent of instead of .2. I tried several ways of getting this to update in the IDE but it never would. Reboots, logouts, nothing. I finally deleted the device and tried again and it worked instantly.

Just thought I would pass on that information to others with issues like me. Make sure you know the IP address before you begin or you could just set yourself up for failure. Has anyone else had this experience? (FYI I have something similar going on with my Hue Bridge)

Actually, device Network ID should update every time the poll() or refresh() is called, i.e. by pressing Refresh tile, but I’ll double-check. Thanks for reporting.

i can assure you that I clicked refresh, pulled down from the top, logged out, and rebooted the device all to no avail. I figured out what the problem was so I was very focused on getting it to show the correct information. I would say maybe the IDE didn’t have the right information in it but the device still wasn’t working so the problem was deeper.

This could explain why I have had other problems in the past getting device to work. Hmmm

Nice job and many thanks by the way. I appreciate the work you put into this device.

1 Like

Well, I don’t know what to say… I’ve just confirmed that Network ID is updated as expected. There’s no need to reboot/logout or uninstall device. Just hit Refresh tile or wait for the next poll. As can be seen in this log, I changed the address from to and back:

2:10:49 PM PDT: debug device.deviceNetworkId = C0A80169:0050
2:10:16 PM PDT: debug device.deviceNetworkId = C0A8016A:0050
2:10:00 PM PDT: debug device.deviceNetworkId = C0A80169:0050

I noticed that 3M-50 sometimes takes long time to respond to HTTP requests and the hub times out before the 3M-50 sends a reply. The documentation says that the its web-server is single-threaded, so if it talks to the cloud service or to its own mobile app, you may not get a timely response.

On step 1, substep 4, after I enter the name and a random network ID, and select my hub (the interface requires all of these things), and then click create, it takes me to another screen, but not the expected screen, where I am supposed to paste the source code. I am clueless, as to what to do. I am attaching the page that appears. I would appreciate some help as to what I might be doing wrong. I need to be able to access the IDE page, where I can paste the source code into my new device. Thanks for any assistance. Also, it is not really covered here, but I have three of these. Do I just follow these same steps (once it is figured out), in order to add the other two?

First, you need to install “Device Type”. It does not require network ID, so you’re definitely on the wrong track. Please read and follow installation instructions here: https://github.com/statusbits/smartthings

You only need to install device type once. Then you can intall multiple devices.


There are two things I’d like to be able to do with my thermostat.

1- I’d like to be able to turn on a switch when the HVAC is running and in cooling mode.

2- I’d like to be able to cycle the HVAC fan for say 10 or 15 mins every hour when in cooling mode and thermostat or other temp sensor is within 1 or 2 degress of the setpoint.

These would be best as separate smart apps, especially since some thermostats already support the fan cycling.

Do you think this is something you can assist with?

You’d have write a smart app for that. I also want to automate fan cycling, so it’s on a to-do list, but I cannot give you an estimate.