Erstellt vor 9 Jahren

Zuletzt geändert vor 6 Jahren

#602 new addition

version bump bluez 3.36 und new package dbus 3.40

Erstellt von: markuschen Verantwortlicher:
Priorität: low Meilenstein: freetz-future
Komponente: packages Version: devel
Stichworte: bluez dbus bluetooth Beobachter:
Product Id: Firmware Version:

Beschreibung

Ich hab mich mal an BlueZ 3.36 versucht, durch die Dbus-Abhängigkeit wird das Paket aber ganz schön groß. Ich hoffte auch, dass die bisherigen Kernel-Fehlermeldungen im Syslog und sporadischen Reboot's verschwinden würden → sieht leider nicht so aus. Es werden vermutlich Kernel-Patche für die Bluetooth-Module benötigt, wonach ich mich jedoch totgesucht habe.

Das ganze funktioniert zumindest schonmal auf meiner 7270v2, ich konnte mein Handy mit der FritzBox pairen. Vielleicht möchte an dieser Stelle jemand weitermachen, ich hänge mal mein Werk an.

Grüße von markuschen

Anhänge (22)

bluez-3.36-3933.patch (12.3 KB) - hinzugefügt von markuschen vor 9 Jahren.
dbus-3.4.0-3933.patch (10.6 KB) - hinzugefügt von markuschen vor 9 Jahren.
bluez-4.94-trunk-7602.patch (60.0 KB) - hinzugefügt von markuschen vor 7 Jahren.
Aktuelle bluez-Version für Bastler, Änderungen in WebGui und rc.bluez notwendig wegen geänderten Dateinamen von bluez
bluez-4.98-trunk-8555.patch (56.9 KB) - hinzugefügt von M66B vor 7 Jahren.
bluez-4.98-trunk-8556.patch (58.7 KB) - hinzugefügt von M66B vor 7 Jahren.
bluez-4.98-trunk-8556-isoc.patch (59.5 KB) - hinzugefügt von M66B vor 7 Jahren.
bluez-4.98-trunk-8560-no-isoc.patch (60.8 KB) - hinzugefügt von M66B vor 7 Jahren.
bluez-4.98-trunk-8563-no-isoc.2.patch (60.4 KB) - hinzugefügt von M66B vor 7 Jahren.
Added hciattach tool, moved hcid.conf to main.conf, modified rc.bluez, updated WebIF
bluez-4.98-trunk-8563-no-isoc.patch (62.2 KB) - hinzugefügt von M66B vor 7 Jahren.
Added hciattach tool, moved hcid.conf to main.conf, modified rc.bluez, updated WebIF, dbus additions
bluez-4.98-trunk-8564-no-isoc.patch (62.9 KB) - hinzugefügt von M66B vor 7 Jahren.
Updated dbus config, dbus fixes
bluez-4.98-trunk-8564-no-isoc.2.patch (62.9 KB) - hinzugefügt von M66B vor 7 Jahren.
Updated dbus config, dbus fixes, rc.bluez fixes
bluez-4.98-trunk-8564-no-isoc.3.patch (64.4 KB) - hinzugefügt von M66B vor 7 Jahren.
Two more config files added
bluez-4.98-trunk-8565-no-isoc.patch (54.3 KB) - hinzugefügt von M66B vor 7 Jahren.
Removed pand, dund, etc, since this is parts of bluetoothd in BlueZ 4.x
bluez-4.98-trunk-8565-no-isoc.2.patch (55.0 KB) - hinzugefügt von M66B vor 7 Jahren.
Simplifcations, i18n, new option
bluez-4.98-trunk-8565-no-isoc.3.patch (60.9 KB) - hinzugefügt von M66B vor 7 Jahren.
DBUS WebIF, bump DBUS 1.5.8, add dbus-send tool, BlueZ start/stop script, BlueZ wait for DBUS
bluez-4.98-trunk-8591-no-isoc.patch (61.2 KB) - hinzugefügt von M66B vor 7 Jahren.
Added default config, save/restore state
bluez-4.98-trunk-8593-no-isoc.patch (61.3 KB) - hinzugefügt von M66B vor 7 Jahren.
Improved startup script, better persistence parings/trusts
bluez-4.98-trunk-8606-no-isoc.patch (29.3 KB) - hinzugefügt von M66B vor 7 Jahren.
Fixed external, added dependency DBUS, coexistence with bluez-utils
bluez-4.98-trunk-8617-no-isoc.patch (29.8 KB) - hinzugefügt von M66B vor 7 Jahren.
DBUS STARTLEVEL
bluez-4.98-trunk-8618-no-isoc.patch (32.9 KB) - hinzugefügt von M66B vor 7 Jahren.
Added config files for DUN
bluez-4.98-trunk-8725-no-isoc.patch (32.9 KB) - hinzugefügt von M66B vor 7 Jahren.
Fixed DBUS lib version
bluez-4.101-trunk-9288-no-isoc.patch (31.8 KB) - hinzugefügt von M66B vor 6 Jahren.

