Hallo zusammen,
für ein Projekt benutze ich Bluetooth um festzustellen, ob bestimmte Geräte im Haus sind oder nicht.
Zunächst hatte ich das per l2ping gemacht, dann mit einem einfachen kleinen Script, weil ich dachte das Problem liegt vielleicht an l2ping selber.
#!/usr/bin/python2
import time, bluetooth, sys
btaddr= sys.argv[1]
deviceInRange=False
#while True:
btsocket=bluetooth.BluetoothSocket(bluetooth.L2CAP)
#btsocket=bluetooth.BluetoothSocket(bluetooth.RFCOMM)
try:
btsocket.connect((btaddr,3))
if btsocket.send("hey"):
deviceInRange=True
btsocket.close()
print "gefunden"
except bluetooth.btcommon.BluetoothError as e:
deviceInRange=False
#print e
btsocket.close()
Alles anzeigen
Nun ist es so, das Bluetooth nach unbestimmter Zeit (manchmal ein paar Min, manchmal 1-2 Tage) nicht mehr richtig funktioniert. Das heisst, ich kann weder per l2ping noch mit dem Script die Geräte ansprechen. Es kommt die Meldung
Can't connect: Operation now in progress
bzw beim Aufruf über das python Script
(114, 'Operation already in progress')
zurück. Wenn ich Bluetooth neu startete hilft das nix, ich muss komplett neu booten.
bt-monitor kann ich aber komischer weise noch starten ohne das es einen Fehler ausgibt.
Ich weiss nicht so richtig wo ich nun ansetzten soll, bzw woran das liegen könnte. Vielleicht habt ihr ne Idee oder nen Tipp.
Auf dem Pi läuft Raspbian (Debian Wheezy)
Linux automatic 3.18.7-v7+ #755 SMP PREEMPT Thu Feb 12 17:20:48 GMT 2015 armv7l GNU/Linux
Grüße
Manu