Bluetooth 如何更改Windows CE 6.0R3上的L2CAP MTU?

Bluetooth 如何更改Windows CE 6.0R3上的L2CAP MTU?,bluetooth,windows-ce,Bluetooth,Windows Ce,我正在尝试将蓝牙RFCOMM链接的MTU更改为Windows CE设备,但失败。文档说明我可以使用setsockopt()和SO_BTH_SET_MTU选项来更改侦听或非连接套接字的MTU 问题是,如果我将客户机/服务器套接字MTU设置为1024(当然,在两个单独的设备上),MTU总是协商回默认值672!如果我将侦听套接字上的最小MTU设置为1024,则客户端无法连接,这使我相信客户端套接字忽略了MTU配置 是否有人有在Windows CE 6.0R3设备上更改默认MTU的经验?我不知道您是在两

我正在尝试将蓝牙RFCOMM链接的MTU更改为Windows CE设备,但失败。文档说明我可以使用setsockopt()和SO_BTH_SET_MTU选项来更改侦听或非连接套接字的MTU

问题是,如果我将客户机/服务器套接字MTU设置为1024(当然,在两个单独的设备上),MTU总是协商回默认值672!如果我将侦听套接字上的最小MTU设置为1024,则客户端无法连接,这使我相信客户端套接字忽略了MTU配置


是否有人有在Windows CE 6.0R3设备上更改默认MTU的经验?

我不知道您是在两台您控制的设备(服务器和客户端)上更改MTU,还是客户端设备是第三方设备。
在第二种情况下,它可能无法处理您配置的最小MTU,这解释了它无法连接的原因。

我只是想优化我们两台设备之间的通信。这些设备完全相同,不过我也可以使用PC作为测试设备之一。Windows CE支持SO_BTH_SET_MTU sockopt,在连接协商之前它似乎工作正常。如果您可以使用PC进行测试,这可能有助于了解问题是在侦听端还是在连接端(或两者!)。将PC用作“服务器”或“客户端”,并检查其是否工作。它不能与PC设备或设备设备的任何组合工作。MTU始终恢复为672字节。我假设在WINCE上,这部分堆栈的所有工作都在内核中完成,但这可能是蓝牙芯片本身的一个限制。您使用的是哪种蓝牙芯片?您可以尝试使用基于BTUSB的USB加密狗,并检查是否遇到相同的问题。它是嵌入式设备上的Infineon PBA 31308。没有办法将USB设备连接到我们的微处理器。