SmartRent  

Developer: AaronLionsheep's Plugins
Category: Hubs and Protocol Bridges
Github: Github Repo
Assistance: Get help!   
Plugin ID: com.lionsheeptechnology.SmartRent
Latest release: v1.0.6 released on Oct. 29, 2026
Release downloaded: 5 times
Requires: Indigo v2023.2.0 or higher
(Check the Releases tab below for older releases that may have different requirements)
  Download latest release

SmartRent for Indigo

An Indigo plugin that brings your SmartRent apartment devices into your Indigo home automation setup. Once connected, your SmartRent door locks and thermostats show up as native Indigo devices, so you can control them from Indigo, Control Pages, triggers, schedules and Action Groups, and they stay in sync with live updates from SmartRent.

Features

  • Door locks: lock and unlock, live locked/unlocked status with the matching lock icon, battery level, and online status.
  • Thermostats: set HVAC mode (Heat, Cool, Auto, Off), fan mode (Auto or Always On), heat and cool setpoints (including increase/decrease), with live temperature, humidity, heating/cooling state, and online status.
  • Live updates: device state is pushed from SmartRent as it changes, so Indigo reflects changes made in the SmartRent app or at the device itself.
  • Two-factor authentication: the plugin generates SmartRent 2FA codes automatically from your authenticator secret, so it can log in unattended.

Requirements

  • Indigo 2023.2 or later (the plugin targets Indigo Server API 3.4 and Python 3.11+).
  • A SmartRent resident account with two-factor authentication enabled through an authenticator app. The plugin needs the authenticator secret, not a one-time code (see Configuration).

Python dependencies (smartrent-py, aiohttp, pyotp and more-itertools) are listed in the plugin's requirements.txt and are installed by Indigo automatically when the plugin is enabled.

Installation

  1. Download SmartRent.indigoPlugin.zip from the latest release.
  2. Unzip it and double-click SmartRent.indigoPlugin. Indigo will install and enable the plugin.
  3. Configure the plugin as described below.

Configuration

Open Plugins → SmartRent → Configure… and fill in:

Field Description
Email The email address you use to sign in to SmartRent.
Password Your SmartRent password.
2FA Secret The secret key from your SmartRent authenticator-app setup (see below). This is not the 6-digit code.
Log level Debug, Info (default), or Warning.

Finding your 2FA secret

When you set up an authenticator app for SmartRent, you're shown a QR code. Most setup screens also offer a text version of the key (often labeled something like "can't scan the code?"). That text, usually a long string of letters and numbers, is the secret the plugin needs.

If 2FA is already set up and you no longer have the secret, you'll typically need to turn 2FA off and back on in SmartRent to get a new one. Add the new secret to your authenticator app and to the plugin.

Use the Check 2FA code button to confirm the secret is correct: the code it shows should match the one in your authenticator app.

Some setup screens show the secret in groups separated by spaces (for example, ABCD EFGH IJKL MNOP). Remove the spaces when you enter it in the plugin, or it will be rejected as invalid.

Note: The plugin logs in to SmartRent when it starts. If you change your email, password, or 2FA secret, reload the plugin (Plugins → SmartRent → Reload) for the change to take effect.

Adding devices

  1. In Indigo, create a new device and choose SmartRent as the type.
  2. Pick the model: Door Lock or Thermostat.
  3. Select the matching device from the SmartRent Device menu, which lists the devices on your SmartRent account of that kind.
  4. Save. The device will populate with its current state and then update live.

Note: The plugin loads your SmartRent device list when it starts. If you add a device to your SmartRent account later, reload the plugin (Plugins → SmartRent → Reload) before it will appear in the SmartRent Device menu.

Door Lock

Door locks are Indigo relay devices with the lock subtype, so Indigo shows them with lock and unlock controls. Use the Lock and Unlock actions to control them.

State Description
lockStatus locked or unlocked (shown in the device list).
onOffState true when locked.
batteryLevel Battery percentage reported by the lock.
online Whether SmartRent reports the lock as online.

Thermostat

Thermostats are native Indigo thermostat devices and support the built-in thermostat actions.

Indigo SmartRent
HVAC mode Heat / Cool / Heat-Cool (Auto) / Off heat / cool / auto / off
Fan mode Auto / Always On auto / on
Heat and cool setpoints Heating and cooling setpoints

