xref: /btstack/port/posix-h4-nxp/README.md (revision cc528b9d66cd63ff4662ca3aba554b3ddf559fb2)
1*cc528b9dSMatthias Ringwald# BTstack Port for POSIX Systems with NXP/Marvel H4 Bluetooth Controller
2*cc528b9dSMatthias Ringwald
3*cc528b9dSMatthias Ringwald## Configuration
4*cc528b9dSMatthias RingwaldMost Bluetooth Bluetooth Controllers connected via UART/H4 require some special configuration, e.g. to set the UART baud rate, and/or require firmware patches during startup.
5*cc528b9dSMatthias RingwaldIn this port, we've show how a NXP/Marvell Controller can be configured for use with BTstack. It's unclear if the required firmware file for older Controllers,
6*cc528b9dSMatthias Ringwalde.g. 88W8997, can be detected during the firmware upload. This port selects the firmware for NXP 88W8997.
7*cc528b9dSMatthias RingwaldFor newer Controllers, e.g. IW416 or IW612, the firmware can be selected automatically.
8*cc528b9dSMatthias Ringwald
9*cc528b9dSMatthias Ringwald## Compilation
10*cc528b9dSMatthias Ringwald
11*cc528b9dSMatthias RingwaldBTstack's posix-h4-nxp port does not have additional dependencies. You can directly run cmake and then your default build system. E.g. with Ninja:
12*cc528b9dSMatthias Ringwald
13*cc528b9dSMatthias Ringwald	mkdir build
14*cc528b9dSMatthias Ringwald    cd build
15*cc528b9dSMatthias Ringwald    cmake -G Ninja ..
16*cc528b9dSMatthias Ringwald    ninja
17*cc528b9dSMatthias Ringwald
18*cc528b9dSMatthias Ringwald## Running the examples
19*cc528b9dSMatthias Ringwald
20*cc528b9dSMatthias RingwaldPlease reset the Controller first. On start, BTstack prints the path to the packet log.
21*cc528b9dSMatthias Ringwald
22*cc528b9dSMatthias Ringwald	$ ./gatt_counter
23*cc528b9dSMatthias Ringwald	Packet Log: /tmp/hci_dump.pklg
24*cc528b9dSMatthias Ringwald	BTstack counter 0001
25*cc528b9dSMatthias Ringwald	BTstack up and running on 00:1A:7D:DA:71:13.
26*cc528b9dSMatthias Ringwald
27*cc528b9dSMatthias Ringwald## ToDo
28*cc528b9dSMatthias Ringwald- increase baud rate for firmware upload
29*cc528b9dSMatthias Ringwald- skip firmware upload if firmware already present
30*cc528b9dSMatthias Ringwald- increase baud rate for application
31*cc528b9dSMatthias Ringwald- send SCO audio
32