The SmartThings homebridge plugin is probably the most useful plugin you can have.
Between SmartThings and HomeKit, you can control pretty much every smart home device on the market.
As of December 2019, the SmartThings plugin has been redone and updated, but has to be installed completely anew.
So if you have the previous SmartThings plugin, you’ll have to completely remove it from Homebridge in order to get this new one to work; and it is completely worth it.
This version of SmartThings homebridge plugin has been a whole lot more responsive and stable than before. The device state works perfectly no matter how you turn on or off your devices.
Just a few things before we get started; I did this with a headless (monitor-less) Raspberry Pi controlled with a Mac via terminal, and an iPhone for the iOS part of things.
If you need to install Homebridge, i’ve got a full guide here.
The easy way of installing this plugin is via the SmartThings Community Installer.
Step 1: Select the code on this page, and copy it.
Step 3: Login with your Samsung or SmartThings Account
Step 4: Make sure that your Hub shows up under “Hubs”. Sometimes you have to click around between “Locations” and “Hubs” until it shows up. You can also try logging out and back in again. If your Hub doesn’t show up then the Community Installer won’t show up in your SmartThings app, so this is critical.
Step 5: Go to “My SmartApps”. If you had the previous SmartThings plugin, go ahead and remove that.
Step 6: Select “New SmartApp”
Step 7: Select the middle tab “From Code”
Step 8: Paste the code you copied earlier. Found here incase you lost it.
Step 9: Hit “Create”
Step 10: Select “Save” and then “Publish – For me”
Step 11: Select “App Settings”
Step 12: Scroll down to “OAuth” – Select “Enable OAuth in Smart App”
Step 13: Select “Update”
This all you have to do in the browser, and should be pretty painless.
The next step will be on your iPhone in the SmartThings Classic App. This is separate from the standard SmartThings app, so you’ll want to download it from the App store if you don’t already have it. The icon looks like a Blue ring on a white background.
Installing the Homebridge SmartApp in SmartThings Classic
Step 1: Open and login to the SmartThings Class app on your iPhone
Step 2: Go to the MarketPlace tab – Tap SmartApps – Scroll to the bottom and select “My Apps”
Step 3: Select “ST-Community-Installer”
Step 4: Select the IDE Login Type – either Samsung or SmartThings
Step 5: Select Installer Home and login with whichever account you use
Step 6: Scroll down until you find Homebridge V2 and select that
Step 7: Scroll down and hit “Install”
Step 8: Once it is done installing go back to “My Apps” and select Homebridge V2
Step 9: Go to “Select your Devices” and select the devices that you want to bring over to HomeKit
Step 10: Scroll down and turn SHM Control off if you don’t use the SmartThings Home Monitor
Step 11: Select “Render the platform data for Homebridge config.json” and copy the data.
If you are able to paste directly in your Mac, you can do that, otherwise transfer that by emailing yourself or something.
The next step is going back to your computer to install the plugin into Homebridge.
Updating the config.json file
As I mentioned, I’ll be doing this via Terminal to control the Raspberry Pi.
But first i’m going to update my config.json file so that once the plugin is installed it’ll be ready.
If you don’t already have a config.json file, use this link to find out how to create one.
Step 1: Open your config.json file, and paste the copied text into the platforms part of the config file. You can check to see if it is all correct at jsonlint.com
It should look like the picture below
Installing the SmartThings Plugin into Homebridge
This step is very straightforward, as all it is, is installing the plugin. Your operation might differ slightly depending on how to control your Homebridge install. This is being done via Terminal on a Mac.
Step 1: SSH into your Raspberry pi from Terminal with “ssh firstname.lastname@example.org”
Step 2: Install SmartThings with “sudo npm i -g homebridge-smartthings-v2”
This may take 10-15 minutes depending on your internet and homebridge hardware.
Assuming your install went well, all that is left is to update the config.json file in Homebridge, and add Homebridge into your Home app.
Updating Homebridge config.json file
Since the config file has already been updated in the previous step, all you have to do is transfer it over to the homebridge.
Step 1: Open a fresh Terminal window
Step 2: Use the “cd” command to change the directory to where you keep the config.json file.
You may find it easy to just put it on the desktop, because then you can just type “cd ~/Desktop” and that should take you to your desktop.
You can check to see if the file is there by typing the command “ls” which will list out all the files in that directory.
Step 3: Transfer the config.json file into the homebridge with this command: “scp config.json email@example.com:~/.homebridge”
It will ask you for your raspberry pi password so just type that in, and hit enter.
It shouldn’t take long at all to transfer since it is a tiny file.
Now you can either just restart homebridge and add it to the Home app.
Adding Homebridge to the Home App
Step 1: Open the Home app
Step 2: Press the “+” in the top right and select “Add Accessory”
Step 3: Either scan the QR code for Homebridge if you have it, or just type the code in manually, as it is “031-45-154” by default.
Step 4: Add all the devices that you selected earlier, and voila, you now have your SmartThings devices in HomeKit, ready to be used with your iPhone and Siri.
And there you have it! If you didn’t have any issues you should now be able to control your SmartThings devices with Siri in the Home App.
If you have any questions or comments, leave them down below and I’ll get to them as soon as I can!