Jump to content

Python Problem Wetterstation


RouvenE

Recommended Posts

Hi,ä

Nach langer Zeit habe ich eine neue SD mit Raspbian auf dem Raspberry aufgesetzt. Unter dem vorherigen Raspbian lief die Tinkerforge-Wetterstation problemlos.

 

Nun rufe ich das Standard-Python Script auf und erhalte folgende Meldung:

Traceback (most recent call last):

  File "/home/pi/tinkerforge/xively.py", line 14, in <module>

    from tinkerforge.ip_connection import IPConnection

ImportError: No module named tinkerforge.ip_connection

 

 

Angeschlossen ist das Wetterstations-Kit per USB am Raspberry Pi.

 

Was mache ich plötzlich falsch?

Link zu diesem Kommentar
Share on other sites

Ich bin nach der Tinkerforge Anleitung für den Raspi vorgegangen...

Kannst du kurz schreiben, wie ich das nachholen würde?

 

Bisher habe ich ausgeführt:

sudo apt-get install libusb-1.0-0 libudev0 pm-utils

wget http://download.tinkerforge.com/tools/brickd/linux/brickd_linux_latest_armhf.deb

sudo dpkg -i brickd_linux_latest_armhf.deb

 

sudo apt-get install python python-qt4 python-qt4-gl python-qwt5-qt4 python-opengl python-serial

wget http://download.tinkerforge.com/tools/brickv/linux/brickv_linux_latest.deb

sudo dpkg -i brickv_linux_latest.deb

Link zu diesem Kommentar
Share on other sites

Nein, das hatte ich zuvor bereits ausgeführt, der Fehler besteht immer noch.

 

Wobei, bei einem der Schritte blieb die Installation bei den man pages hängen. Führe ich den Befehl zur Installation erneut aus, so erscheint die Meldung, alles sei auf dem neuesten Stand...

 

Wie deinstalliert (oder repariert) man denn zwecks Neuinstallation?

 

 

Link zu diesem Kommentar
Share on other sites

Ok, mit

sudo apt-get install python python-qt4 python-qt4-gl python-qwt5-qt4 python-opengl python-serial

sind die bindings doch installiert?

 

Oder hilft

sudo apt-get --purge remove python python-qt4 python-qt4-gl python-qwt5-qt4 python-opengl python-serial

Und dann nochmals die Installation, falls dort etwas hängen blieb?

Link zu diesem Kommentar
Share on other sites

 

Nein, das hatte ich zuvor bereits ausgeführt, der Fehler besteht immer noch.

 

Das hattest du nicht! Du hast nur geschrieben "Geht nicht" ohne zu sagen was Du gemacht hast.

 

Ist der "dpkg" mit den Tinkerforge birckd und brickv ohne Fehler durchgelaufen?

 

Was passiert wenn du den brickv aufrufst? Der muss auch ohne Bindungs funktionieren. Die Bindungs sind nur fuer "eigene" Programme notwendig.

 

Sind denn nun die Bindings installiert? Tinkerforge Bindings findest du hier: http://www.tinkerforge.com/de/doc/Downloads.html

 

Der Loetkolben.

Link zu diesem Kommentar
Share on other sites

Doch, aber du machst es einem schwer, weil du nicht zusammenhaengende Informationen gibt's!

 

Wenn du am Pi keine Grafische Oberflaeche hast, dann nimm einen PC und installiere dort NUR den brickv und starte den dort. Verbinde dich dann mit dem Pi.

 

BTW: Arbeitet dich doch wenigstens ein wenig in das Thema ein.  ::)

 

Der Loetkolben

 

 

Link zu diesem Kommentar
Share on other sites

Ich hatte die Wetterstation doch am Pi dran und es lief prima. Nun habe ich ein anderes OS auf die SD-Karte aufgespielt und schwupps produziert das Kit diesen Fehler... Am Mac hatte ich die Station auch zuvor zwecks Firmwareupdates dran... Alles problemlos.

 

Unter dem neuen Raspbian habe ich die gleichen Schritte aus dem Wiki wiederholt, doch die obigen Fehler treten auf.

 

Das Einlesen in Tinkerforge hilft mir ja derzeit nicht beim Lösen der Fehler.

Link zu diesem Kommentar
Share on other sites

Ich habe den Mac mit brickv per LAN via Raspi verbunden.

 

