Neu: Die KI-Firewall überwacht die gesamte Plattform und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

Tutorial nennt broker = 192.168.x.x – welche Adresse trage ich für Hermetry ein?

Tutorial nennt broker = 192.168.x.x – welche Adresse trage ich für Hermetry ein?

Gelöst 4 3

Von English mit KI übersetzt ·

Gründer eines kleinen Logistik-Startups, ich bin KEIN Ingenieur und versuche, vor einem Investorentermin einen Proof of Concept fertigzustellen. Raspberry Pi 4 mit einem Temperaturfühler für einen Kühlanhänger.Ich habe einem Blogbeitrag mit paho-mqtt gefolgt. Darin steht broker = "192.168.1.50" und port = 1883. Wie lautet Hermetrys MQTT-IP-Adresse? Ich habe ein Gerät angelegt und das Zugangstoken kopiert, aber nirgends eine IP gefunden. Ich habe die IP ausprobiert, die beim Ping auf den Hostnamen auf der Geräteseite zurückkam, und habe on_connect rc=5 erhalten. Auch Port 1883 mit dem Hostnamen probiert, ebenfalls rc 5.

Still waiting for the gateway to reconnect.
♥ 0

Von English mit KI übersetzt ·

Was genau zeigt dir die Karte „Verbindungsdetails“ auf dem Gerät an? Host und Port?

♥ 0

Von English mit KI übersetzt ·

Ein Hostname und 8883. Ist also die 1883 im Blog dafür falsch?

Still waiting for the gateway to reconnect.
♥ 2

Von English mit KI übersetzt ·

Ja. Dieser Blog ist für einen Broker in Ihrem eigenen Heimnetz gedacht, deshalb steht dort eine 192.168-Adresse. Für Hermetry sollten Sie überhaupt keine IP verwenden: Verbinden Sie sich über den Host-Namen aus der Karte Connection details, TLS auf 8883. TLS benötigt den Namen (SNI), deshalb schlägt die angepingte IP fehl, und einfaches 1883 wird abgelehnt, sofern das Profil kein unverschlüsseltes MQTT erlaubt, was standardmäßig nicht der Fall ist. rc=5 bedeutet „not authorised“, der eigentliche Grund landet im Tab Log des Geräts, das lohnt einen Blick.

import ssl, json, paho.mqtt.client as mqtt

HOST = "<host from Connection details>"
TOKEN = "<access token>"

c = mqtt.Client(client_id="reefer-01")
c.username_pw_set(TOKEN)                  # token as username, no password
c.tls_set(cert_reqs=ssl.CERT_REQUIRED)    # normal public CA bundle
c.connect(HOST, 8883, keepalive=60)
c.loop_start()
c.publish("v1/telemetry", json.dumps({"temperature": -18.2}), qos=1)

Mit paho 2.x müssen Sie stattdessen mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id="reefer-01") verwenden.

Timestamps in UTC or it didn't happen.
Akzeptierte Lösung♥ 2

Von English mit KI übersetzt ·

Verbunden, -18.2 steht auf der Geräteseite. Im Log-Tab stand auch, warum der Versuch mit 1883 fehlgeschlagen ist (einfacher Port nicht erlaubt), ich wusste nur nicht, dass es das gibt. Danke, die Demo ist am Donnerstag.

Still waiting for the gateway to reconnect.
♥ 1
Ansicht von 5 Beiträgen – 1 bis 5 (von insgesamt 5)
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.

Mitdiskutieren

Melde dich an, um Fragen zu stellen und zu beantworten, hilfreiche Beiträge mit „Gefällt mir“ zu markieren und die Antwort zu kennzeichnen, die dein Problem gelöst hat. Jeder Beitrag bringt Punkte und Stufen.

Teilen