как установить размер уведомления Corebluetooth от периферийного устройства

#ios #bluetooth-lowenergy #core-bluetooth

#iOS #bluetooth -низкое энергопотребление #ядро-bluetooth

Вопрос:

Мой ObjC corebluetooth central на моем iPhone iOS получает «поток» уведомлений * от моего виртуального периферийного устройства BLE, работающего на iPad. Но каждое уведомление составляет всего 16 байт.

— * Не поток байтов, а «поток» непрерывных, непрерывных наборов байтов уведомлений, где каждый набор (т.е. пакет) содержит одно уведомление.

Как я могу увеличить размер каждого уведомления BLE?
Больший размер уменьшит мою серверную обработку в центре.

Комментарии:

1. Это зависит от периферийного устройства, сколько данных оно отправляет. Характеристики BLE не являются потоком; Они имеют определенное количество байтов. Максимальный размер передачи характеристики BLE довольно ограничен; около 30-60 байт. Если у вас действительно есть поток и вы можете изменить периферийное устройство, вы можете использовать L2Cap канал

2. Не поток байтов, а «поток» непрерывных, непрерывных наборов байтов уведомлений, где каждый набор (т.е. пакет) содержит одно уведомление

Ответ №1:

Как упоминал Paulw11, периферийное устройство решает, сколько данных оно отправляет. Однако, если ваша цель состоит в том, чтобы уменьшить серверную обработку в центре за счет увеличения пропускной способности, то у вас есть несколько способов добиться этого, а именно: уменьшение интервала подключения, увеличение ATT_MTU, использование расширения длины данных и (если оба устройства поддерживают функции BT5) с использованием модуляции 2MPHY. Ссылки ниже содержат более подробную информацию об этом:-