Master Brick und Bricklets kann ich mit neuester Firmware sehen.

Sämtliche Bricklets geben Werte aus, das Display lässt sich auch testen.

 

Ich weiss nicht genau, wohin ich die Bindings auf dem RPi kopieren soll.

 

Da bei dem apt-get der RPi hängen blieb, dieser nach dem Neustart aber nach erneutem apt-get meldete, es sei alles auf aktuellem Stand, würde ich gerne python deinstallieren und nochmals sauber installieren. Wie am besten? Per apt-get remove --purge und anschliessendem install?

Link zu diesem Kommentar
Share on other sites

 

Prima, also funktioniert der brickD am Pi.

 

Hast du die Python Bindings auch installiert? Siehe hier: http://www.tinkerforge.com/de/doc/Software/API_Bindings_Python.html

 

Ansonsten runterladen und mit "easy_install tinkerforge.egg" installieren. (Wie bei Tinkerforge beschrieben)

 

Wenn "apt-get" keine Fehler mehr ausgibt wuerde ich es so lassen.

 

Der Loetkolben

 

 

 

Link zu diesem Kommentar
Share on other sites

So, auf den Befehl:

sudo easy_install -U distribute

erscheint zwischendurch ein Meldung:

Running distribute-0.7.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-mp8O4p/distribute-0.7.3/egg-dist-tmp-GMzfje

warning: install_lib: 'build/lib.linux-armv6l-2.7' does not exist -- no Python modules to install

 

Und, auf den Befehl sudo easy_install tinkerforge.egg tritt diese Meldung auf:

Traceback (most recent call last):

  File "/usr/local/bin/easy_install", line 9, in <module>

    load_entry_point('distribute', 'console_scripts', 'easy_install')()

  File "/usr/local/lib/python2.7/dist-packages/setuptools-5.0.2-py2.7.egg/pkg_resources.py", line 356, in load_entry_point

    return get_distribution(dist).load_entry_point(group, name)

  File "/usr/local/lib/python2.7/dist-packages/setuptools-5.0.2-py2.7.egg/pkg_resources.py", line 2438, in load_entry_point

    raise ImportError("Entry point %r not found" % ((group, name),))

ImportError: Entry point ('console_scripts', 'easy_install') not found

 

Linux macht es einem Anfänger nicht leicht, hereinzufinden.

Link zu diesem Kommentar
Share on other sites

 

Warum du das "easy_install -U distribute" gemacht hast verstehe ich nicht, aber egal. Da ich kein Pythonkenner bin schicke mal die Ausgabe von "dpkg -l | grep -i python".

 

Bitte benutze hier im Forum die "#" Codeeinfuegefunktion, sonst wird die Ausgabe unuebersichtlich.

 

Kann es sein, dass du 2 Python Versionen installiert hast?

 

 

Der Loetkolben.

Link zu diesem Kommentar
Share on other sites

