Skip to content

Commit e48cb1a

Browse files
yboutreuxMaureenHelm
authored andcommitted
boards: shields: Add x_nucleo_idb05a1
Add shield x_nucleo_idb05a1. Tested samples with the disco_l475_iot1 (SPI3 disabled to ensure to test the shield on SPI1, and not the on-board BlueNRG-MS chip): Beacon, Central and Peripheral have been tested and are working. Signed-off-by: Yaël Boutreux <[email protected]> Signed-off-by: Erwan Gouriou <[email protected]>
1 parent 399f213 commit e48cb1a

File tree

4 files changed

+117
-0
lines changed

4 files changed

+117
-0
lines changed
425 KB
Loading
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
.. _x-nucleo-idb05a1:
2+
3+
X-NUCLEO-IDB05A1: BLE expansion board
4+
#####################################
5+
6+
Overview
7+
********
8+
The X-NUCLEO-IDB05A1 is a Bluetooth Low Energy evaluation board based on the
9+
SPBTLE-RF BlueNRG-MS RF module to allow expansion of the STM32 Nucleo boards.
10+
The SPBTLE-RF module is FCC (FCC ID: S9NSPBTLERF) and IC certified
11+
(IC: 8976C-SPBTLERF).
12+
13+
The X-NUCLEO-IDB05A1 is compatible with the ST Morpho and Arduino UNO R3
14+
connector layout (the user can mount the ST Morpho connectors, if required). The
15+
X-NUCLEO-IDB05A1 interfaces with the host microcontroller via the SPI pin, and
16+
the user can change the default SPI clock, the SPI chip select and SPI IRQ by
17+
changing one resistor on the evaluation board.
18+
19+
IMPORTANT NOTICE : This shield is not compatible out of the box with Arduino
20+
UNO R3 connectors. Adaptation is required on most boards for compatibility.
21+
Please refer to "Hardware configuration" section.
22+
23+
.. image:: img/x-nucleo-idb05a1.jpg
24+
:width: 400px
25+
:height: 350px
26+
:align: center
27+
:alt: X-NUCLEO-IDB05A1
28+
29+
More information about the board can be found at the
30+
`X-NUCLEO-IDB05A1 website`_.
31+
32+
Hardware configuration
33+
**********************
34+
35+
Out of the box, X-NUCLEO-IDB05A1 shield expect SPI SCK to be available on pin
36+
D3 instead of usual Arduino UNO R3 SPI SCK D13.
37+
Adaptation should be done on shield or board configuration to restore
38+
compatibility. Shield configuration could be modified by moving resistors as
39+
follows:
40+
41+
- SPI SCK: to use D13 instead of D3, remove R4 and add R6
42+
43+
Additionally, depending on your host board, some modifications of the BLE
44+
expansion board could be made:
45+
46+
- CS: To use D10 instead of A1, remove R2 and add R7
47+
- IRQ: To use D9 instead of A0, remove R1 and add R8
48+
49+
You could check Figure 3 in `X-NUCLEO-IDB05A1 databrief`_ for more details.
50+
51+
Hardware
52+
********
53+
54+
X-NUCLEO-IDB05A1 provides a SPBTLE-RF chip with the following key features:
55+
56+
- Bluetooth Low Energy FCC and IC certified module based on Bluetooth ® SMART
57+
4.1 network processor BlueNRG-MS
58+
- Integrated Balun (BALF-NRG-01D3)
59+
- Chip antenna
60+
61+
More information about X-NUCLEO-IDB05A1 can be found here:
62+
- `X-NUCLEO-IDB05A1 databrief`_
63+
64+
Programming
65+
***********
66+
67+
You can use the X-NUCLEO-IDB05A1 as a Bluetooth Low-Energy controller
68+
shield with an SPI host controller interface (HCI-SPI). Activate the presence
69+
of the shield for the project build by adding the ``-DSHIELD`` arg to the
70+
build command:
71+
72+
.. zephyr-app-commands::
73+
:zephyr-app: your_app
74+
:board: your_board_name
75+
:shield: x_nucleo_idb05a1
76+
:goals: build
77+
78+
Alternatively, set use of this shield in the project's ``CMakeLists.txt`` file:
79+
80+
.. code-block:: none
81+
82+
set(SHIELD x_nucleo_idb05a1)
83+
84+
References
85+
**********
86+
87+
.. target-notes::
88+
89+
.. _X-NUCLEO-IDB05A1 website:
90+
http://www.st.com/en/ecosystems/x-nucleo-idb05a1.html
91+
92+
.. _X-NUCLEO-IDB05A1 databrief:
93+
https://www.st.com/resource/en/data_brief/x-nucleo-idb05a1.pdf
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
CONFIG_SPI=y
2+
CONFIG_BT_SPI=y
3+
CONFIG_BT_SPI_BLUENRG=y
4+
CONFIG_BT_HCI_VS_EXT=n
5+
CONFIG_BT_BLUENRG_ACI=y
6+
CONFIG_BT_HCI_ACL_FLOW_CONTROL=n
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
/*
2+
* Copyright (c) 2019 STMicroelectronics
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
&arduino_spi {
8+
cs-gpios = <&arduino_header 16 0>; /* D10 */
9+
10+
spbtle-rf@0 {
11+
compatible = "zephyr,bt-hci-spi";
12+
reg = <0>;
13+
reset-gpios = <&arduino_header 13 0>; /* D7 */
14+
irq-gpios = <&arduino_header 0 0>; /* A0 */
15+
spi-max-frequency = <2000000>;
16+
label = "SPBTLE-RF";
17+
};
18+
};

0 commit comments

Comments
 (0)