{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/21"},{"label":"Home Automation","url":"https://skillfed.io/packages/category/home-automation"}],"enrichment":{"capability":"Async Python library to discover and control Switchbot IoT devices over Bluetooth Low Energy.","skillfed_tags":["home-automation","ble-bluetooth","async-io"],"use_cases":["Automate smart lock unlock/lock operations in a home automation system by retrieving encryption keys once and reusing them.","Discover and control motorized curtains programmatically based on time, sensors, or user input.","Build a multi-device Switchbot controller that discovers all nearby devices and exposes them to a home automation platform.","Integrate Switchbot devices into an async Python application without blocking on BLE communication.","Retrieve device status and data from Switchbot devices on demand."],"what_it_does":"pySwitchbot is an async Python library for discovering and controlling Switchbot IoT devices via Bluetooth Low Energy. It handles device discovery, authentication (including encrypted communication for locks), and command execution for devices like smart locks and motorized curtains. The library wraps aiohttp, bleak, bleak-retry-connector, cryptography, and pyOpenSSL in an async-first API suitable for home automation integrations.\n\nThe package is in alpha status but actively maintained, with recent releases and steady development. It requires Python 3.11+ and supports Python 3.12, 3.13, and 3.14. Lock control requires retrieving encryption keys from the Switchbot account API (a one-time setup step), while other devices typically work with simpler discovery and command patterns.","worth_installing":"Yes, if you own Switchbot devices and want to control them from Python. The library is actively maintained, has low install friction, and uses standard async patterns. It is in alpha status, so expect occasional API changes; check the repository for any breaking changes before upgrading. No known security vulnerabilities as of the latest scan."},"id":"pyswitchbot","links":{"html":"https://skillfed.io/packages/pyswitchbot","md":"https://skillfed.io/packages/pyswitchbot.md","pypi":"https://pypi.org/project/pyswitchbot/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-08-07","license_spdx":null,"license_treatment":"permissive","name":"PySwitchbot","python_support":"supports_current","summary":"A library to communicate with Switchbot"},"popularity":{"monthly_downloads":85275,"position":13935,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"2.4.1"}