ii  idle                                  2.7.3-4+deb7u1                          all          IDE for Python using Tkinter (default version)
ii  idle-python2.7                        2.7.3-6+deb7u2                          all          IDE for Python (v2.7) using Tkinter
ii  idle-python3.2                        3.2.3-7                                 all          IDE for Python (v3.2) using Tkinter
ii  idle3                                 3.2.3-6                                 all          IDE for Python using Tkinter (default version)
ii  libpython2.7                          2.7.3-6+deb7u2                          armhf        Shared Python runtime library (version 2.7)
ii  pypy-setuptools                       1.1.6-1                                 armhf        Easily download, build, install, upgrade, and uninstall Python packages
ii  pypy-upstream-doc                     2.2.1-5                                 all          developer Documentation for PyPy (an alternative Python interpreter)
ii  python                                2.7.3-4+deb7u1                          all          interactive high-level object-oriented language (default version)
ii  python-dbus                           1.1.1-1                                 armhf        simple interprocess messaging system (Python interface)
ii  python-dbus-dev                       1.1.1-1                                 all          main loop integration development files for python-dbus
ii  python-dev                            2.7.3-4+deb7u1                          all          header files and a static library for Python (default)
ii  python-gi                             3.2.2-2                                 armhf        Python 2.x bindings for gobject-introspection libraries
ii  python-minimal                        2.7.3-4+deb7u1                          all          minimal subset of the Python language (default version)
ii  python-numpy                          1:1.6.2-1.2                             armhf        Numerical Python adds a fast array facility to the Python language
ii  python-opengl                         3.0.1-1                                 all          Python bindings to OpenGL
ii  python-pifacecommon                   4.0.0-1                                 all          The PiFace common functions module.
ii  python-pifacedigitalio                3.0.4-1                                 all          The PiFace Digital I/O module.
ii  python-pip                            1.1-3                                   all          alternative Python package installer
ii  python-pkg-resources                  0.6.24-1                                all          Package Discovery and Resource Access using pkg_resources
ii  python-pygame                         1.9.1release+dfsg-8                     armhf        SDL bindings for games development in Python
ii  python-qt4                            4.9.3-4                                 armhf        Python bindings for Qt4
ii  python-qt4-gl                         4.9.3-4                                 armhf        Python bindings for Qt4's OpenGL module
ii  python-qwt5-qt4                       5.2.1~cvs20091107+dfsg-6+b1             armhf        Python version of the Qwt5 technical widget library
ii  python-rpi.gpio                       0.5.5-1                                 armhf        Python GPIO module for Raspberry Pi
ii  python-serial                         2.5-2.1                                 all          pyserial - module encapsulating access for the serial port
ii  python-setuptools                     0.6.24-1                                all          Python Distutils Enhancements (setuptools compatibility)
ii  python-sip                            4.13.3-2                                armhf        Python/C++ bindings generator runtime library
ii  python-support                        1.0.15                                  all          automated rebuilding support for Python modules
ii  python-tk                             2.7.3-1                                 armhf        Tkinter - Writing Tk applications with Python
ii  python2.6                             2.6.8-1.1                               armhf        Interactive high-level object-oriented language (version 2.6)
ii  python2.6-minimal                     2.6.8-1.1                               armhf        Minimal subset of the Python language (version 2.6)
ii  python2.7                             2.7.3-6+deb7u2                          armhf        Interactive high-level object-oriented language (version 2.7)
ii  python2.7-dev                         2.7.3-6+deb7u2                          armhf        Header files and a static library for Python (v2.7)
ii  python2.7-minimal                     2.7.3-6+deb7u2                          armhf        Minimal subset of the Python language (version 2.7)
ii  python3                               3.2.3-6                                 all          interactive high-level object-oriented language (default python3 version)
ii  python3-minimal                       3.2.3-6                                 all          minimal subset of the Python language (default python3 version)
ii  python3-numpy                         1:1.6.2-1.2                             armhf        Numerical Python adds a fast array facility to the Python language
ii  python3-pifacecommon                  4.0.0-1                                 all          The PiFace common functions module.
ii  python3-pifacedigital-scratch-handler 2.0.5-1                                 all          The PiFace Digital Scratch Handler.
ii  python3-pifacedigitalio               3.0.4-1                                 all          The PiFace Digital I/O module.
ii  python3-rpi.gpio                      0.5.5-1                                 armhf        Python 3 GPIO module for Raspberry Pi
ii  python3-tk                            3.2.3-1                                 armhf        Tkinter - Writing Tk applications with Python 3.x
ii  python3.2                             3.2.3-7                                 armhf        Interactive high-level object-oriented language (version 3.2)
ii  python3.2-minimal                     3.2.3-7                                 armhf        Minimal subset of the Python language (version 3.2)

 

Scheinen Python 2 und 3 installiert zu sein... Darf nur Python 2 installiert sein? Was mache ich nun am besten?

Link zu diesem Kommentar
Share on other sites

 

Danke fuer die Infos.

 

An dieser Stelle muss ich passen, da ich nicht weiss, ob 2 Python Versionen zu Problem fuehren. Vielleicht fehlt aber auch nur ein Pythonmodul?

 

