1cc528b9dSMatthias Ringwald# BTstack Port for POSIX Systems with NXP/Marvel H4 Bluetooth Controller 2cc528b9dSMatthias Ringwald 3cc528b9dSMatthias Ringwald## Configuration 4cc528b9dSMatthias 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. 5cc528b9dSMatthias 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, 6cc528b9dSMatthias Ringwalde.g. 88W8997, can be detected during the firmware upload. This port selects the firmware for NXP 88W8997. 7cc528b9dSMatthias RingwaldFor newer Controllers, e.g. IW416 or IW612, the firmware can be selected automatically. 8cc528b9dSMatthias Ringwald 9cc528b9dSMatthias Ringwald## Compilation 10cc528b9dSMatthias Ringwald 11cc528b9dSMatthias 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: 12cc528b9dSMatthias Ringwald 13cc528b9dSMatthias Ringwald mkdir build 14cc528b9dSMatthias Ringwald cd build 15cc528b9dSMatthias Ringwald cmake -G Ninja .. 16cc528b9dSMatthias Ringwald ninja 17cc528b9dSMatthias Ringwald 18cc528b9dSMatthias Ringwald## Running the examples 19cc528b9dSMatthias Ringwald 20cc528b9dSMatthias RingwaldPlease reset the Controller first. On start, BTstack prints the path to the packet log. 21cc528b9dSMatthias Ringwald 22cc528b9dSMatthias Ringwald $ ./gatt_counter 23cc528b9dSMatthias Ringwald Packet Log: /tmp/hci_dump.pklg 24cc528b9dSMatthias Ringwald BTstack counter 0001 25cc528b9dSMatthias Ringwald BTstack up and running on 00:1A:7D:DA:71:13. 26cc528b9dSMatthias Ringwald 27*34cab2baSMatthias Ringwald## Issues 28*34cab2baSMatthias Ringwald- NXP 88W8997 does not support SCO Flow Control which causes glitches when sending audio 29*34cab2baSMatthias Ringwald 30cc528b9dSMatthias Ringwald## ToDo 31cc528b9dSMatthias Ringwald- increase baud rate for firmware upload 32cc528b9dSMatthias Ringwald- skip firmware upload if firmware already present 33cc528b9dSMatthias Ringwald- increase baud rate for application 34