Bluetooth für ARM, embedded linux

Ich bin kämpfen jetzt für ein paar Tage, um das setup bluetooth-Dienste auf einem ARM-embedded-Geräte mit Linux. Ich bin mit einem bluetooth-dongle über USB angeschlossen.

Beginnen wir mit dem Anfang. Ich hatte zum kompilieren selber alle benötigten Pakete, und das bedeutet, dass expat, dbus, zlib, libffi, glib, bluez-3.36-libs und bluez-3.36-utils (yeah 3.36, ich weiß, Sie sind alt, aber damit ist meine cross-compiler), libopenobex-1.3, obexd-0.3, obexftp. Dann legte ich die Binärdateien und-Bibliotheken auf dem Gerät. Auch bluetooth ist aktiviert im kernel.

Ich bin in der Lage, aktivieren Sie die bluetooth-Verwendung hciconfig hci0 up Befehl, ich kann führen Sie einen scan mit hcitool scan ich kann auch ping mit l2ping zuvor gefundenen Geräten.

Was ich will, ist in der Lage sein, um die übertragung von Dateien zwischen, ARM-Gerät und einem anderen bluetooth-Gerät mit ftp-Protokoll und hier meine Probleme beginnen.

  1. Sind das die einzigen tools, die ich brauche?

  2. Nachdem ich alles auf dem Gerät, ich schalten Sie bluetooth mit hciconfig hci0 up, dann starte ich dbus-daemon mit Hilfe von dbus-launch und nach diesen versuche ich zu starten obexd. Wenn ich dbus-launch es druckt die Werte für DBUS_SESSION_BUS_ADDRESS und einige pid und weiter, wenn ich versuche zu starten obexd es fragt mich, um die DBUS_SESSION_BUS_ADDRESS. Ist das normal, da ich gelesen habe, müssen Sie dies nur für test-Zwecke? Was ist die Standard - (real -) dbus-session-bus-Adresse? Wie muss ich richtig konfigurieren, dbus?

  3. Ich Neige dazu zu denken, dass das problem in den pairing-Vorgang, bei dem zwei bluetooth-Geräte versuchen, sich zu authentifizieren. Wie kann ich dies von der Kommandozeile aus als dies alles ist, was ich habe (keine GUI)?

  4. Könnten Sie bitte zeigen Sie mir die ausführliche Schritt zu Folgen, um zu erreichen mein Ziel. Ich habe versucht zu lernen, mehr über Sie aus dem Internet und ich habe versucht zu finden, diese Schritte online, aber ich konnte nicht finden, was ich brauche.

  5. Könntest du bitte erklären Sie mir den Unterschied zwischen obexd, obexd-client, obexd-server obex-data-server, obexftp? Sie sind gedacht, um zusammen verwendet werden, oder Sie bieten die gleichen Funktionalitäten? Ich konnte nicht klären, diese von Ihren Mann Seiten.

Ich weiß, das ist ein wirklich langer post mit vielen Fragen, aber ich habe keine Erfahrung mit bluetooth, und ich bin unter Zeitdruck zu lösen. Jede Hilfe wäre herzlich willkommen.

Es gibt eine Menge verschiedener Dinge, die auf hier. Haben Sie vielleicht mehr Glück durch das brechen dieses in mehrere Fragen auf ALSO.
Meine Vermutung ist, dass zumindest einige dieser Komponenten werden mit dem system eher als session-bus. Idealerweise sollten Sie beim Booten gestartet, indem entweder die init-Scripte oder SystemD. Der session-bus kann auch verwendet werden, von jedem Benutzer-Schnittstellen. dbus-launch wird oft verwendet, um den boot-strap-X, in der Reihenfolge, in der Sie und Ihre Kind-Prozesse Erben die notwendigen Umgebungsvariablen. Wenn dies aus einer shell versuchen dbus-launch /bin/sh.

InformationsquelleAutor fml | 2013-01-21

Schreibe einen Kommentar