Releases: adafruit/Adafruit_CircuitPython_MiniMQTT
Add PyPortal MiniMQTT Example
- Added new example for using the
Adafruit_CircuitPython_PyPortal
module with this library.
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
To use in CPython, pip3 install adafruit-circuitpython-minimqtt
.
Read the docs for info on how to use it.
1.1.7 - Changed CI from Travis to GitHub Actions
This release includes:
- Migrating this repository from Travis to GitHub Actions. This has no effect on the behavior of the code itself.
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
To use in CPython, pip3 install adafruit-circuitpython-minimqtt
.
Read the docs for info on how to use it.
Fix Client Identifier Generation Method
- #19 Use time.monotonic() instead of microcontroller.cpu.uid for random seed to create client ID
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
To use in CPython, pip3 install adafruit-circuitpython-minimqtt
.
Read the docs for info on how to use it.
Add usage example for connecting with a broker using CA certificate and user certificate/key
- Added usage example for establishing a secure MQTT connection with a server, provided a user-defined X.509 certificate and private key.
NOTE: This example requires nina-fw v1.4.0 or above. If you do not know how to upgrade the firmware on your ESP32, follow the learn guide on the Adafruit Learning System for this topic.
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
Read the docs for info on how to use it.
Change socket.read to socket.recv
Changes calls from socket.read
to socket.recv
to match the latest ESP32SPI release.
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
Read the docs for info on how to use it.
Change socket.write to socket.send
Changes calls from socket.write
to socket.send
to match the latest ESP32SPI release.
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
Read the docs for info on how to use it.
Expose Attributes
Exposing the following MiniMQTT private attributes as public attributes:
user
,keepalive
,password
,client_id
,logger
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
To use in CPython, pip install adafruit-circuitpython-minimqtt
.
Read the docs for info on how to use it.
Fix CONNACK IndexError
Fixes an IndexError
caused by a non-authorized CONNACK packet returned by a broker.
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
To use in CPython, pip install adafruit-circuitpython-minimqtt
.
Read the docs for info on how to use it.
Network management improvements, KeepAlive
Improvements for KeepAlive
keep_alive
is now an init kwarg- The
loop
method now checks the time and sends a PINGREQ (expecting a PINGRESP, this is handled in theping()
method) to the server if the time elapsed is greater than or equal to the providedkeep_alive
value.
Network Management Improvements
*loop_forever
now calls loop
instead of _wait_for_msg
. Also now handles network control, for both the socket and the NetworkManager (currently only the WiFiManager) objects.
- Properties for network management (
is_wifi_connected
,is_sock_connected
) have been added as well as additional management for both the socket and ESP32SPI wifi module (reconnect_socket
,reconnect_wifi
)
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
To use in CPython, pip install adafruit-circuitpython-minimqtt
.
Read the docs for info on how to use it.
Fix CONNECT for long password/username/client identifiers
This release fixes connect()
for use with large (>127 bytes) payloads such as a long password (JSON Web Tokens), client identifier, or last-will message.
- The remaining length calculation previously used by this library has been removed in favor of using the algorithm described by the MQTT V3.1.1 specification (https://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html#_Toc398718030).
- Default
keepalive
value increased to 60 seconds to ensure the MQTT broker rejects incorrect connections, instead of hanging.
To use in CircuitPython, simply install the Adafruit CircuitPython bundle.
To use in CPython, pip install adafruit-circuitpython-minimqtt
.
Read the docs for info on how to use it.