RPi-Distro has augmented their bluetooth infrastructure to support new
features. It also correctly handles restart, which fixes problems when
faults cause hciattach to exit. Replace brcm43438.service with the
upstream ones.
Resolves: #330
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
The attempt to Raspbian updated firmware blobs in packages separate from
linux-firmware introduced unresolvable conflicts with the standard
linux-firmware roll-up package. Revert to using an augmented
linux-firmware recipe that overrides and adds firmware from two Raspbian
repositories that have up-to-date images.
Closes#244
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Unique bluetooth device addresses are not assigned correctly with some
firmware, resulting in a fixed default address. Use the same utility as
raspbian does to initialize the device.
Closes#236
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Remove the material covered by the Cypress license from the bluez5
package and move it to its own package, derived directly from the
upstream sources.
Closes#224
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Type=simple is wrong: it allows bluetooth.service to start before the
uart is configured, resulting in hci0 command tx timeout errors.
Type=oneshot blocks follow-up units until the ExecStart completes.
Add RemainAfterExit since system state has changed as a result of the
unit.
Also add a BindsTo for the device that we're going to use.
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Updated BCM43430A1.hcd to bluez-firmware_1.2-3+rpt4.1.debian.tar.xz
Added BCM4345C0.hcd for RasperryPi 3B+ support
Files from https://github.com/RPi-Distro/bluez-firmware at commit
50fa5628b5c2fd6c59090fb18f02af9fd98c3170
Closes Issue #222
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
A previous patch changed the BT serial device to the alias, but did not
update the device dependency resulting in the service failing to start
on boot.
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
functions/variables in this bbappend implemented for only raspberrypi3.
But these must be able to used to enabling bluetooth on another raspberrypi that has bluetooth feature such as raspberrypi0-wifi.
The simple solution is a duplicating these but it is not good ideas for maintainance.
Add functions/variables follows to simplify to enabling bluetooth on another raspberrypi that has bluetooth.
- BCM_BT_SOURCES
- enable_bcm_bluetooth()
- BCM_BT_FIRMWARE
- BCM_BT_SERVICE
Signed-off-by: Yusuke Mitsuki <mickey.happygolucky@gmail.com>
This patch adds the bluetooth support for the brcm43438 module on the raspberrypi3 by
deploying the modules firmware and changing the targeting firmware path. In addition
the brcm43438.service adds the automatically attaching (hciattach) for systemd environments.
The following steps can be used to manually configure the brcm43438:
root@raspberrypi3:~# hciattach /dev/ttyAMA0 bcm43xx-3wire
bcm43xx_init
Flash firmware /lib/firmware/brcm/BCM43430A1.hcd
Set Controller UART speed to 3000000 bit/s
Device setup complete
root@raspberrypi3:~# hciconfig
hci0: Type: BR/EDR Bus: UART
BD Address: B8:27:EB:6C:85:BE ACL MTU: 1021:8 SCO MTU: 64:1
DOWN
RX bytes:983 acl:0 sco:0 events:33 errors:0
TX bytes:887 acl:0 sco:0 commands:33 errors:0
root@raspberrypi3:~# /usr/lib/bluez5/bluetooth/bluetoothd -e -n -E
root@raspberrypi3:~# bluetoothctl
[NEW] Controller B8:27:EB:6C:85:BE raspberrypi3 [default]
[bluetooth]# power on
[CHG] Controller B8:27:EB:6C:85:BE Class: 0x400000
Changing power on succeeded
[CHG] Controller B8:27:EB:6C:85:BE Powered: yes
[bluetooth]# scan on
Discovery started
[CHG] Controller B8:27:EB:6C:85:BE Discovering: yes
[NEW] Device 00:1C:05:FF:F9:F8 Nonin3230_501585326
NOTE: SERIAL_CONSOLE must configured to ttyS0 instead of ttyAMA0 (used by the brcm43438). See pending patch from Martin Bergek
Signed-off-by: Tom Doehring <toolmmy@gmail.com>