好用的非商业免费蓝牙协议栈源码-btstack
github.com/btstack
1. windows上用msys2编译
cd port/window-winusb
make
2. ubuntu上直接编译
cd port/libusb/
make
注意:
hfp_ag_demo.exe
关掉l2cap加强重传
btstack_config.h
//#define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MOD
注意修改成需要连接的设备的地址
static const char * device_addr_string = "00:21:3C:AC:F7:38";
需要加pin的处理流程
packet_handler函数
case HCI_EVENT_PIN_CODE_REQUEST:
// inform about pin code request
printf("Pin code request - using '0000'\n");
hci_event_pin_code_request_get_bd_addr(event, addr);
gap_pin_code_response(addr, "0000");
break;
a2dp_source_demo.exe
关掉l2cap加强重传
btstack_config.h
//#define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MOD
修改目标地址
static const char * device_addr_string = "00:21:3C:AC:F7:38";