Divoom Aurabox + Timebox + TimeboxEvo [Update, kommunizieren funktioniert]

Begonnen von schwatter, 25 Dezember 2017, 23:37:43

Vorheriges Thema - Nächstes Thema

schwatter


mumpitzstuff

Bin gespannt ob da dann wieder alles anders ist oder du die selben Skripte verwenden kannst.

schwatter

Versuche gerade eine Plainmessage zu senden.

Das sende ich.

require "/opt/fhem/divoom/lib2.pl";

if (connectDivoom("11:75:68:C9:7D:36"))
{
  sendPlain('4503', 1);
  disconnectDivoom();
}


Das kommt dabei raus.


root@raspiFhem:/opt/fhem/divoom# perl Equalizer.pl
Image: 10x10 (maxcolors: 256, usedcolors: 1)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 10)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 5)
Image: 10x10 (maxcolors: 256, usedcolors: 6)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 4)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 1)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 1)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 2)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Image: 10x10 (maxcolors: 256, usedcolors: 3)
Create RFCOMM client (11:75:68:C9:7D:36)...

schwatter

Ich hab die Box mit der Androidapp verbunden. Sofort wurde ein Softwareupdate angeschoben. Not bad.

schwatter

Bei bluetoothctl sehr mittteilungsbedürftig. Kenn ich garnicht von meiner Aurabox.

root@raspiFhem:/opt/fhem/divoom# bluetoothctl
[NEW] Controller B8:27:EB:CA:88:44 raspiFhem [default]
[NEW] Device 11:75:68:C9:7D:36 TimeBox-Evo-light
[NEW] Primary Service
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017
        49535343-fe7d-4ae5-8fa9-9fafd205e455
        Vendor specific
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017/char0020
        49535343-8841-43f4-a8d4-ecbe34729bb3
        Vendor specific
[NEW] Descriptor
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017/char0020/desc0022
        00002902-0000-1000-8000-00805f9b34fb
        Client Characteristic Configuration
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017/char001d
        49535343-1e4d-4bd9-ba61-23c647249616
        Vendor specific
[NEW] Descriptor
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017/char001d/desc001f
        00002902-0000-1000-8000-00805f9b34fb
        Client Characteristic Configuration
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017/char001a
        49535343-aca3-481c-91ec-d85e28a60318
        Vendor specific
[NEW] Descriptor
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017/char001a/desc001c
        00002902-0000-1000-8000-00805f9b34fb
        Client Characteristic Configuration
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0017/char0018
        49535343-6daa-4d02-abf6-19569aca69fe
        Vendor specific
[NEW] Primary Service
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006
        0000180a-0000-1000-8000-00805f9b34fb
        Device Information
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char0015
        00002a2a-0000-1000-8000-00805f9b34fb
        IEEE 11073-20601 Regulatory Cert. Data List
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char0013
        00002a23-0000-1000-8000-00805f9b34fb
        System ID
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char0011
        00002a28-0000-1000-8000-00805f9b34fb
        Software Revision String
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char000f
        00002a26-0000-1000-8000-00805f9b34fb
        Firmware Revision String
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char000d
        00002a27-0000-1000-8000-00805f9b34fb
        Hardware Revision String
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char000b
        00002a25-0000-1000-8000-00805f9b34fb
        Serial Number String
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char0009
        00002a24-0000-1000-8000-00805f9b34fb
        Model Number String
[NEW] Characteristic
        /org/bluez/hci0/dev_11_75_68_C9_7D_36/service0006/char0007
        00002a29-0000-1000-8000-00805f9b34fb
        Manufacturer Name String

schwatter

So Audio läuft. Ich glaube ich habe noch Probleme mit rfcomm...Das muss ich erstmal sortieren.

schwatter

@mumpitzstuff

Ich hab mal einen Bugreport auf meinem Handy erstellt.
Die Dateien mit Wireshark öffnen. Vielleicht fällt dir was auf.

mumpitzstuff

Hmm das ist doch der selbe Raspi auf dem auch die Aurabox lief oder?

mumpitzstuff

Ich sehe da hauptsächlich nur eine Audioverbindung?!? Versuch mal folgendes:

