homebridge-smartthings-oauth
v1.0.64
Published
Connects SmartThings devices to Homebridge. Automatically discovers devices.
Maintainers
Readme
SmartThings Homebridge Plugin with OAuth Support
Connects your SmartThings devices to Apple HomeKit through Homebridge. Works with the modern SmartThings app and API, discovers devices automatically, and uses OAuth with token refresh — no legacy app, no manual token management.
Supporters
A heartfelt thank-you to everyone who has supported this project on Ko-fi — your generosity keeps the plugin maintained and improving.
| Supporter | Contribution | |---|---| | @Jayip | $15 | | phil | $10 | | Samuel | $7 | | @joannadal | $5 |
Special thanks to each of you for believing in this project.
Features
- No legacy app required — works with the new SmartThings app and API.
- Automatic device discovery — devices are added (and removed) as your SmartThings network changes.
- UI-based OAuth wizard — set up authentication from the Homebridge UI without a public tunnel.
- Optional real-time webhooks — push updates from SmartThings for instant device state changes (polling continues as a fallback).
- Broad device support — lights, switches, climate, sensors, locks, security panels, washers/dryers/dishwashers, Samsung TVs (including Frame TVs), multi-zone refrigerators, and more.
Supported Devices
The plugin automatically maps SmartThings capabilities to HomeKit accessories. At a glance:
| Category | What's exposed in HomeKit | |---|---| | Lights & Switches | On/off, dimming, color, color temperature | | Fans | Speed control, fan + light combos | | Climate | Thermostats, A/C units, air purifiers, temperature & humidity sensors | | Locks & Doors | Smart locks, garage doors | | Window Coverings | Shades and blinds (open/close + level) | | Sensors | Motion, occupancy, contact, water leak, smoke, CO, illuminance, buttons | | Security Systems | Arm/disarm panels with live alarm reporting | | Televisions | Samsung TVs with input picker, volume, app launcher; full Frame TV control | | Appliances | Washers, dryers, dishwashers, multi-zone Samsung Family Hub refrigerators | | Valves | Smart water valves | | Battery | Reported as a companion characteristic on supported devices |
For the full SmartThings-capability → HomeKit-service mapping, see Supported Devices and Capabilities on the wiki.
Quick Start
- Install the plugin in the Homebridge UI: search for
Homebridge Smartthings oAuth Pluginin the Plugins tab and click Install. - Create a SmartThings OAuth app with the SmartThings CLI (
smartthings apps:create). Save the Client ID and Client Secret. - Open the OAuth Setup Wizard from the plugin settings and follow the four wizard steps.
- Restart Homebridge — your SmartThings devices appear in HomeKit.
Full walkthrough with screenshots, prompt-by-prompt CLI guidance, and the authorization-code copy step: Installation and OAuth Setup.
Optional Features
Real-time updates via webhooks. Polling works out of the box; if you'd rather have SmartThings push events instantly, set up a public tunnel (ngrok, Cloudflare Tunnels) and configure the webhook URL. Polling continues to run as a fallback. → Webhooks and Real-Time Updates
Samsung Frame TV. Frame TVs enter Art Mode when SmartThings sends "off" instead of truly powering down. The plugin can use a local WebSocket to send a true power-off command, plus expose an Art Mode toggle switch in HomeKit. → Samsung Frame TV
TV App Launcher. Add Netflix, YouTube, Disney+, and other Samsung TV apps to the HomeKit input picker so you can launch them from a Home tile. → Samsung Frame TV → TV App Launcher
Configuration
All configuration is done through the Homebridge UI form, which has inline descriptions for every field. For a single-page reference of every setting (type, default, when to use it), see Configuration Reference.
Troubleshooting & Help
- Common problems (OAuth, missing devices, webhook setup, Frame TV pairing): Troubleshooting
- Bug reports and feature requests: GitHub Issues
Changelog
See CHANGELOG.md for version history and detailed release notes.
Credits
This is a fork of the original homebridge-smartthings plugin by @iklein99, enhanced with OAuth support, automatic token refresh, and the OAuth Setup Wizard.
