Announcing wolfMQTT v1.21.0: NetX and ThreadX RTOS Support

We are excited to announce the release of wolfMQTT v1.21.0, which introduces support for NetX and ThreadX RTOS platforms as its headline feature. This release continues our commitment to providing a lightweight, secure, and feature-rich MQTT client implementation for embedded systems and IoT applications.

What’s New in v1.21.0

The wolfMQTT v1.21.0 release includes several significant enhancements:

NetX and ThreadX RTOS Support

The most notable addition in this release is support for NetX networking stack and ThreadX RTOS. This enables wolfMQTT to be used on a wider range of embedded platforms, particularly those using Azure RTOS (formerly ThreadX) environments. These additions make wolfMQTT an excellent choice for industrial IoT applications and real-time embedded systems.

License Update to GPLv3

Starting with this release, wolfMQTT is now available under the GPLv3 license. This update aligns wolfMQTT with the broader wolfSSL product family licensing model, providing clearer terms for open source usage while commercial licensing remains available for proprietary applications.

Security Improvements

This release includes important security enhancements:

  • Fixed a heap buffer overflow vulnerability in MqttDecode_Num with improved bounds checking
  • Enhanced MQTT v5 property-packet protocol validation and decode safety
  • Corrected state transition checks in MqttClient_Auth for more robust authentication handling

Post-Quantum Cryptography Updates

The ML-KEM hybrid key exchange names have been updated to match the latest IETF Draft specifications. This ensures compatibility with evolving post-quantum cryptography standards and maintains interoperability with other implementations following the IETF naming conventions.

ESP-IDF v5.5 Support

The Espressif ESP-IDF examples have been updated and pinned to ESP-IDF v5.5, ensuring compatibility with the latest Espressif development framework. This update also includes workflow improvements and line ending fixes for better cross-platform development.

Additional Improvements

  • Updated test certificates to replace expired ones
  • Restored instructions for testing against OQS Mosquitto integration
  • Added fflush to mqtt-sub example for improved output handling
  • Various bug fixes for MQTT property decode error checks

About wolfMQTT

wolfMQTT is a lightweight, embedded MQTT client implementation written in C that supports SSL/TLS via the wolfSSL library. It was built from the ground up to be multi-platform, space conscious, and extensible. The library supports:

  • MQTT v3.1.1 and v5.0 protocols
  • MQTT-SN (MQTT for Sensor Networks)
  • Quality of Service (QoS) levels 0-2
  • TLS encryption via wolfSSL
  • Non-blocking communications
  • Multithreading for parallel operations
  • Integration with popular IoT platforms (AWS IoT, Azure IoT Hub, IBM Watson IoT)

Getting wolfMQTT v1.21.0

The wolfMQTT v1.21.0 release is available now on our download page and GitHub.
Release 1.21.0 has been developed according to wolfSSL’s development and QA process and successfully passed the quality criteria.

Check out the ChangeLog for a full list of features and fixes, or contact us at facts@wolfSSL.com with any questions.

While you’re there, show us some love and give the wolfMQTT project a Star!

You can download the latest wolfMQTT release from our website or clone directly from our GitHub repository.

If you have questions about any of the above, please contact us at facts@wolfSSL.com or call +1 425 245 8247.

Download wolfSSL Now