What azure service use for iot devices?

Roy 60 Reputation points
2025-05-26T17:18:52.9233333+00:00

I want to create IoT devices that communicate with mobile applications and a web server. All communication will be handled as follows: IoT devices will use MQTT to communicate with the web server, and mobile applications will use HTTP client requests to interact with the web server. Additionally, the IoT devices will be automatically provisioned by downloading the necessary certificates for secure MQTT communication. Which service should I use? IoT Hub? Event Grid? Another one? Thanks in advance!

Azure Internet of Things
0 comments No comments
{count} votes

Accepted answer
  1. Sander van de Velde | MVP 36,761 Reputation points MVP Volunteer Moderator
    2025-05-26T18:01:49.7933333+00:00

    Hello @Roy,

    welcome to this moderated Azure community forum.

    You basically want to have explained how a complete IoT platform architecture would look like.

    If you are able to use the Azure IoT Hub as cloud gateway for the devices, you only have to add a website with SignalR (for live two-way communication between app browser frontend and server backend). just forward device-to-cloud telemetry messages to to the backend (so these are routed to the right user via SignalR hubs) and forward cloud-to-device commands to the devices via the IoT Hub.

    If you are not able to use the Azure IoT Hub, the Eventgrid Namespace MQTT broker is a nice alternative but then you need to connect the broker to the webserver backend, probably in a stateful way.

    A way to do this is making use of a container instance as described in this blog post.

    Other Azure cloud gateways solutions are not really designed for IoT devices so these lack ability to register and manage devices, each having its own credentials.

    The way you describe provisioning seems a challenge: you need already a secure channel for each device before it can get a certificate to secure the channel... Regarding automatic provisioning, only the IoT Hub offers a provisioning scenario using the Device Provisioning service. For other services you need to 'touch' each device so you can provide it its own credentials.


    If the response helped, do "Accept Answer". If it doesn't work, please let us know the progress. All community members with similar issues will benefit by doing so. Your contribution is highly appreciated.

    0 comments No comments

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.