Hi list, I'm trying to use pulseaudio with a bluetooth a2dp connection (with module-bluetooth-device and module-bluetooth-discover; i.e. without alsa). My problem is that the A2DP profile is not automatically selected for the bluetooth card when pulseaudio is loaded when the a2dp connection is already active. Here is the relevant log part: # pulsaudio -C -vvvv [...] D: module-bluetooth-discover.c: Loading module-bluetooth-device address="DE:AD:BE:EF:00:00" path="/org/bluez/1062/hci0/dev_DE:AD:BA:BE:00:00" I: module-card-restore.c: Restoring profile for card bluez_card.DE:AD:BA:BE:00:00. I: card.c: Created 1 "bluez_card.DE:AD:BA:BE:00:00" W: module-bluetooth-device.c: Default profile not connected, selecting off profile D: module-bluetooth-device.c: Connected to the bluetooth audio service I: module.c: Loaded "module-bluetooth-device" (index: #17; argument: "address="DE:AD:BE:EF:00:00" path="/org/bluez/1062/hci0/dev_DE:AD:BA:BE:00:00""). If I restart the bluetooth stack and create the a2dp connection after pulseaudio is loaded (using dbus commands), then the profile gets selected, the sink is created and the audio streams: D: bluetooth-util.c: dbus: interface=org.freedesktop.DBus, path=/org/freedesktop/DBus, member=NameOwnerChanged D: bluetooth-util.c: Bluetooth daemon disappeared. D: module-bluetooth-discover.c: Unloading module for /org/bluez/1643/hci0/dev_DE:AD:BA:BE:00:00 D: module-console-kit.c: dbus: interface=org.freedesktop.DBus, path=/org/freedesktop/DBus, member=NameOwnerChanged D: module-bluetooth-device.c: dbus: interface=org.freedesktop.DBus, path=/org/freedesktop/DBus, member=NameOwnerChanged I: module.c: Unloading "module-bluetooth-device" (index: #17). I: card.c: Freed 1 "bluez_card.DE:AD:BA:BE:00:00" I: module.c: Unloaded "module-bluetooth-device" (index: #17). D: bluetooth-util.c: dbus: interface=org.freedesktop.DBus, path=/org/freedesktop/DBus, member=NameOwnerChanged D: bluetooth-util.c: Bluetooth daemon appeared. D: module-console-kit.c: dbus: interface=org.freedesktop.DBus, path=/org/freedesktop/DBus, member=NameOwnerChanged D: bluetooth-util.c: dbus: interface=org.bluez.Manager, path=/, member=AdapterAdded D: bluetooth-util.c: Adapter /org/bluez/1670/hci0 created D: module-console-kit.c: dbus: interface=org.bluez.Manager, path=/, member=AdapterAdded D: bluetooth-util.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-console-kit.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: bluetooth-util.c: dbus: interface=org.bluez.Audio, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-console-kit.c: dbus: interface=org.bluez.Audio, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: bluetooth-util.c: dbus: interface=org.bluez.Device, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-console-kit.c: dbus: interface=org.bluez.Device, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: bluetooth-util.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-console-kit.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: bluetooth-util.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-console-kit.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: bluetooth-util.c: dbus: interface=org.bluez.Audio, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-bluetooth-discover.c: Loading module-bluetooth-device address="DE:AD:BE:EF:00:00" path="/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00" I: module-card-restore.c: Restoring profile for card bluez_card.DE:AD:BA:BE:00:00. I: card.c: Created 2 "bluez_card.DE:AD:BA:BE:00:00" D: module-bluetooth-device.c: Connected to the bluetooth audio service D: module-bluetooth-device.c: Sending BT_REQUEST -> BT_GET_CAPABILITIES D: module-bluetooth-device.c: Trying to receive message from audio service... D: module-bluetooth-device.c: Received BT_RESPONSE <- BT_GET_CAPABILITIES D: module-bluetooth-device.c: Payload size is 39 6 D: module-bluetooth-device.c: Sending BT_REQUEST -> BT_GET_CAPABILITIES D: module-bluetooth-device.c: Trying to receive message from audio service... D: module-bluetooth-device.c: Received BT_RESPONSE <- BT_GET_CAPABILITIES D: module-bluetooth-device.c: Payload size is 13 6 D: module-bluetooth-device.c: Got device capabilities D: module-bluetooth-device.c: Sending BT_REQUEST -> BT_OPEN D: module-bluetooth-device.c: Trying to receive message from audio service... D: module-bluetooth-device.c: Received BT_RESPONSE <- BT_OPEN D: module-bluetooth-device.c: Sending BT_REQUEST -> BT_SET_CONFIGURATION D: module-bluetooth-device.c: Trying to receive message from audio service... D: module-bluetooth-device.c: Received BT_RESPONSE <- BT_SET_CONFIGURATION I: module-bluetooth-device.c: SBC parameters: I: module-bluetooth-device.c: allocation=0 I: module-bluetooth-device.c: subbands=1 I: module-bluetooth-device.c: blocks=3 I: module-bluetooth-device.c: bitpool=53 D: module-bluetooth-device.c: Connection to the device configured D: module-bluetooth-device.c: Got the stream socket I: sink.c: Created sink 1 "bluez_sink.DE:AD:BA:BE:00:00" with sample spec s16le 2ch 44100Hz and channel map front-left,front-right I: sink.c: bluetooth.protocol = "a2dp" I: sink.c: device.description = "DOESNOTMATTER" I: sink.c: device.string = "DE:AD:BE:EF:00:00" I: sink.c: device.api = "bluez" I: sink.c: device.class = "sound" I: sink.c: device.bus = "bluetooth" I: sink.c: bluez.path = "/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00" I: sink.c: bluez.class = "0x3e010c" I: sink.c: bluez.name = "DOESNOTMATTER" I: sink.c: device.icon_name = "audio-card-bluetooth" I: source.c: Created source 2 "bluez_sink.DE:AD:BA:BE:00:00.monitor" with sample spec s16le 2ch 44100Hz and channel map front-left,front-right I: source.c: device.description = "Monitor of DOESNOTMATTER" I: source.c: device.class = "monitor" I: source.c: device.string = "DE:AD:BE:EF:00:00" I: source.c: device.api = "bluez" I: source.c: device.bus = "bluetooth" I: source.c: bluez.path = "/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00" I: source.c: bluez.class = "0x3e010c" I: source.c: bluez.name = "DOESNOTMATTER" I: source.c: device.icon_name = "audio-card-bluetooth" D: module-bluetooth-device.c: IO Thread starting up I: core-util.c: Successfully enabled SCHED_RR scheduling for thread, with priority 4, which is lower than the requested 5. D: module-bluetooth-device.c: Sending BT_REQUEST -> BT_START_STREAM D: module-bluetooth-device.c: Trying to receive message from audio service... D: module-bluetooth-device.c: Received BT_RESPONSE <- BT_START_STREAM D: module-bluetooth-device.c: Trying to receive message from audio service... D: module-bluetooth-device.c: Received BT_RESPONSE <- BT_NEW_STREAM D: module-bluetooth-device.c: Stream properly set up, we're ready to roll! D: module-bluetooth-device.c: Using SBC encoder implementation: MMX D: module-suspend-on-idle.c: Sink bluez_sink.DE:AD:BA:BE:00:00 becomes idle, timeout in 5 seconds. I: module.c: Loaded "module-bluetooth-device" (index: #18; argument: "address="DE:AD:BE:EF:00:00" path="/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00""). D: module-console-kit.c: dbus: interface=org.bluez.Audio, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: bluetooth-util.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-console-kit.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-bluetooth-device.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: bluetooth-util.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-console-kit.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged D: module-bluetooth-device.c: dbus: interface=org.bluez.AudioSink, path=/org/bluez/1670/hci0/dev_DE:AD:BA:BE:00:00, member=PropertyChanged What bothers me is that I have a second computer with the same configuration which is working right (a2dp is automatically selected when pulseaudio is started). Any help would be greatly apreciated. $ uname -a Linux debian 2.6.32-5-amd64 #1 SMP Mon Jan 16 16:22:28 UTC 2012 x86_64 GNU/Linux $ dpkg -l | grep pulse ii libpulse0 0.9.21-3+squeeze1 PulseAudio client libraries ii pulseaudio 0.9.21-3+squeeze1 PulseAudio sound server ii pulseaudio-module-bluetooth 0.9.21-3+squeeze1 Bluetooth module for PulseAudio sound server $ dpkg -l | grep bluez ii bluez 4.66-3 Bluetooth tools and daemons Erwan Martin.