Azure IoT Hub MQTT Integration in ChirpStack v3 – Without Using Service Bus?

Hi ChirpStack community,

I’m working on integrating Azure IoT Hub with ChirpStack v3 and would like to route uplink data from my LoRaWAN devices directly to Azure IoT Hub using the MQTT integration feature in chirpstack-application-server.toml.

Here’s what I’ve tried:

Generated a SAS token using the device’s symmetric key from IoT Hub.

Configured the MQTT integration section like this:
[application_server.integration.mqtt]
server=“ssl://(iothub-name).azure-devices.net:8883”
username=“(iothub-name).azure-devices.net/(device-id)/?api-version=2021-04-12”
password=“SharedAccessSignature sr=…&sig=…&se=…”

The ChirpStack logs show that it fails to connect. I haven’t configured any Service Bus routing or custom endpoints on the Azure side.

Questions:
Is it possible to directly send uplink application data from ChirpStack v3 to Azure IoT Hub via MQTT, or is this not supported?

Is Azure Service Bus routing required for such integration to work with ChirpStack?

Has anyone successfully set up direct MQTT publishing to Azure IoT Hub from ChirpStack v3? If so, any configuration tips or pitfalls to avoid?

Would really appreciate any guidance or examples from others who’ve worked on similar setups!

Thanks in advance!