homebridge-switchbot-bluetooth-platform
TypeScript icon, indicating that this package has built-in type declarations

1.2.6 • Public • Published

Homebridge SwitchBot Bluetooth Platform

The Homebridge SwitchBot Bluetooth Platform is a Homebridge plugin that allows you to directly control your SwitchBot bot device from HomeKit via BLE (Bluetooth Low Energy).
This plugin aims to provide the best performance and stability when controlling your SwitchBot bot via BLE.

npm version npm downloads latest commit

Why do I need (yet another) SwitchBot plugin?

The existing SwitchBot plugins did not provide the level of stability and feature-set that I was looking for.

This plugin aims to provide the best performance (around 30% faster BLE calls than other switchbot plugins), and best stabilty (support for retry mechanism, error handling and device details caching), assuring you that the plugin will stay stable upon usage, and the switchbot will respond as fast as possible.

This plugin also aims to provide several new features, such as support for bot battery status, and password-protected BLE communication.

Supported Devices

Supported Devices:

To Be Supported Soon:

Installation

Installing from Homebridge Plugins Page:

  1. Search for "switchbot bluetooth"
  2. Find homebridge-switchbot-bluetooth-platform
    • NOTE: Check noble prerequisites for your operating system. this is used for the bluetooth communcation.
  3. Install the plugin

Installing Directly:

  1. Open Terminal
  2. run command npm install -g homebridge-switchbot-bluetooth-platform
    • NOTE: Check noble prerequisites for your operating system. this is used for the bluetooth communcation.

Configuration

Add a new platform to your homebridge config.json file

"platforms": [
    {
        "platform": "SwitchBotBluetoothPlatform",
        "name": "SwitchBotBluetoothPlatform"
    }
]

under the new platform, add devices field

"platforms": [
    {
        "platform": "SwitchBotBluetoothPlatform",
        "name": "SwitchBotBluetoothPlatform",
        "devices": [
            {
                "type": "bot",
                "name": "Bedroom Bot",
                "address": "a4:ee:45:10:fa:5d"
            },
            {
                "type": "bot",
                "name": "Living Room Bot",
                "address": "c1:fe:61:33:sd:4f",
                "scanDuration": 2000,
                "scanRetries": 7,
                "scanRetryCooldown:": 1000,
            }
        ]
    }
]

Device Configuration Properties

Upon defining a device in the devices list, the following properties are available:

Mandatory Properties

  • name - Device name. Must be unique (no duplications).
  • type - Type of device. (currently only bot is supported).
  • address - MAC Address of the SwitchBot device. Learn how to find MAC Address.

Optional Properties

  • scanDuration - Time for scanning bluetooth devices (in miliseconds).
    A longer time will increase chance of successfuly detecting new devices, but reduce response time.
    Default is 5000 (5000 miliseconds)

  • scanRetries - The Number of times that the plugin should attempt scanning for SwitchBot device, before failing.
    Default is 5 (5 attempts)

  • scanRetryCooldown - Time for waiting between attempts of scanning / connecting to SwitchBot device.
    Default is 1000 (1000 miliseconds)

  • autoTurnOffInPressMode - Automatically Sets button back to OFF state when bot is configured to be in 'Press' mode (Enabled by default for bots that are set to 'Press' mode)
    Default is true (enabled)

Finding your SwitchBot MAC Address

  1. Download SwitchBot App - iOS App Store / Google Play Store
  2. Register / or Login into your SwitchBot account
  3. Open the device that you want to add to this platform
  4. Click Device Info
  5. Copy the BLE MAC address
  6. Add the address to the address property of the device in the config.json file (Your configuration)

Contact Me

For any questions, assistance or feedback feel free to contact me here

Buy Me a Coffee

If you want to buy me a coffee, you can do so here: https://paypal.me/galzo1 ♥️

Package Sidebar

Install

npm i homebridge-switchbot-bluetooth-platform

Weekly Downloads

77

Version

1.2.6

License

Apache-2.0

Unpacked Size

63.2 kB

Total Files

45

Last publish

Collaborators

  • galzo