@dmitriy_domaskin
.NET Developer

Как увеличить скорость передачи данных по BLE?

Доброго времени суток. Имею hex файл прошивки размером около 60кб, который скармливаю своему устройству по BLE. Фактически файл полностью передан за минут 5, что очень много. Действую следуюим образом. Передача каждого конкретного сообщения
public class BluetoothConnector 
{
///…
        public GattCharacteristic WriteCaracteristic { get; private set; }
///...

    public async void SendMessageAsync(byte[] byteMessage)
    {
        var characteristic = WriteCaracteristic;

        if (characteristic == null)
        {
            return;
        }

        var writer = new DataWriter();
        writer.WriteBytes(byteMessage);
        var result = await characteristic.WriteValueAsync(writer.DetachBuffer());
    }
///...
}

Передача прошивки
public class MessageManager
{
    ///...
    public BluetoothConnector Connector { get; set; }
    ///...
    public void StartProgramming(List<byte[]> programm)
    {
        foreach (var message in programm)
        {
            Connector.SendMessageAsync(message);
        }         
    }
///...
}


List program имеет длину около 1000. И по факту цикл foreach отрабатывает за пару секунд, но данные до устройства идут очень долго. Использую стандартную uwp библиотеку для работы с BLE. Ничего о регулировке скорости передачи данных не нашел. Можно ли что-то с этим сделать?
  • Вопрос задан
  • 48 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы