Jump to content
Sign in to follow this  
Malik

ip_connection fail

Recommended Posts

Ich bin jetzt mit meinem Latein am Ende...

 

Ich will auf meinem RasPi Zero folgendes zum Laufen bringen (Brick mit VoltageCurrentBricklet hängt am RasPi, eingeloggt über ssh vom PC):

#!/usr/bin/env python
# -*- coding: utf-8 -*-

HOST = "localhost"
PORT = 4223
UID = "dcs" # Change XYZ to the UID of your Voltage/Current Bricklet 2.0

from tinkerforge.ip_connection import IPConnection
from tinkerforge.bricklet_voltage_current import BrickletVoltageCurrent

if __name__ == "__main__":
    ipcon = IPConnection() # Create IP connection
    vc = BrickletVoltageCurrent(UID, ipcon) # Create device object

    ipcon.connect(HOST, PORT) # Connect to brickd
    # Don't use device before ipcon is connected

    # Get current voltage
    voltage = vc.get_voltage()
    print("Voltage: " + str(voltage/1000.0) + " V")

    # Get current current
    current = vc.get_current()
    print("Current: " + str(current/1000.0) + " A")

    input("Press key to exit\n") # Use input() in Python 3
    ipcon.disconnect()

 

Obwohl die Python-Bindings installiert sind (mit pip3) und der BrickD läuft, kommt immer die Fehlermeldung:

 

pi@raspberrypi:~ $ python3 example_voltagecurrent.py

Traceback (most recent call last):

  File "example_voltagecurrent.py", line 19, in <module>

    voltage = vc.get_voltage()

  File "/home/pi/.local/lib/python3.7/site-packages/tinkerforge/bricklet_voltage_current.py", line 140, in get_voltage

    return self.ipcon.send_request(self, BrickletVoltageCurrent.FUNCTION_GET_VOLTAGE, (), '', 'i')

  File "/home/pi/.local/lib/python3.7/site-packages/tinkerforge/ip_connection.py", line 1195, in send_request

    raise Error(Error.TIMEOUT, msg, suppress_context=True)

tinkerforge.ip_connection.Error: Did not receive response for function 2 in time (-1)

 

Komischerweise funktioniert das Script, wenn ich den Brick an meinen Windows-PC anschließe.

Share this post


Link to post
Share on other sites

Leuchten die LEDs des Bricks, wenn du den Brick an das Raspberry Pi abschließt?

 

Findet brickd den Brick am Raspberry Pi laut /var/log/brickd.log?

 

Ändert sich die Ausgabe von "lsusb" auf dem Raspberry Pi zwischen der Brick ist an USB angeschlossen und der Brick ist nicht an USB angeschlossen?

 

Was sagt "dmesg -w" auf dem Raspberry Pi wenn du den Brick an USB an- und absteckst? Da sollen beim An- und Abstecken Meldungen über das An- und Abstecken einen USB Devices kommen. Alternativ kommen da Fehlermeldungen zu USB.

Share this post


Link to post
Share on other sites

So, einiges ausprobiert, leider ohne anderes Ergebnis.

Ich hatte gestern übrigens Raspbian Lite neu installiert, update/upgrade durchgeführt, dann pip3, die API und BrickD installiert.

 

Leuchten die LEDs des Bricks, wenn du den Brick an das Raspberry Pi abschließt?

Ja

Findet brickd den Brick am Raspberry Pi laut /var/log/brickd.log?

Nein, hier die beiden Zeilen von heute:

2019-08-20 16:51:53.090087 <I> <main_linux.c:334> Brick Daemon 2.4.0 started (pid: 258, daemonized: 1)

2019-08-20 17:02:31.204360 <I> <main_linux.c:334> Brick Daemon 2.4.0 started (pid: 238, daemonized: 1)

 

Ändert sich die Ausgabe von "lsusb" auf dem Raspberry Pi zwischen der Brick ist an USB angeschlossen und der Brick ist nicht an USB angeschlossen?

Nein, es bleibt so wie unten

pi@raspberrypi:~ $ lsusb

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 

Was sagt "dmesg -w" auf dem Raspberry Pi wenn du den Brick an USB an- und absteckst? Da sollen beim An- und Abstecken Meldungen über das An- und Abstecken einen USB Devices kommen. Alternativ kommen da Fehlermeldungen zu USB.

Ab- und Anstecken ist keine gute Idee. Beim Anstecken startet der RasPi neu. Beim Abstecken kommt keine Meldung

Share this post


Link to post
Share on other sites

Ich denke das hat nichts mit Brick Daemon oder Raspbian zu tun.

 

Der Brick tauch als USB Device nicht auf, daher listet lsusb ihn nicht auf. Dadurch kann Brick Daemon ihn dann auch gar nicht finden. Daher auch keine Meldungen im brickd.log.

 

Wenn beim Anstecken des Bricks an USB das Raspberry Pi neustartet, dann würde ich auf eine zu schwache Stromversorgung des Raspberry Pis tippen. Die zusätzliche Stromaufnahmen des Bricks lässt die Spannungsversorgung einbrechen.

 

Alternative hat das Mini-USB-zu-Micro-USB-Kabel zwischen Brick und Raspberry Pi Zero eine Macke. Oder wie verbindest du die beiden?

 

Ich bekomme hier gerade mein Raspberry Pi Zero nicht ins WLAN, daher kann ich das gerade nicht testen.

Share this post


Link to post
Share on other sites

Kaum zu glauben, aber es ist das Kabel...

 

Habe jetzt ein Mini-USB zu USB-A Kabel mit einem Adapter (Shim) USB-A zu Micro-USB - und es funktioniert.

 

Danke für die Hilfe!

Share this post


Link to post
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.

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.

Sign in to follow this  

×
×
  • Create New...