The device also reports current temperature, humidity, whether heating or cooling is running, and an online state.

Using SmartRent devices in Indigo

Because these are standard Indigo devices, you can use them anywhere you'd use a built-in lock or thermostat. A few ideas:

  • Trigger an Action Group when the front door is unlocked.
  • Lock the door on a schedule each night.
  • Switch the thermostat to a setback temperature when everyone leaves.
  • Get a notification when a device's online state becomes false, or when a lock's battery runs low.

From a Python script in Indigo, the standard device commands work too:

lock = indigo.devices["Front Door"]
indigo.device.lock(lock)

thermostat = indigo.devices["Living Room Thermostat"]
indigo.thermostat.setHeatSetpoint(thermostat, value=68)

See the Indigo scripting tutorial for more.

Troubleshooting

  • "The email, password, and 2FA secrets are not configured!": open the plugin configuration and fill in all three fields, then reload the plugin.
  • "SmartRent rejected the login. Check your email, password, and 2FA secret.": SmartRent didn't accept your credentials. Check your email and password, use Check 2FA code to confirm the code matches your authenticator app, then reload the plugin.
  • "Couldn't reach SmartRent: …": the plugin couldn't connect to SmartRent, or SmartRent returned an unexpected response. Check your network connection, wait a few minutes in case SmartRent is having problems, then reload the plugin.
  • "Timed out connecting to SmartRent.": SmartRent didn't respond in time. This is usually temporary; reload the plugin to try again.
  • "Invalid 2FA secret: …": shown when you click Check 2FA code or save the plugin configuration with a secret that isn't valid. Check that the secret was copied completely, without spaces, and that you used the secret rather than a 6-digit code. See Finding your 2FA secret.
  • The SmartRent Device menu says "No connection to SmartRent API": the plugin couldn't log in. Look in the Event Log for one of the login errors above, fix the cause, then reload the plugin.
  • "No SmartRent device linked to …": edit the Indigo device and choose a device from the SmartRent Device menu.
  • A device is missing from the SmartRent Device menu: the device list is loaded when the plugin starts, so devices added to your SmartRent account afterward won't appear until you reload the plugin. Also check that you picked the right model: the menu only lists SmartRent devices of the selected kind (Door Lock or Thermostat).
  • Something else: set the log level to Debug, reproduce the problem, and include the relevant Indigo Event Log lines when asking for help.

For help, post in the plugin's Indigo forum or open an issue.

Development and contributing

See DEVELOPMENT.md for how the plugin is structured and how to set up a local environment, and CONTRIBUTING.md for how to report issues and submit pull requests.

Release details
Released on: Oct. 29, 2026
Requires: Indigo v2023.2.0+
Downloaded: 5 times 
Changes in this release

1.0.6 (2026-10-29)

