We are trying to connect an iOS device to our BLE application in Windows 10 to send larger amounts of data.
We were already able to successfully write data. To increase the throughput we want to implement L2CAP channel between both devices. While on iOS side we have an interface, I couldn't find any documentation regarding this topic in the Microsoft documentation. We are currently working on the 1803 update of Windows 10 and according to this publication of microsoft there should be L2CAP supported: https://support.microsoft.com/de-de/help/10568/windows-10-supported-bluetooth-profiles
With the following code we can publish a characteristic to allow writing without response:
public GenericGattCharacteristic(GattLocalCharacteristic characteristic, GenericGattService service)
{
Characteristic = characteristic;
ParentService = service;
if (Characteristic.CharacteristicProperties.HasFlag(GattCharacteristicProperties.Read))
{
Characteristic.ReadRequested += Characteristic_ReadRequested;
}
if (Characteristic.CharacteristicProperties.HasFlag(GattCharacteristicProperties.Write) ||
Characteristic.CharacteristicProperties.HasFlag(GattCharacteristicProperties.WriteWithoutResponse))
{
Characteristic.WriteRequested += Characteristic_WriteRequested;
}
Characteristic.SubscribedClientsChanged += Characteristic_SubscribedClientsChanged;
}
Does anyone have some further information on how to use L2CAP in an UWP application?