homebridge-bed-control
TypeScript icon, indicating that this package has built-in type declarations

1.3.8 • Public • Published

Homebridge Bed Control

Downloads Version GitHub issues GitHub pull requests verified-by-homebridge donate with bitcoin

HomeBridge plugin for compatible smart bed platforms

Copyright © 2024 hbblebc. All rights reserved.

This is an independent plugin and not affiliated with any bed platform company or manufacturer. If you have an issue with the plugin, file a ticket here. The bed companies will not provide support for any problems encountered as a result of using this plugin. Use at your own risk.

This repository contains a smart bed control plugin for homebridge that allows you to control various features of your supported beds. For example, sleep number setting (modeled as a lightbulb), head/foot position, outlets, foot warming, massage, etc. It will detect all the beds on your account and add them automatically.

This plugin uses a cloud API to control the beds (rather than a local network API). As such, downtime is possible if there are network issues or the API is unavailable.

Supported bed platforms

  • sleep number

Installation

Install through homebridge-config-ui-x.

Configuration

Configure in Homebridge UI following config.schema.json.

You can add any devices you don't want showing up in homebridge to the configuration ignore list with the syntax: <bedId>.<bedFeature>. You can find the bedId in the logs after you start the plugin. The possible list of bedFeature values are as follows:

  • privacy
  • foundation
  • <side>.occupancySensor
  • <side>.numberControl
  • <side>.responsiveAir
  • <side>.headControl
  • <side>.footControl
  • <side>.outlet
  • <side>.light
  • <side>.footwarming

Where <side> is one of leftSide, rightSide, or anySide. So a full example might look like:

-9223372018921241066.anySide.occupancySensor

This would ignore both occupancy sensors and hide them from homebridge on the bed matching the specified ID.

Usage

The platform supports the following HomeKit devices:

  • Inflation numbers and head/foot positions are modeled as a lightbulb in HomeKit.
    • This allows you to set the value easily. Keep this in mind when telling Siri to turn off all the lights.
  • Occupancy of the bed is a standard occupancy sensor
  • Outlets and lights are homekit outlets
  • Privacy mode and Responsive Air mode are homekit switches
  • Foot warming is modeled as a thermostat (This is a little odd but easy to learn)
    • The thermostat has 4 modes that map to the following temperature controls:
      • Off -> Off
      • Auto -> Low
      • Cool -> Medium
      • Heat -> High
    • The temperature slider for the thermostat allows you to control the foot warming timer. It only has a range of 50-100, so if you want to set the foot warming timer to a different value, you will need to use the bed app, or create an automation to to set the temperature every X minutes.

All the controls for a single bed will be grouped inside of a single device matching the name of the bed. If you would rather have separate controls, the HomeKit app will let you split the device into separate controls

Privacy Mode

When privacy mode is enabled, the API requests that provide occupancy status will be non-functional. As a result, when privacy mode is enabled for a bed, polling will be disabled and occupancy sensors will not activate when somebody is in bed. If you plan on keeping privacy mode enabled permenantly, I recommend keeping polling disabled and hiding the occupancy sensor devices from the accessory list using the platform settings.

Issues/Future Work

None for now

Dependencies (3)

Dev Dependencies (18)

Package Sidebar

Install

npm i homebridge-bed-control

Weekly Downloads

131

Version

1.3.8

License

Apache-2.0

Unpacked Size

272 kB

Total Files

39

Last publish

Collaborators

  • hbblebc