The wireless variant of the ConnectCore 8M Nano SOM integrates the Qualcomm QCA6564 wireless chipset with the following features:
Bluetooth 5.0, ANT+, backwards compatible with Bluetooth 4.2, 4.1, 4.0, 3.x, 2.x, and 1.0
Bluetooth and WLAN coexistence
Digi Embedded Yocto defines the dey-bluetooth feature that builds the bluez5 package for working with the Bluetooth interface. This package installs all the required libraries and tools to use Bluetooth.
Digi Embedded Yocto supports the core specification 5.0 (GAP, L2CAP, RFCOMM, SDP, GATT), including Classic Bluetooth and Bluetooth Smart (Low Energy). The Linux Bluez stack supports additional Bluetooth Classic and Low Energy profiles that are not specifically validated. See the Bluez documentation for details.
|If you own a Bluetooth-capable ConnectCore 8M Nano but you don’t need to use Bluetooth, see Disable Bluetooth for instructions on disabling the interface.
The Bluetooth interface is managed by the following kernel configuration options:
HCI UART driver (
UART (H4) protocol support (
Digi Bluetooth support (
With the exception of the Digi Bluetooth support that is built as a module to allow you to load/unload it in runtime, these options are enabled as built-in on the default ConnectCore 8M Nano kernel configuration file.
Device tree bindings
The Digi-supported Bluetooth device tree bindings are documented at
U-Boot fills-in the Bluetooth MAC address inside the
bluetooth node of the device tree.
This MAC address is then programmed into the Bluetooth chip by the Digi Embedded Yocto
bluez init script.
/* U-Boot will fill in the MAC address here */
compatible = "digi,bluetooth-cc8x";
vin-supply = <®_rf_bt_en>;
status = "okay";
Bluetooth is enabled by default on the ConnectCore 8M Nano variants that support it, by means of a device tree overlay.
The Digi Embedded Yocto boot script automatically detects if the variant has a Bluetooth chip and adds the Bluetooth overlay to the U-Boot environment
To disable Bluetooth, set the following environment variable in U-Boot:
=> setenv disable_bt 1
This prevents the boot script from adding the Bluetooth overlay, which results in the system disabling the Bluetooth interface.
To revert this change, remove the variable and the boot script will load the wireless overlay again.
|With Bluetooth disabled, you may use that UART for other purposes, or its lines as GPIOs (this requires disabling the UART and redefining the IOMUX of the pads).