Alle Anhänge herunterladen als: .zip

Änderungshistorie (49)

Geändert vor 9 Jahren durch markuschen

Geändert vor 9 Jahren durch markuschen

comment:1 Geändert vor 9 Jahren durch Whoopie

Heisst das, dass mit der neueren Version das beschriebene Problem mit dem Kernel-Crash (#237) behoben ist? Wenn nicht, sehe ich keinen Grund, auf die 3.x zu wechseln (da es wirklich viel mehr Platz verbraucht). Natürlich weiss ich, dass die aktuell verwendete Version uralt ist.


PS: Mein Kommentar bedeutet keinesfalls, dass Deine Arbeit umsonst war. Ich frage mich nur, wo der Mehrwert ist.

comment:2 Geändert vor 9 Jahren durch markuschen

Also eine Kernel-Panik hatte ich weder mit der 2.x noch mit der 3.x. Ich hatte gehofft, dass die Log-Meldungen (Bug in skub … oder so ähnlich) durch die neue Version verschwinden würden. Insofern gebe ich dir Recht, das an dieser Stelle kein mehrwert ist.

Auch wegen der deutlichen Größenänderungen habe ich mir das einchecken gespart, wollte aber wegnigstens eine Art Ablage schaffen, falls jemand noch Ideen hat, dann kann er zumindest mit meinem Stand weitermachen.

comment:3 Geändert vor 8 Jahren durch cuma

  • Typ von enhancement nach addition geändert

comment:4 Geändert vor 8 Jahren durch oliver

  • Meilenstein von freetz-future nach freetz-1.3 geändert

Geändert vor 7 Jahren durch markuschen

Aktuelle bluez-Version für Bastler, Änderungen in WebGui und rc.bluez notwendig wegen geänderten Dateinamen von bluez

Geändert vor 7 Jahren durch M66B

comment:5 Geändert vor 7 Jahren durch M66B

I have updated Bluez to version 4.98 (some folders has been changed).

The patch also includes a change to modprobe.conf from #1482.

I have tried to make it work, but hci_usb is missing (probably due to a new 7270-kernel). 

If anyone got this working, could you please let me know how? I will take care of a wiki-entry as soon as I got it working myself …

comment:6 Geändert vor 7 Jahren durch oliver

After looking into kernel-menuconfig I think the module got renamed to btusb?

Geändert vor 7 Jahren durch M66B

comment:7 Geändert vor 7 Jahren durch M66B

Thanks for the hint, Oliver.

I have renamed hci_usb into btusb.

Furthermore I have added a dependency to crc16 from l2cap to solve a missing symbol.

In can modprobe bnep now, but I have to test if it works, yet.

I have removed isoc=0 from modprobe.conf, but I have still to figure out how to do this with btusb (if needed).

Any hints are appreciated.

comment:8 Geändert vor 7 Jahren durch M66B

I still get lost in the Freetz build system :-(

How can I patch ./source/kernel/ref-ur8-16mb-7270_05.05/linux-2.6.32/drivers/bluetooth/btusb.c

(I want to disable isoc by removing a line from this source file)

comment:9 Geändert vor 7 Jahren durch oliver

You can edit the source file directly. Then do "make kernel-menuconfig" and "make kernel-precompiled".

If you want to provide a patch this has to go to freetz-trunk/make/linux/patches/2.6.32

Geändert vor 7 Jahren durch M66B

comment:10 Geändert vor 7 Jahren durch M66B

Thanks again, Oliver!

The newly attached patch disables isoc and fixes some dependencies, among them dbus.

How do I fix:

root@fritz:/# ldd /usr/sbin/bluetoothd
	libglib-2.0.so.0 => not found
	libpcre.so.0 => not found
	libdbus-1.so.3 => not found
	libpthread.so.0 => /lib/libpthread.so.0 (0x2aabe000)
	libdl.so.0 => /lib/libdl.so.0 (0x2aae1000)
	librt.so.0 => /lib/librt.so.0 (0x2aaf4000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2ab05000)
	libc.so.0 => /lib/libc.so.0 (0x2ab23000)
	ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)

All three not found libs are on the system in /usr/lib/freetz. Should I make symlinks somewhere?

comment:11 Geändert vor 7 Jahren durch oliver

Normally this is fixed by the line $(PKG)_CONFIGURE_PRE_CMDS += $(call PKG_PREVENT_RPATH_HARDCODING,./configure) in the mk file.

Zuletzt geändert vor 7 Jahren von oliver (vorher) (Diff)

Geändert vor 7 Jahren durch M66B

comment:12 Geändert vor 7 Jahren durch M66B

@Oliver: for some reason PKG_PREVENT_RPATH_HARDCODING was commented.

The newly attached patch addresses some WebIF invalid links and a few other things.

The following are okay:

modprobe btusb
modprobe rfcomm
modprobe bnep

In any case this is needed before doing anything.

hciconfig hci0 up

I can see my Android phone with:

hcitool scan

So at least low level BT networking is okay. Note that you'll get a strange error if no devices are in range.

My Android phone reports a BT hotspot if I start some services after some configuration.

I couldn't pair yet and setup a PAN, despite a few tries, but I will continue another time. In any case all ingredients to get this working are there!

Any pointers to how to setup this are very welcome!

Geändert vor 7 Jahren durch M66B

Added hciattach tool, moved hcid.conf to main.conf, modified rc.bluez, updated WebIF

Geändert vor 7 Jahren durch M66B

Added hciattach tool, moved hcid.conf to main.conf, modified rc.bluez, updated WebIF, dbus additions

comment:13 Geändert vor 7 Jahren durch M66B

It is quite a task to move everything to Bluez 4.x, but I have bluetoothd running with dbus now.

Geändert vor 7 Jahren durch M66B

Updated dbus config, dbus fixes

Geändert vor 7 Jahren durch M66B

Updated dbus config, dbus fixes, rc.bluez fixes

comment:14 Geändert vor 7 Jahren durch M66B

Next step done: my Android phone is paired.

comment:15 Geändert vor 7 Jahren durch Whoopie

I just want to mention that the hci_usb module is still valid for older boxes like 7170. So, you have to add a new module option for the btusb module and make it dependent on the respective FREETZ_KERNEL_VERSION_2_6_xx_MIN/_MAX values.

comment:16 Geändert vor 7 Jahren durch M66B

Thanks for the remark, Whoopie.

Could you please help me with this?

Geändert vor 7 Jahren durch M66B

Two more config files added

comment:17 Geändert vor 7 Jahren durch M66B

@Whoopie: could you please check if I used the min/max stuff the right way?

I have a working BT connection between my Android phone and Freetz!

comment:18 Geändert vor 7 Jahren durch M66B

Is there a way to make starting BlueZ depend on DBUS?

Geändert vor 7 Jahren durch M66B

Removed pand, dund, etc, since this is parts of bluetoothd in BlueZ 4.x

comment:19 Geändert vor 7 Jahren durch M66B

See wiki for how to make a connection (for now).

Geändert vor 7 Jahren durch M66B

Simplifcations, i18n, new option

Geändert vor 7 Jahren durch M66B

DBUS WebIF, bump DBUS 1.5.8, add dbus-send tool, BlueZ start/stop script, BlueZ wait for DBUS

comment:20 Geändert vor 7 Jahren durch M66B

With dbus-send you can do this:

dbus-send --system --type=method_call --print-reply --dest=org.bluez /org/bluez/$(pidof bluetoothd)/hci0 org.bluez.Adapter.SetProperty string:Discoverable variant:boolean:true

comment:21 Geändert vor 7 Jahren durch M66B

Can at least go into trunk:

  • FREETZ_MODULE_btusb, including kernel patch
  • FREETZ_MODULE_hci_usb kernel dependency
  • DBUS bump, WebIF, fixes and additions

BlueZ is not completely ready, but it is in working state, including WebIF and could go into trunk too.

Note that BlueZ does replace bluez-utils, the predecessor of BlueZ.

Geändert vor 7 Jahren durch M66B

Added default config, save/restore state

comment:22 Geändert vor 7 Jahren durch M66B

IMHO it is now ready for review and for adding to trunk

Geändert vor 7 Jahren durch M66B

Improved startup script, better persistence parings/trusts

comment:23 Geändert vor 7 Jahren durch M66B

Since there may be existing bluez-utils users, I have updated the patch, so that bluez-utils and BlueZ 4.x can coexist.

Geändert vor 7 Jahren durch M66B

Fixed external, added dependency DBUS, coexistence with bluez-utils

comment:24 Geändert vor 7 Jahren durch M66B

Both bluez-utils and BlueZ produce libbluetooth, but different versions. How should this be handled?

I have tried to define the symbol FREETZ_LIB_libbluetooth_bluez, but that doesn't work.

It works now, but maybe it is coincidence. I have this in /usr/lib/freetz:

libbluetooth.so -> libbluetooth.so.3.11.5
libbluetooth.so.1 -> libbluetooth.so.1.0.25
libbluetooth.so.1.0.25 -> /mod/external/libbluetooth.so.1.0.25
libbluetooth.so.3 -> libbluetooth.so.3.11.5
libbluetooth.so.3.11.5 -> /mod/external/libbluetooth.so.3.11.5

comment:25 Geändert vor 7 Jahren durch Whoopie

I don't think that both packages have to coexist, but the idea of bluez integration was that mobile phones (or/and smartphones) with missing wifi can use this connection to connect to the Internet.

My impression is that mobile phones with missing wifi also don't support the PAN profile, but the DUN profile. What needs to be guaranteed is that there's no regression with Bluez 4.x. It means that both DUN and PAN profiles are supported.

Geändert vor 7 Jahren durch M66B

DBUS STARTLEVEL

comment:26 Geändert vor 7 Jahren durch M66B

@Whoopie:

PAN works, see wiki, but I haven't looked into DUN, but it is available in BlueZ 4.x (of course, since it is the successor of bluez-utils).

I have wifi on my Android phone (a SE X10 mini), but I prefer bluetooth PAN, because my battery last significant longer this way.

Zuletzt geändert vor 7 Jahren von M66B (vorher) (Diff)

Geändert vor 7 Jahren durch M66B

Added config files for DUN

Geändert vor 7 Jahren durch M66B

Fixed DBUS lib version

comment:27 Geändert vor 6 Jahren durch cuma

  • Meilenstein von freetz-1.3 nach freetz-future geändert

Geändert vor 6 Jahren durch M66B

Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.