2016-10-03 20 views
0

Ich bin auf der Suche nach einem Weg für meine ESP8266 Arduino-Gerät, um die IBM Watson IoT-Plattform abonnieren Geräte-Management-Nachrichten (Neustart, Update usw.) zu erhalten. Ich habe dazu Beispiele gefunden, die die PubSubClient-Bibliothek (https://developer.ibm.com/recipes/tutorials/run-an-esp8266arduino-as-a-iot-foundation-managed-device/) verwenden, jedoch habe ich noch kein funktionierendes Beispiel für PubSubClient mit TLS1.2 gefunden (eine Voraussetzung für dieses Projekt). Daher verwende ich derzeit den Adafruit_MQTT_Client, der sich mit TLS1.2 verbinden und mit Watson veröffentlichen kann, aber ich hatte keinen Erfolg, die Plattform zu abonnieren. Wenn jemand eine Möglichkeit vorschlagen könnte, die IBM Watson IoT-Plattform mithilfe von TLS1.2 zu verbinden, zu veröffentlichen und zu abonnieren, wäre dies sehr zu empfehlen!IBM Watson Subscribe

+0

Wenn Sie erfolgreich verbinden und veröffentlichen auf IoT Platform mit TLS1.2, dann IMO das Problem ist nicht die Verbindung von Ihrem ESP8266 zur IoT-Plattform, dh das Problem ist nicht TLS, weil die gleiche TCP-Verbindung verwendet wird sowohl das Veröffentlichen von Gerätedaten als auch das Abonnieren von Verwaltungsbefehlen für das Gerät. Möglicherweise ist Ihr Abonnement für die Befehlsthemen für Ihr Gerät nicht korrekt oder Sie haben IoTP möglicherweise nicht angegeben, dass Ihr Gerät Befehle akzeptiert. – barny

+0

Die Dokumente für IoTP sind in bluemix hier verfügbar: https://new-console.ng.bluemix.net/docs/services/IoT/index.html siehe unten Geräte entwickeln-> Device Management Protocol und Device Management Requests. Kann mit den von Ihnen angegebenen Informationen nicht spezifischer sein: "Ich hatte keinen Erfolg". – barny

+0

Vielen Dank für Ihre Antwort. Nach dem Update auf esp8266 2.3.0 mit dem boards manager konnte ich die PubSubClient-Bibliothek mit TLS 1.2 zum Verbinden, Veröffentlichen und Abonnieren von Watson IoT erfolgreich abrufen. Ich bin jetzt in der Lage, die Anfragen, die ich vorher nicht mit dem Adafruit_MQTT_Client hatte, erfolgreich zu empfangen. –

Antwort

0

Der Arduino ESP8266 2.3.0 Kern bietet TLS v1.2 Unterstützung. Aktualisieren Sie einfach mit dem Boards-Manager in der Arduino IDE auf diesen Core.

Verwandte Themen