summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Mork <bjorn@mork.no>2019-05-11 14:24:55 +0200
committerBjørn Mork <bjorn@mork.no>2019-05-11 14:26:39 +0200
commit754256c8a162c3a1af7c2499b7b479f507e983f1 (patch)
treec1f9ac6ca6419719979f414b4e2131427ebd1141
parent21f495e9d185b4f55a7026c90d2fa30ad684bc98 (diff)
WiP: sort of working code
bjorn@miraculix:~/privat/prog/git/defogger$ ./dcs8000lh-configure.py B0:C5:54:4C:CC:73 getting service dumping [<bluepy.btle.Characteristic object at 0x7fd51a965eb8>, <bluepy.btle.Characteristic object at 0x7fd51a965b00>, <bluepy.btle.Characteristic object at 0x7fd51a965a58>, <bluepy.btle.Characteristic object at 0x7fd51a965908>, <bluepy.btle.Characteristic object at 0x7fd51a9657b8>, <bluepy.btle.Characteristic object at 0x7fd51a965a90>, <bluepy.btle.Characteristic object at 0x7fd51a965e80>, <bluepy.btle.Characteristic object at 0x7fd51a965f60>, <bluepy.btle.Characteristic object at 0x7fd51a8ef048>, <bluepy.btle.Characteristic object at 0x7fd51a8ef0f0>, <bluepy.btle.Characteristic object at 0x7fd51a8ef198>, <bluepy.btle.Characteristic object at 0x7fd51a8ef240>, <bluepy.btle.Characteristic object at 0x7fd51a8ef2e8>, <bluepy.btle.Characteristic object at 0x7fd51a8ef390>] 0000a000-0000-1000-8000-00805f9b34fb - Properties=READ NOTIFY Handle=0x0013 0000a001-0000-1000-8000-00805f9b34fb - Properties=READ WRITE Handle=0x0016 0000a100-0000-1000-8000-00805f9b34fb - Properties=READ Handle=0x0018 0000a101-0000-1000-8000-00805f9b34fb - Properties=READ WRITE Handle=0x001a 0000a102-0000-1000-8000-00805f9b34fb - Properties=WRITE Handle=0x001c 0000a103-0000-1000-8000-00805f9b34fb - Properties=READ Handle=0x001e 0000a104-0000-1000-8000-00805f9b34fb - Properties=READ Handle=0x0020 0000a200-0000-1000-8000-00805f9b34fb - Properties=READ WRITE Handle=0x0022 0000a201-0000-1000-8000-00805f9b34fb - Properties=WRITE Handle=0x0024 0000a300-0000-1000-8000-00805f9b34fb - Properties=READ WRITE Handle=0x0026 0000a301-0000-1000-8000-00805f9b34fb - Properties=READ Handle=0x0028 0000a302-0000-1000-8000-00805f9b34fb - Properties=WRITE Handle=0x002a 0000a303-0000-1000-8000-00805f9b34fb - Properties=WRITE Handle=0x002c 0000a304-0000-1000-8000-00805f9b34fb - Properties=READ Handle=0x002e read M=1;C=xyzx8i0j33xeymur Done. Signed-off-by: Bjørn Mork <bjorn@mork.no>
-rwxr-xr-xdcs8000lh-configure.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/dcs8000lh-configure.py b/dcs8000lh-configure.py
new file mode 100755
index 0000000..35fa476
--- /dev/null
+++ b/dcs8000lh-configure.py
@@ -0,0 +1,40 @@
+#!/usr/bin/python3
+
+import sys
+from bluepy.btle import Peripheral
+
+class BleCam(object):
+ def __init__(self, address):
+ try:
+ self.periph = Peripheral(address)
+ except BTLEDisconnectError:
+ print("failed to connect to <addr>".format(address))
+ return
+ self.ipcamservice()
+ self.dumpchars()
+ self.experiment()
+
+ def ipcamservice(self):
+ try:
+ print("getting service")
+ self.service = self.periph.getServiceByUUID(0xD001)
+ except BTLEEException:
+ print("no such service")
+ return
+
+ def dumpchars(self):
+ handles = self.service.getCharacteristics()
+ print("dumping %s" % handles)
+ for h in handles:
+ print("%s - Properties=%s Handle=%#06x " % (h.uuid, h.propertiesToString(), h.getHandle()))
+
+ def experiment(self):
+ print("read %s" % self.service.getCharacteristics(0xa001)[0].read().decode())
+
+if __name__ == '__main__':
+ if len(sys.argv) < 2:
+ print("Usage: {} <addr>".format(sys.argv[0]))
+ sys.exit(1)
+
+ BleCam(sys.argv[1])
+print("Done.")