My devices don't receive C2D messages anymore from IoT Hub

Andrea Previtali 51 Reputation points
2023-11-09T14:26:41.5133333+00:00

Hello everyone,

I've been going crazy for a few days with my IoT Hub and I can't figure out why.

On my devices, I have connected about 60-70 of them, the C2D messaging system doesn't work anymore.

My "system" is very simple, it is based on an embedded Linux distribution and I have a script written in C that is invoked every 10'' to send a teletrics message to IoT Hub, so far so good, everything works correctly and never had any problems.

I use mosquitto and MQTT protocol.

Every x seconds, depending on the device, a Subscribe request is also made via another script written in C.

The connection is successfully made to IoT Hub, but the device no downloads the message, it is as if it did not receive it.

My scripts, both the one for sending telemetry and the one for receiving messages are based on the C codes downloaded from here:

https://learn.microsoft.com/it-it/azure/iot-hub/iot-hub-mqtt-support

My devices authenticate with X.509 certificates and everything has always worked properly, I have been using this system for almost a year.

In the past few days I started having problems on sending messages from cloud to device: from Azure interface the message shows correctly sent and queued, but to the device it is as if it never arrives.

I thought that for some reason the post script might conflict with the subscribe script but I noticed that the problem persists even when running only the subscribe script.

To rule out the possibility that the problem could be associated with the platform, I also used the C program in the Linux Ubuntu environment. The problem persists.

Has something changed in Azure IoT Hub that I missed?

Has anyone experienced similar problems?

I am very concerned because I need to restore this "communication" as soon as possible but I don't know how to do it.

Thanks to everybody.

Andrea Previtali

Azure IoT Hub
Azure IoT Hub
An Azure service that enables bidirectional communication between internet of things (IoT) devices and applications.
1,010 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Sander van de Velde 25,266 Reputation points MVP
    2023-11-09T17:48:28.9533333+00:00

    Hello @Andrea Previtali ,

    welcome to this moderated Azure community forum.

    I expect you are not reusing device registrations, please double check.

    There has been one mayor change regarding the IoT Hub.

    Microsoft is migrating to the new Digicert TLS certificate. This is announced a few years ago an postponed several times to give users more time to migrate.

    Are your device capable to working with this Digicert certificate?

    If this is ok, I recommend submitting a support ticket so the Azure helpdesk can check your backend.


    This answer is written by myself, not by some AI. 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.