Da ich aus den Pythonfehlermeldungen nicht schliessen kann, dass etwas fehlt, wuerde _ich_ jetzt _alle_ Python Pakete deinstallieren und dann nur das notwendige, wie in der Tinkerforgedoku angegeben, installieren.  :-[

 

Das muesste "apt-get purge PAKETNAME" sein. Da werden sicherlich noch andere Pakete mit deinstalliert werden. Sicher keine leichte Aufgabe.

 

Vielleicht kann ein Pythonkenner hier helfen.

 

Der Loetkolben

 

Link zu diesem Kommentar
Share on other sites

Loetkolben, mehrere Python Versionen gleichzeitig installiert zu haben ist normal und kein Problem.

 

RouvenE, irgendwie mach bei dir easy_install Probleme, warum ist mir nicht ganz klar.

 

Lass mich mal zusammenfassen: brickd und brickv sind installiert und funktionieren soweit. Aber die Python Bindings fehlen.

 

Probier mal Folgendes aus:

 

[*]Python Bindings herunterladen und entpacken.

[*]Aus dem source Verzeichnis das tinkerforge Verzeichnis neben das Python Script kopieren, das du verwenden willst.

[*]Dann sollte Python die Bindings finden können.

Damit hast du die Bindings jetzt noch nicht global im System installiert, aber das sollte so erstmal als Test funktionieren.

Link zu diesem Kommentar
Share on other sites

So, auf brickd --check-config folgt:

No warnings or errors in config file '/etc/brickd.conf'

Using the following config values:
  listen.address        = 0.0.0.0
  listen.plain_port     = 4223
  listen.websocket_port = 0
  listen.dual_stack     = off
  authentication.secret = 
  log_level.event       = info
  log_level.usb         = info
  log_level.network     = info
  log_level.hotplug     = info
  log_level.hardware    = info
  log_level.websocket   = info
  log_level.other       = info

 

Der Aufruf von sudo brickv auf dem RPi bewirkt:

main.py: cannot connect to X server

 

Die Bindings liegen bereits im Verzeichnis des Scripts, andere Dateien sind dort nicht zu finden.

 

Auf "sudo easy_install tinkerforge.egg" folgt weiterhin...

Traceback (most recent call last):
  File "/usr/local/bin/easy_install", line 9, in <module>
    load_entry_point('distribute', 'console_scripts', 'easy_install')()
  File "/usr/local/lib/python2.7/dist-packages/setuptools-5.0.2-py2.7.egg/pkg_resources.py", line 356, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/local/lib/python2.7/dist-packages/setuptools-5.0.2-py2.7.egg/pkg_resources.py", line 2438, in load_entry_point
    raise ImportError("Entry point %r not found" % ((group, name),))
ImportError: Entry point ('console_scripts', 'easy_install') not found

 

Wo nur liegt das Problem ?

Per Mac kann ich wunderbar das am RPi angeschlossene MasterBrick und die Bricklets steuern...

 

Update: Ich habe es gewagt und eingegeben:

sudo apt-get remove python python-qt4 python-qt4-gl python-qwt5-qt4 python-opengl python-serial, anschließend selbiges beu installiert...

 

Nun erscheint folgender Fehler:

Traceback (most recent call last):
  File "/usr/local/bin/easy_install", line 9, in <module>
    load_entry_point('distribute', 'console_scripts', 'easy_install')()
  File "/usr/local/lib/python2.7/dist-packages/setuptools-5.0.2-py2.7.egg/pkg_resources.py", line 356, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/local/lib/python2.7/dist-packages/setuptools-5.0.2-py2.7.egg/pkg_resources.py", line 2438, in load_entry_point
    raise ImportError("Entry point %r not found" % ((group, name),))
ImportError: Entry point ('console_scripts', 'easy_install') not found

 

Beim Aufruf des Python-Scripts dann:

Traceback (most recent call last):

  File "xively.py", line 15, in <module>

    from xip_connection import Error

ImportError: No module named xip_connection

 

Das ist alles wirklich sehr übel... für mich nicht durchschaubar. Wäre super, wenn jemand helfen kann.

Link zu diesem Kommentar
Share on other sites

 

Mach doch  bitte mal das was photron vorschlaegt.  ;)

 

BrickD ist ok.

BrickV am MAC laeuft auch und kann auch die Bricks zugreifen. OK.

BrickV am Raspverry gibt auch eine nachvollziehbare Fehlermeldung aus, da du anscheinend keine grafische Oberflaeche am Raspberry hast. Also auch ok.

 

Also sowohl brickD als auch brickV so lassen wie sie sind.  :)

 

Mache doch mal das was photron vorschlaegt und nutze die Bindings ohne Systemweise Installation. Also runterlagen (bereits erledigt), dann an der richtigen Stelle auspacken (Siehe photron Punkt 2) und dann dein Script starten.

 

Der Loetkolben

Link zu diesem Kommentar
Share on other sites

Join the conversation

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

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...