Aurabox anschalten und Timebox ausschalten. Dann eine Verbindung mit der App herstellen. App aus dem Speicher werfen und Bluetooth ausschalten. Bluetooth einschalten und logging aktivieren. App öffnen und Verbindung aufbauen. Dann sofort das logging wieder deaktivieren und sichern.

Jetzt das ganze umgedreht und man kann beides mal vergleichen. Es geht ja nur um den Aufbau der Verbindung.

Neu gepaired hast du die Timebox mit deinem Raspberry?

Wenn schon der Aufbau der rfcomm Verbindung nicht klappt, dann kann ich da aber nichts machen, darauf habe ich 0 Einfluss im Skript. Das ist ein Aufruf eine Bibliotheksfunktion.

schwatter

Bei rfcomm bin ich mir auch nicht ganz sicher, das es nicht geht. Die Aurabox klappt sofort. Allerdings hat die Timebox Evo  Bluetooth 5.0, was
ja Abwärtskompatibilität hat. Vielleicht funktioniert das nicht richtig mit Raspi.

Log erstellen auf meinem Androidhandy ist auch nicht ganz einfach. Ist ein Unofficialrom von ResurrectionRemix. Bis jetzt konnte ich den Log
nur erstellen, indem ich in "Entwickleroptionen--> Bluetooth HCI-Snoop-Protokoll aktivieren" aktiviert habe und dann weiter oben auf
"Fehlerbericht abrufen --> Vollständiger Bericht" gegangen bin mit anschließenden versenden per Email an mich.

Hast du eine Empfehlung um Bluetooth besser zu sniffen?

schwatter

#115
Ich würde sagen rfcomm ist ok? Die Ausgabe ist vom Raspi, verbunden mit der TimeboxEvo.

root@raspiFhem:~# sdptool browse 11:75:68:C9:7D:36
Browsing 11:75:68:C9:7D:36 ...
Service Name: Serial Port 1
Service RecHandle: 0x10004
Service Class ID List:
  "Serial Port" (0x1101)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 1

root@raspiFhem:~#



root@raspiFhem:~# rfcomm
rfcomm0: 11:75:68:C9:7D:36 channel 1 clean

mumpitzstuff

Schau mal ins Skript rein. Ich glaube es wurde hier Port 4 verwendet. Schau mal ob du auch auf diesem Port eine Verbindung bekommst. Ansonsten probier doch mal Doe Ports 0-9 durch.

schwatter

#117
Klappt  :) auf Port 3

root@raspiFhem:/opt/fhem/divoom# perl tbetest.pl
Create RFCOMM client (11:75:68:C9:7D:36)...
root@raspiFhem:/opt/fhem/divoom# perl tbetest.pl
Create RFCOMM client (11:75:68:C9:7D:36)...
Device answer: AT+BRSF=63
done


Infos laut Internet
<< AT+BRSF=63
The headunit sends its supported features.

und Port 7


root@raspiFhem:/opt/fhem/divoom# perl tbetest.pl
Create RFCOMM client (11:75:68:C9:7D:36)...
Device answer: # Fya5f fL
done

schwatter

So, ich hab noch einen Pi-Zero-W. Den hab ich jetzt erstmal aufgesetzt und teste damit.
Dann ist es einfacher die Boxen zu vergleichen. So wie es aussieht, muss ich bei der
Evo auf Channel 1. Die Aurabox gibt folgendes aus.

root@raspiFhem:/opt/fhem/divoom# sdptool browse 11:75:58:45:59:81
Browsing 11:75:58:45:59:81 ...
Service Name: Serial Port 1
Service RecHandle: 0x10004
Service Class ID List:
  "Serial Port" (0x1101)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 4

root@raspiFhem:/opt/fhem/divoom#

mumpitzstuff

Das mit den AT Kommandos ist der Port für die Audioschnittstelle. Die kannst du ignorieren. Es muss daneben noch einen anderen Port geben, auf dem die alten Boxen HELLO gemeldet haben. Da bei der Aurabox unten bei Channel 4 und bei der TimeboxEvo 1 steht, könntest du mit der 1 als Port richtig liegen.