All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
python3.11, python3.12 & python3.13--mqtt-disable-tls)PySwitchbot>=0.14.0,<0.41 instead of PySwitchbot>=0.10.0,<0.13/var/run/dbus/system_bus_socket
as bleak controls bluetooth via BlueZ over D-Bus.
access to network namespace containing bluetooth interface is thus
no longer required.--fetch-device-info no longer requires CAP_NET_ADMIN
(bluepy-helper replaced with bleak)--mqtt-enable-tls (TLS now enabled by default)python3.7python3.8 (security support ended on 2024-10-07)python3.9 (security support will end on 2025-10-31)homeassistant/switchbot-mqtt/status instead of topic
homeassistant/switchbot_mqtt/status.homeassistant/switchbot-mqtt/status
(@phbasler, https://github.com/fphammerle/switchbot-mqtt/pull/105)ValueError: too many values to unpack when connecting to MQTT broker via IPv6
(https://github.com/fphammerle/switchbot-mqtt/issues/42)--mqtt-topic-prefix--mqtt-enable-tls--mqtt-disable-tls (enabled by default)--mqtt-enable-tls and --mqtt-disable-tlshomeassistant/cover/switchbot-curtain/MAC_ADDRESS/position/set-percent
trigger command to set curtain motors' position (payload: decimal integer in range [0, 100])PySwitchbot v0.11.0 and v0.12.0python3.6homeassistant/cover/switchbot/+/battery-percentage
(use homeassistant/switch/switchbot/+/battery-percentage instead, see v2.1.0)homeassistant/switch/switchbot/MAC_ADDRESS/request-device-info
and homeassistant/cover/switchbot-curtain/MAC_ADDRESS/request-device-info trigger
update and reporting of device information (battery level, and curtains' position).
Requires --fetch-device-info.--fetch-device-info can alternatively be enabled by assigning a non-empty value
to the environment variable FETCH_DEVICE_INFOhomeassistant/switch/switchbot/MAC_ADDRESS/battery-percentage
(old topic kept for downward compatibility)--fetch-device-info enables battery level reports on topics
homeassistant/cover/{switchbot,switchbot-curtain}/MAC_ADDRESS/battery-percentage
after every command.--debug to change log level to DEBUGDEBUG to INFO--debug)python3.5--fetch-device-info enables reporting of curtain motors'
position on topic homeassistant/cover/switchbot-curtain/MAC_ADDRESS/position
after sending stop command.--device-password-file
(json file mapping mac addresses to the respective password)--retries to alter maximum number of attempts to send a command
to a SwitchBot device (default unchanged)pipenv install into two stages to speed up image buildschmod files copied from host to no longer require o=rX perms on hostpodman build--force flag to rm invocation to avoid interactive questions while running podman buildOPEN, CLOSE, and STOP on topic homeassistant/cover/switchbot-curtain/aa:bb:cc:dd:ee:ff/setpaho-mqtt to no longer suppress exceptions occuring in mqtt callbacks
( https://github.com/eclipse/paho.mqtt.python/blob/v1.5.1/ChangeLog.txt#L4 )chown workaround for inter-stage copyMQTT_HOST, MQTT_PORT, MQTT_USERNAME & MQTT_PASSWORD)--mqtt-password-filepipenv failing to create cachehomeassistant/switch/switchbot/MAC_ADDRESS/state on success--mqtt-username and --mqtt-passwordSWITCHBOT_MQTT_VERSION
(fixes auto build on hub.docker.com)homeassistant/switch/switchbot/+/set.
Handle ON and OFF messages.