emMQTT
Embedded SoftwareLightweight MQTT 3.1.1 client for IoT devices with QoS 0/1/2 support, TLS encryption, and a ROM footprint under 2.5 KB. Available in India from GSAS.
Protocol
MQTT 3.1.1
QoS Levels
0, 1, and 2
ROM Footprint
~2.4 KB (Cortex-M4)
RAM
8 bytes client + 76 bytes context
Security
SSL/TLS, client certificates
License
Royalty-free, one-time payment
Overview
About emMQTT
SEGGER emMQTT is a compact MQTT client implementation built for embedded IoT devices where memory and power budgets are tight. Implementing the MQTT 3.1.1 specification, emMQTT provides full publish/subscribe messaging with all three Quality of Service levels, QoS 0 (at most once), QoS 1 (at least once), and QoS 2 (exactly once), enabling developers to choose the right delivery guarantee for each message type. At approximately 2.4 KB of ROM on a Cortex-M4 target and just 84 bytes of RAM per client context, emMQTT adds negligible overhead to even the most constrained sensor nodes and edge devices.
Security and Broker Compatibility
emMQTT supports SSL/TLS encryption and client certificate authentication when used with SEGGER emSSL, securing MQTT traffic end-to-end without requiring a separate security layer. The client supports will messages for graceful handling of unexpected disconnections and the retain flag for persistent message delivery. It has been tested with popular brokers including Mosquitto, HiveMQ, and AWS IoT Message Broker, ensuring interoperability across cloud and on-premise MQTT infrastructure.
| Feature | Detail |
|---|---|
| Publish / Subscribe | Full client with topic filtering |
| QoS | Level 0, 1, and 2 |
| Will messages | Registered on connect |
| Retain flag | Supported |
| TLS | Via emSSL integration |
| Client auth | X.509 certificates |
| Tested brokers | Mosquitto, HiveMQ, AWS IoT |
Core Capabilities
- Full publish/subscribe client: topic filtering, subscription management, and QoS-aware message delivery
- Persistent sessions: clients can reconnect and resume subscriptions without re-establishing state from scratch
- Small, predictable memory footprint: around 2.4 KB ROM and 84 bytes RAM per client context on Cortex-M4, so an MQTT client fits alongside sensor and control code on the same microcontroller
- Callback-driven API: application code registers handlers for connection state, incoming messages, and publish acknowledgements rather than polling
- Interoperability testing: verified against Mosquitto, HiveMQ, and AWS IoT Message Broker for both on-premise and cloud deployments
TCP/IP Stack Independence
emMQTT is independent of the underlying TCP/IP stack, any stack providing a socket interface can be used through a simple callback API. It is optimised for SEGGER emNet but works equally well with third-party stacks, giving teams flexibility to integrate emMQTT into existing network architectures. This stack independence matters for Indian IoT integrators retrofitting connectivity onto boards that already run a vendor-supplied networking stack, since emMQTT does not force a wholesale replacement of the existing TCP/IP layer.
SEGGER Ecosystem Integration
Paired with emSSL, emMQTT delivers TLS-secured telemetry without a separate security stack integration, and paired with emNet, it gains a matched, memory-efficient IPv4/IPv6 foundation built by the same vendor. Because emMQTT, emSSL, and emNet share one royalty-free, one-time-payment licensing model, IoT product teams can budget connectivity, security, and messaging middleware as a single fixed line item rather than negotiating separate runtime royalties for each layer. The royalty-free, one-time-payment licensing model makes it straightforward to deploy across high-volume IoT product lines without per-unit cost concerns.
Blog
SEGGER Insights
SEGGER emMQTT for AWS IoT Mumbai, Azure IoT Central India, and Private Brokers
How Indian IoT product teams use SEGGER emMQTT, a commercial MQTT 3.1.1 and MQTT 5 client, to publish telemetry and receive commands from Cortex-M devices to AWS IoT (ap-south-1), Azure IoT Hub (centralindia), and self-hosted brokers inside Indian data centres.
SEGGER J-Link and J-Trace Now Support Andes Trace: Why This Matters for RISC-V
SEGGER's J-Link and J-Trace probes now support Andes Trace, the hybrid N-Trace plus E-Trace instruction-trace solution built into Andes RISC-V cores. Here is what Andes Trace is, why probe-level support closes one of RISC-V's last serious tooling gaps, and what it means for Indian embedded teams.
Choosing a SEGGER Flasher: Standalone vs Gang vs Secure vs Portable
Standalone, gang, secure, or portable, the SEGGER Flasher family covers four different production-programming problems, not one. Here is how Indian engineering and production teams should decide.
Related products
More from SEGGER
All SEGGER products →
embOS RTOS
Safety-certified real-time operating system with zero-interrupt-latency, sub-1 KB ROM footprint, and royalty-free licensing across Classic, MPU, Ultra, and Safe editions. India pricing via GSAS.
View embOS RTOS →
emPower OS
Complete embedded operating system integrating RTOS, middleware, security, connectivity, and UI libraries into a single royalty-free platform. Available in India from GSAS.
View emPower OS →
emNet TCP/IP Stack
Dual IPv4/IPv6 TCP/IP stack with TLS 1.3 via emSSL, zero-copy API, and ~30 KB ROM footprint. Includes MQTT, HTTP server/client, FTP, SNMP, DHCP, and DNS. India pricing and local support from GSAS.
View emNet TCP/IP Stack →FAQ
Common questions about emMQTT
What is SEGGER emMQTT?
Is emMQTT royalty-free?
Which SEGGER middleware for MQTT telemetry on constrained devices?
Can I buy SEGGER emMQTT in India?
Does emMQTT support encrypted connections to cloud brokers?
Interested in emMQTT?
Get pricing, an evaluation unit, or a technical consultation from our application engineers.