Bug Fixes

  • Action handlers don't handle an unlinked SmartRent device (#78) (508b754)
  • handle unknown thermostat modes during updates (#76) (8d8c0cc)
Release details
Released on: Oct. 29, 2026
Requires: Indigo v2023.2.0+
Downloaded: 6 times 
Changes in this release

1.0.5 (2026-10-29)

Bug Fixes

  • correct device type in door lock error messages (c463380)
  • handle failed SmartRent login during startup (#61) (e40bf86)
  • missing credentials crash on plugin startup (#58) (16572d5)
  • respond to lock device actions (#70) (2ccea5f)
  • set IsLockSubType for lock device (#63) (51b345b)
  • undefined variable in startup login error handler (#64) (f9c9a13)
  • validate 2FA secret before generating codes (#62) (538c4a8)

Miscellaneous Chores

  • deps: pin aiohttp to 3.14.4 (#57) (7598393)
  • deps: update actions/setup-python digest to 6d4fd22 (f927231)
  • deps: update actions/setup-python digest to 6d4fd22 (#45) (2d4eff4)
  • deps: update dependency aiohttp to v3.14.5 (#60) (5aff467)
  • deps: update dependency more-itertools to v11.2.1 (42989dd)
  • deps: update dependency more-itertools to v11.2.1 (#43) (647f2ee)
  • deps: update dependency ruff to v0.17.3 (#66) (735b21a)
  • deps: update marocchino/sticky-pull-request-comment action to v3.0.5 (#69) (320b5fc)

Docs

Release details
Released on: July 25, 2026
Requires: Indigo v2023.2.0+
Downloaded: 76 times 
Changes in this release

1.0.4 (2026-07-25)

Miscellaneous Chores

  • deps: pin dependencies (d0d08b0)
  • deps: pin dependencies (#40) (f3cfbd7)
  • deps: update actions/checkout action to v7 (4a77e9f)
  • deps: update actions/checkout action to v7 (e156d42)
  • deps: update actions/checkout action to v7 (#37) (edc9c76)
  • deps: update actions/checkout action to v7 (#41) (12dcdc7)
  • deps: update actions/setup-python action to v7 (94f37ed)
  • deps: update actions/setup-python action to v7 (#42) (dc31bc4)
  • deps: update dependency more-itertools to v11.1.0 (7a5ef70)
  • deps: update dependency more-itertools to v11.1.0 (#34) (63a06fe)
  • deps: update dependency pyotp to v2.10.0 (4d23150)
  • deps: update dependency pyotp to v2.10.0 (#36) (82cba4f)
Release details
Released on: April 29, 2026
Requires: Indigo v2023.2.0+
Downloaded: 115 times 
Changes in this release

1.0.3 (2026-04-29)

Miscellaneous Chores

  • deps: Develop locally with Python 3.13 (c2cee16)
  • deps: Develop locally with Python 3.13 (#32) (813c954)
  • deps: update dependency more-itertools to v11 (7c7f11b)
  • deps: update dependency more-itertools to v11 (#29) (bcbbac7)
  • deps: update googleapis/release-please-action action to v5 (63c8e49)
  • deps: update googleapis/release-please-action action to v5 (#31) (7e3f038)
  • deps: update googleapis/release-please-action digest to 5c625bf (aed287c)
  • deps: update googleapis/release-please-action digest to 5c625bf (#30) (d9fc87f)
Release details
Released on: March 14, 2026
Requires: Indigo v2023.2.0+
Downloaded: 109 times 
Changes in this release

1.0.2 (2026-03-14)

Miscellaneous Chores

  • deps: update actions/checkout digest to de0fac2 (3b95672)
  • deps: update actions/checkout digest to de0fac2 (#22) (d157e73)
  • deps: update marocchino/sticky-pull-request-comment action to v3 (f6e7ad4)
  • deps: update marocchino/sticky-pull-request-comment action to v3 (#28) (32cede2)
Release details
Released on: Jan. 27, 2026
Requires: Indigo v2023.2.0+
Downloaded: 103 times 
Changes in this release

What's Changed

  • chore: Configure Renovate by @renovate[bot] in https://github.com/AaronLionsheep/SmartRent/pull/15
  • chore(deps): update dependency more-itertools to v10.8.0 by @renovate[bot] in https://github.com/AaronLionsheep/SmartRent/pull/17
  • chore(deps): pin dependencies by @renovate[bot] in https://github.com/AaronLionsheep/SmartRent/pull/20
  • chore(deps): update actions/checkout action to v5 by @renovate[bot] in https://github.com/AaronLionsheep/SmartRent/pull/19
  • chore(deps): update actions/checkout action to v6 by @renovate[bot] in https://github.com/AaronLionsheep/SmartRent/pull/23
  • chore(deps): update googleapis/release-please-action digest to 16a9c90 by @renovate[bot] in https://github.com/AaronLionsheep/SmartRent/pull/21
  • chore(deps): update dependency smartrent-py to v0.5.2 by @renovate[bot] in https://github.com/AaronLionsheep/SmartRent/pull/16
  • ci(release): Expand changelog sections by @AaronLionsheep in https://github.com/AaronLionsheep/SmartRent/pull/26
  • chore(main): release 1.0.1 by @github-actions[bot] in https://github.com/AaronLionsheep/SmartRent/pull/25

New Contributors

  • @renovate[bot] made their first contribution in https://github.com/AaronLionsheep/SmartRent/pull/15

Full Changelog: https://github.com/AaronLionsheep/SmartRent/compare/v1.0.0...v1.0.1

Release details
Released on: Sept. 9, 2025
Requires: Indigo v2023.2.0+
Downloaded: 106 times 
Changes in this release

1.0.0 (2025-09-09)

⚠ BREAKING CHANGES

  • Door Lock and Thermostat support (#3)

Features

  • Door Lock and Thermostat support (#3) (64e79b9)