npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

homebridge-lovesac-stealthtech

v1.1.5

Published

Homebridge plugin for Lovesac StealthTech Sound + Charge BLE control

Readme

homebridge-lovesac-stealthtech

Homebridge plugin for the Lovesac StealthTech Sound + Charge system. Control your StealthTech soundbar from Apple HomeKit using Bluetooth.

Features

  • Power on/off from HomeKit and Siri
  • Input switching — HDMI-ARC, Bluetooth, AUX, Optical
  • Volume control — slider in the Home app, plus volume buttons in Control Center
  • Mute toggle
  • Audio presets — Movies, Music, TV, News as individual switches
  • Quiet mode toggle
  • Auto-discovery — finds your StealthTech device automatically
  • Background polling — keeps HomeKit in sync when settings change elsewhere

Requirements

  • Homebridge v1.8.0 or later
  • Node.js 18, 20, or 22
  • Bluetooth adapter (built-in on Mac; USB dongle on Linux/Raspberry Pi)
  • macOS, Linux, or Raspberry Pi (any platform supported by @stoprocent/noble)

Installation

Via Homebridge UI

Search for homebridge-lovesac-stealthtech in the Homebridge UI plugin tab.

Via CLI

npm install -g homebridge-lovesac-stealthtech

Pairing

This plugin uses the Television service, which Apple requires as an external accessory. It won't appear automatically — you need to add it by hand:

  1. Open the Home app on your iPhone or iPad
  2. Tap +Add Accessory
  3. Tap More Options...
  4. Select Lovesac StealthTech
  5. Enter the setup code from your Homebridge config (default: 031-45-154)

Note: Due to a known Apple bug, the input sources and preset switches may all show generic names (like "Input Source 2") when you first add the accessory. Just accept the defaults — the plugin will correct all the names automatically within a few moments.

Using It

| Accessory | What it does | |---|---| | Lovesac StealthTech | Power on/off, input source selection | | Volume (Fan or Lightbulb tile) | Volume slider (0–100%); on/off toggles mute | | Movies / Music / TV / News Mode (Switch tiles) | Activate audio presets (one at a time) | | Quiet Mode (Switch tile) | Toggle quiet mode |

Control Center Remote

The Lovesac StealthTech appears in the Control Center remote (the Apple TV Remote widget). Select it from the device picker at the top, then:

  • Up/Down arrows — Volume up/down
  • Play/Pause — Toggle mute
  • Info (i) — Cycle through presets

Siri

Siri support for external accessories (which the Television service requires) is limited. Basic commands like "turn on" or "set volume" may conflict with other devices in the same room. Siri via HomePod may work better than from an iPhone. The Control Center remote is the most reliable way to control the StealthTech without opening the Home app.

Important: Only One Bluetooth Connection at a Time

The StealthTech hardware allows only one Bluetooth connection at a time. This means the Homebridge plugin and the Lovesac mobile app can't be connected simultaneously.

The plugin handles this gracefully — it connects briefly to send commands or check the current state, then disconnects so the Bluetooth slot is free. With the default settings, the plugin is connected for roughly 5 seconds every 90 seconds, leaving the connection open for the Lovesac app about 94% of the time.

Tips for using both HomeKit and the Lovesac app

  • Close the Lovesac app when you're done with it. The app holds the connection open while it's in the foreground (and sometimes in the background). While the app is connected, HomeKit commands won't go through.
  • Force-quit the app if HomeKit seems stuck. The app may be holding the connection in the background.
  • You can increase the poll interval in the config if you use the Lovesac app frequently. A longer interval gives the app more time to connect, though HomeKit will be slower to pick up changes made outside of it.

If HomeKit shows "Not Responding"

This usually means a Bluetooth command timed out. Common causes:

  • The Lovesac mobile app has the connection open (close or force-quit it)
  • The StealthTech device is too far from your Home Hub (Apple TV, HomePod, or iPad) — Bluetooth range is between the Hub and the soundbar, not your phone
  • Another Bluetooth client is connected to the device

The plugin will automatically retry on the next poll or the next time you send a command.

Configuration

The minimal config is all most people need — the plugin will find your StealthTech device automatically:

{
  "platform": "LovesacStealthTech",
  "devices": [
    {
      "name": "Lovesac StealthTech"
    }
  ]
}

All Options

{
  "platform": "LovesacStealthTech",
  "devices": [
    {
      "name": "Lovesac StealthTech",
      "address": "",
      "idleTimeout": 60,
      "pollInterval": 90,
      "volumeControl": "fan",
      "volumeStep": 2,
      "presets": {
        "movies": true,
        "music": true,
        "tv": true,
        "news": true
      }
    }
  ]
}

| Option | Default | Description | |---|---|---| | name | "Lovesac StealthTech" | Name of the accessory in HomeKit. | | address | (auto-discover) | BLE address. Leave blank for auto-discovery. Use npx homebridge-lovesac-stealthtech scan to find the address if auto-discovery fails. | | idleTimeout | 60 | Seconds to wait after the last command before disconnecting. Range: 10–600. | | pollInterval | 90 | Seconds between background state checks. Longer intervals make it easier to use the Lovesac app alongside HomeKit; shorter intervals keep HomeKit more up to date. Set to 0 to disable polling entirely. Range: 0–600. | | volumeControl | "fan" | How to expose the volume slider: "fan", "lightbulb", or "none". Fan is recommended — Siri can "set Volume to 50%". | | volumeStep | 2 | Volume increment for Control Center remote up/down buttons. Range: 1–5. | | presets | all enabled | Show or hide individual preset switches (movies, music, tv, news). |

Note: Keep pollInterval larger than idleTimeout so the plugin actually disconnects between polls.

Scanner

If auto-discovery doesn't find your device (e.g., you have multiple StealthTech systems), you can scan manually:

npx homebridge-lovesac-stealthtech scan

Contributing

See CONTRIBUTING.md for development setup and build instructions.

License

MIT