Jump to content

Python-script auf Red-Brick laden


fedex

Recommended Posts

ich versuche mit einem Python skript etwas an einen mqtt broker zu publishen.

#!/usr/bin/env python

import time

 

import paho.mqtt.client as mqtt

 

 

def on_connect(client, userdata, flags, rc):

    print("Connected with result code " + str(rc))

 

client = mqtt.Client()

client.on_connect = on_connect

 

client.connect("vmiot01srv", 1883, 60)

 

client.loop_start()

 

while True:

    time.sleep(2)

    client.publish("test/sensor", "test123")

 

 

 

Die Fehlermedung im log ist die selbe:

-------------------------------------------------------------------------------

Traceback (most recent call last):

  File "pub-single.py", line 30, in <module>

    import paho.mqtt.publish as publish

ImportError: No module named paho.mqtt.publish

Link to comment
Share on other sites

ImportError: No module named paho.mqtt.client

 

und

 

ImportError: No module named paho.mqtt.publish

 

sind zwei verschiedene Fehler.

 

Irgendwas stimmt da mit deiner paho-mqtt Installation nicht. Bist du sicher, dass du das richtig installiert hast?

 

Ich habe das hier gerade mal getestet und es funktioniert bei mir.

 

Hast du vielleicht

 

pip install paho-mqtt

 

ohne sudo ausgeführt?

Link to comment
Share on other sites

Okay ich habe folgendes getestet:

 

- frisches RED Brick 1.7er Image

 

- über WLAN USB Stick eine Internetverbindung hergestellt

 

- im Brick Viewer den Consolen Tab aufgerufen und verbunden, alles weitere passiert auf dem RED Brick

 

- in python scheitert "import paho.mqtt.client" wie erwartet, da paho-mqtt noch nicht installiert ist

 

- paho-mqtt mittels "sudo pip install paho-mqtt" installiert, ohne sudo lädt pip das Package zwar runter kann es dann aber wegen fehlender Rechte nicht installieren

 

- jetzt funktioniert "import paho.mqtt.client" in python

 

Sprich es funktioniert wie erwartet.

 

Ich verstehe nicht, wie pip das bei dir ohne root Rechte installiert haben soll.

 

Welchen Fehler bekommst du denn, wenn du "sudo pip install paho-mqtt" ausführst?

Link to comment
Share on other sites

sorry für mein Unwissen ;)

 

ich hatte das paho-mqtt nicht auf dem Linux system von meinem Red Brick sondern auf meinem windows Rechner installiert...

 

das Problem das die Instalaltion auf dem Red Brick nicht funktioniert liegt jetzt daran das ich noch keinen Zugriffsrechte auf das Internet habe...

 

gäbe es denn eine Möglichkeit den paho-mqtt-proxy ohne Internet auf den Red Brick zu laden?

Link to comment
Share on other sites

Ahhh!

 

Okay, du kannst hier am Ende der Seite die paho-mqtt-1.1.tar.gz Datei herunterladen:

 

https://pypi.python.org/pypi/paho-mqtt

 

Diese muss du dann auf's RED Brick übertragen. Am einfachsten lädst du sie mit deinem Programm mit hoch.

 

Dann auf dem RED Brick (im Brick Viewer RED Brick Console Tab) in das bin Verzeichnis deines Programms wechseln:

 

cd programs/<id>/bin

 

<id> ist der Identifier deines Programms der in Brick Viewer angezeigt wird.

 

Dort die paho-mqtt-1.1.tar.gz Datei eintpacken

 

tar -xvf paho-mqtt-1.1.tar.gz

 

Ins entpackte Verzeichnis wechseln:

 

cd paho-mqtt-1.1

 

und per setup.py installieren:

 

sudo python setup.py install

Link to comment
Share on other sites

  • 2 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...