SmartThings OAuth
homebridge-smartthings-oauth · v1.0.68
Adds SmartThings lights, climate, locks, sensors, TVs, appliances and robot vacuums to HomeKit using OAuth.
What it says it supports
Brands
- SmartThings
- Samsung
Devices it names
- Samsung TVs incl. Frame TV
- washers
- dryers
- dishwashers
- Samsung robot vacuums
- Family Hub refrigerators
- smart locks
- garage doors
- water valves
- air purifiers
- A/C units
Shows up in Apple Home as from its README
- Lights
- Switches
- Thermostats
- Air Conditioners and Heaters
- Air Purifiers
- Fans
- Windows and Coverings
- Garage Door Openers
- Locks
- Security Systems
- Sensors
- TVs
- Valves
- Robot Vacuum Cleaners
- Appliances
Sensor readings in its code
What people report
Maps SmartThings capabilities to HomeKit services automatically, with special handling for Samsung TVs, fridges, washers, vacuums and Zigbang locks. Maintainer merges device PRs from users.
- Works11
- Requested1
The plugin’s own supported-device list
| Device | Status | What they said | Source |
|---|---|---|---|
| Koolnova thermostat | Works | Listed as single-setpoint thermostat exampleSaved copy… device types first (Samsung TVs, Samsung Family Hub fridges if enabled). 2. Matches combinations of capabilities (combo map) to compound services like Thermostats, Air Conditioners, Air Purifiers, Washers, Dryers, Dishwashers, Security Systems, etc. 3. Maps any remaining single capabilities to individual services (Lock, Switch, Motion, Contact, etc.). This ordering means a thermostat (which has `temperatureMeasurement` plus `thermostatMode` plus setpoints) is exposed as a single Thermostat accessory rather than a separate temperature sensor and switch. --- Single-capability mappings These … Excerpt saved from GitHub on 2026-10-22. | Wiki: Supported Devices and Capabilities |
| Samsung AC AR12BXFANWKNUA | Works | AC display light switch tested locallySaved copyAdded samsungce.airConditionerLighting support in ACLightingService. Tested locally with AR12BXFANWKNUA. Service will register if AC has the capacity. Excerpt saved from GitHub on 2026-10-22. | PR #3 · 2025-05 |
| Samsung Family Hub refrigerator | Works | Per-compartment temperatures (Freezer, FlexZone, CVRoom) when enabledSaved copy… --- How device discovery works The plugin examines each SmartThings device's components and capabilities, then: 1. Detects special device types first (Samsung TVs, Samsung Family Hub fridges if enabled). 2. Matches combinations of capabilities (combo map) to compound services like Thermostats, Air Conditioners, Air Purifiers, Washers, Dryers, Dishwashers, Security Systems, etc. 3. Maps any remaining single capabilities to individual services (Lock, Switch, Motion, Contact, etc.). This ordering means a thermostat (which has `temperatureMeasurement` plus `thermostatMode` plus setpoints) is … Excerpt saved from GitHub on 2026-10-22. | Wiki: Supported Devices and Capabilities |
| Samsung Frame TV | Works | Television service plus local WebSocket true power off and Art Mode switchSaved copy… --- How device discovery works The plugin examines each SmartThings device's components and capabilities, then: 1. Detects special device types first (Samsung TVs, Samsung Family Hub fridges if enabled). 2. Matches combinations of capabilities (combo map) to compound services like Thermostats, Air Conditioners, Air Purifiers, Washers, Dryers, Dishwashers, Security Systems, etc. 3. Maps any remaining single capabilities to individual services (Lock, Switch, Motion, Contact, etc.). This ordering means a thermostat (which has `temperatureMeasurement` plus `thermostatMode` plus setpoints) is … Excerpt saved from GitHub on 2026-10-22. | Wiki: Supported Devices and Capabilities |
| Samsung OCF air purifier | Works | Dynamic fan modes and HEPA filter life addedSaved copySummary Improves the air-purifier service for Samsung OCF purifiers that expose `airConditionerFanMode` with non-standard mode sets (e.g. `smart / max / medium / windfree / sleep / pet`) and report filter wear via `custom.hepaFilter`, without special-casing any single model. Full ACs and thermostats are unaffected (matched by their own combos first). 1. Fan speed is driven by the device's own `supportedAcFanModes` The old `fanModeToLevel` / `levelToFanMode` were keyed to a hardcoded `auto/low/medium/high/sleep` enum. On purifiers whose real modes differ, `RotationSpeed` showed a meaningless … Excerpt saved from GitHub on 2026-10-22. | PR #48 · 2026-06 |
| Samsung robot vacuum | Works | Added as a switch via robotCleanerMovement statusSaved copy… thanks for maintaining this plugin, the OAuth wizard and the per-device handling (Washer→Valve, Frame TV) are really well done. Summary Adds generic Samsung robot vacuum support. Devices exposing `samsungce.robotCleanerOperatingState` + `switch` (with optional `robotCleanerMovement`) are auto-detected and exposed as a HomeKit `Switch`. Currently these devices fall into the generic `SwitchService` path, which causes two problems: the `switch` capability reports `"on"` whenever the vacuum is powered/ready (so HomeKit shows it permanently on), and `switch:off` returns HTTP 422 when the vacuum … Excerpt saved from GitHub on 2026-10-22. | PR #54 · 2026-06 |
| Samsung TVs (SmartThings) | Works | Power, input source, volume, mute, channel, app launcher, picture and sound modeSaved copySupported Devices and Capabilities This page lists every SmartThings capability the plugin recognizes and the HomeKit service it maps to. If your device exposes one or more of these capabilities, the plugin will create a matching HomeKit accessory automatically. Tip: To see what capabilities your devices expose, run `smartthings devices` in the SmartThings CLI, or check the device details in the SmartThings developer workspace. --- How device discovery works The plugin examines each SmartThings device's components and capabilities, then: 1. Detects special device types first (Samsung TVs, … Excerpt saved from GitHub on 2026-10-22. | Wiki: Supported Devices and Capabilities |
| Samsung washers, dryers and dishwashers | Works | Exposed as Valve with active, in-use and remaining time; optional cycle-end contact sensorSaved copySupported Devices and Capabilities This page lists every SmartThings capability the plugin recognizes and the HomeKit service it maps to. If your device exposes one or more of these capabilities, the plugin will create a matching HomeKit accessory automatically. Tip: To see what capabilities your devices expose, run `smartthings devices` in the SmartThings CLI, or check the device details in the SmartThings developer workspace. --- How device discovery works The plugin examines each SmartThings device's components and capabilities, then: 1. Detects special device types first (Samsung TVs, … Excerpt saved from GitHub on 2026-10-22. | Wiki: Supported Devices and Capabilities |
| SmartThings Security Panel | Works | Security System accessory with live alarm stateSaved copySupported Devices and Capabilities This page lists every SmartThings capability the plugin recognizes and the HomeKit service it maps to. If your device exposes one or more of these capabilities, the plugin will create a matching HomeKit accessory automatically. Tip: To see what capabilities your devices expose, run `smartthings devices` in the SmartThings CLI, or check the device details in the SmartThings developer workspace. --- How device discovery works The plugin examines each SmartThings device's components and capabilities, then: 1. Detects special device types first (Samsung TVs, … Excerpt saved from GitHub on 2026-10-22. | Wiki: Supported Devices and Capabilities |
| SmartThings window shades | Works | Fixed shades stuck on Opening/Closing in Home appSaved copySymptom Window shades show a perpetual "Opening…" / "Closing…" spinner in the Home app. The tile only ever settles when the shade is fully closed; opening the shade with its remote or the SmartThings app brings the spinner back even though the device is idle and the SmartThings cloud reports fresh, correct state. Additionally, fully closing a shade from the Home app only works intermittently. | Shade actual state | SmartThings shows | Home app showed (before) | |---|---|---| | Fully closed (level 0) | `closed` | "Closed" ✅ (coincidence, see below) | | Open at any level > 0 | `open`, correct … Excerpt saved from GitHub on 2026-10-22. | PR #44 · 2026-06 |
| Zigbang Smart Doorlock (Wi-Fi) | Works | Support added for locks linked via Zigbang cloudSaved copyDescription This PR introduces support for the Zigbang Smart Doorlock (linked via the Zigbang cloud partner service) to the Homebridge SmartThings plugin. Previously, these devices were not handled correctly by the plugin. During integration testing, I observed that the plugin would occasionally miss real-time lock/unlock events due to stale state reporting. To resolve this behavior, I implemented an explicit call to the component's supported `refresh` command inside the `getLockCurrentState()` method. This forces the component to pull its latest state right before the plugin reads it, … Excerpt saved from GitHub on 2026-10-22. | PR #41 · 2026-05 |
| Samsung RF29DB9600QLA refrigerator | Requested | Multi-component fridge support PR closed without mergingSaved copy@grecine, thanks for the contribution and the detailed PR description. I've cherry-picked the multi-component refrigerator feature into a beta release and would love your verification against your RF29DB9600QLA before promoting it to stable. `[email protected]` is now on npm. What it includes from your PR Samsung OCF `samsungce.driverState` parsing for per-compartment temperatures (Freezer, FlexZone, CVRoom, etc.) Pruning of compartments you've disabled in the SmartThings app (`custom.disabledComponents`) Friendly compartment names in Apple Home (e.g. "MyFridge … Excerpt saved from GitHub on 2026-10-22. | PR #35 · 2026-05 |
Gathered from the plugin’s GitHub issues, pull requests, discussions, wiki and docs, and from r/homebridge. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Cloud
SmartThings cloud API with OAuth; optional webhooks, polling fallback
You’ll need
- SmartThings account
- Node.js 20.19+
Compatibility
| Verified by Homebridge | Yes |
|---|---|
| Homebridge versions | ^1.6.0 || ^2.0.0-beta.0 |
| Homebridge 2.0 | Yes |
| Node.js | ^20.19.0 || ^22.12.0 || >=24.0.0 |
| Settings in Homebridge UI | Yes |
| Matter | Yes (uses the Homebridge 2 Matter API) |
| Platform name | HomeBridgeSmartThings |
| License | Apache-2.0 |
Community signals
| Downloads a week | 53 |
|---|---|
| Downloads a month | 953 |
| GitHub stars | 38 |
| Open issues | 1 |
| Closed issues | 49 |
| Last code push | 2026-09-25 |
| Latest version | 1.0.68 (2026-09-25) |
| First published | 2025-04-19 |
| Releases | 95 |
In ReReHome
Whatever this plugin publishes reaches Apple Home as a normal HomeKit accessory behind your Homebridge bridge, so ReReHome shows and controls it like any other.
Bridges get their own settings page listing the accessories behind them.
Caveats from the README
- No longer actively maintained (final release 1.0.68)
- Webhooks need a public tunnel (optional)
HomeKit services in its code
Found by scanning the published npm package. A plugin can register a service only for some devices.
- AirPurifier
- AirQualitySensor
- Battery
- CarbonMonoxideSensor
- ContactSensor
- Fan
- Fanv2
- FilterMaintenance
- GarageDoorOpener
- HumiditySensor
- InputSource
- LeakSensor
- LightSensor
- Lightbulb
- LockMechanism
- MotionSensor
- OccupancySensor
- Outlet
- SecuritySystem
- SmokeSensor
- StatelessProgrammableSwitch
- Switch
- Television
- TelevisionSpeaker
- TemperatureSensor
- Thermostat
- Valve
- WindowCovering





