Skip to content

Bluetooth OBEX and advertisement

Description

The PinePhone advertises itself as a desktop computer over Bluetooth which is normal, but not very useful for a phone :) My upstream MR and patch at Alpine MR also fixes #530 (closed) by fixing the lookup table for handheld chassis type from computer -> phone.

image

GNOME Control Center now sees the PinePhone as a phone!

This MR also adds a postmarketos-ui-base-bluez-obexd package which is installed when bluez-obexd installed to enable OBEX file transfers and enables OBEX capabilities generation using https://gitlab.com/postmarketOS/obex-capabilities. This new aport obex-capabilities overrides the D-Bus Service file of obexd (provided by bluez-obexd) for this as obexd doesn't allow to use config files. This works fine for our use case, so lets keep it like this. OBEX support is a first step for #1053 and #779 (closed).

Test this MR

I tested this on a clean pmbootstrap image from edge for the PinePhone with Phosh as followed:

  • Build postmarketos-ui-base and rebuild it dependencies (mostly UI packages)
  • Install all packages and reboot
  • Try to send a file using your Android phone (pair, send file)
  • Try to receive a file on your Android phone (pair, GNOME Control Center > Bluetooth > tap device > Send Files)

I could only send a file from my Sailfish OS phone to the PinePhone, but not the other way around. It works fine though in both directions when an Android phone is used with the PinePhone. I blame Sailfish OS for this as the Bluetooth implementation there is not 100% stable as well.

If you check the properties that the PinePhone has according to Bluetooth, I see this on Android:

  • Telephony
  • Audio
  • Phonebook

This seems fine to me, this advertisement is a combination of obex-capabilities script with the Bluetooth device class.

Dependencies

Issues

Fixed #530 (closed)

Edited by Dylan Van Assche

Merge request reports