export PKG_CONFIG_LIBDIR=/usr/arm-xscale-linux-gnu/lib/pkgconfig pkg-config --list-all <-- 先确认交叉编译环境下,bluez,dbus等是否已经安装. 确认后接着就可以交叉编译hcidump-1.42了 ./configure --host=arm-xscale-linux-gnu --prefix=/usr/arm-xscale-linux-gnu make make install 交叉编译成功后把PC上整个目录 /usr/arm-xscale-linux-gnu/sbin/hcidump 拷贝到 arm 板上的相同路径下. 在板子上先初始化bluetooth device #insmod bluetooth.ko #insmod hci_uart.ko #insmod l2cap.ko #insdmo rfcomm.ko #reset_set_bluetooth_gpio <-- 这是我们板子上蓝牙设备工作的开关,同时还控制着一盏蓝色led指示灯. #bccmd -t bcsp -d /dev/ttyS1 psload -r ./blue_core4.psr <-- 初始化pskey #hciattach -s 921600 ttyS1 bcsp 921600 #hciconfig hci0 reset 接着运行 #hcidump 在另一个控制台下运行测试程序 obex_test XX:XX:XX:XX:XX:XX 运行起来可以看hcidump所在的控制台,打印出了HCI 层的log >HCI Event: Command Status (0x0f) plen 4 >HCI Event: Connect Complete (0x03) plen 11 ... 参考Bluetooth Core V2.1 + EDR.pdf 接可以知道每个Event的内容了.