2017-06-26 4 views
-3

Je suis en train de courir le moyeu Azure Mircosoft IdO mqtt exemple (iothub_client_sample_amqp ou simliar) du SDK C (https://github.com/Azure/azure-iot-sdk-c) sur yocto Linux. Sur mon ordinateur hôte Ubuntu, tout se compile et fonctionne correctement, l'application se connecte au serveur Azur et envoie des messages. Lorsque je compile pour Yocto, j'obtiens des erreurs après avoir compilé le SDK entier avec tous les exemples, mais l'exemple mqtt est déjà compilé, donc je suppose que c'est correct. En outre, je pourrais le compiler en utilisant la couche meta-iot-cloud d'Intel et en ne prenant l'exemple d'application lui-même dans ma propre couche sans erreurs mais avec le même problème que ci-dessous.simple Azure exemple d'application iothub MQTT cesse de fonctionner sans erreurs

Maintenant, le problème réel: Quand je lance l'application sur le système Yocto, il établit une connexion tcp au serveur d'azur, mais « cesse de fonctionner », jusqu'à ce que le serveur d'azur envoie la nageoire tcp ack, qui l'application accuslegdes. Sur le vidage TCP je peux voir que les paquets ont été abandonnés par le noyau . Le problème tcp semble se produire pendant que le serveur azure transmet le certificat si j'interprète correctement la sortie tcpdump. Mais pourrait être juste une coïncidence. J'ai vérifié les bibliothèques openssl demandées par l'application et elles sont identiques sur l'hôte Ubuntu et sur le système embarqué Yocto . Les autres bibliothèques demandées sont également les mêmes (readelf -d).

En outre, netstat répertorie la connexion comme "CLOSE_WAIT" sur le système Yocto juste après le démarrage de l'application. Sur la machine Ubuntu, la connexion est listée comme "ESTABLISHED" après le démarrage, jusqu'à ce que je tue l'application.

Le réseau est également le même que sur la machine hôte. La distribution Yocto est Digi Embedded Yocto.

Je serais très heureux pour des idées sur ce qui a mal tourné ici.

+0

Votre appareil figure-t-il dans ce [Catalogue certifié] (https://catalog.azureiotsuite.com/)? –

+0

Oui, c'est dans la liste: ConnectCore for iMX6UL Starter Kit – StrawHat

Répondre

0

Pourriez-vous s'il vous plaît déposer un problème sur le dépôt GitHub, qui nous aiderait à vous aider :-).