2017-02-11 9 views
0

Я использую Android 6.0.1, Sumsung S6 с панелью разработки Dialog. Чтобы уменьшить потребление энергии, я пытаюсь установить максимальный интервал подключения. Он работает при изменении интервала соединения до 300 мс, однако, когда я меняю его еще больше, фактический интервал подключения составляет 30 мс. Максимальный интервал подключения должен составлять 4 с в соответствии со спецификациями BLE, и есть ли у Android разные спецификации? Благодарю.Максимальный интервал подключения Android 6 BLE

+0

Каковы минимальные и максимальные значения интервала соединения, задержки лавирования и значения тайм-аута контроля? – Emil

ответ

1

Я видел ваше сообщение на форуме DA14580. Кажется, вы выбрали 5 секунд для тайм-аута контроля. Но согласно стандарту BLE 4.1 тайм-аут контроля должен быть больше 2 * conn_intv_max. Поэтому, если у вас есть интервал соединения в 4 секунды, вам потребуется минимум времени ожидания 8010 мс (обратите внимание, что разрешение таймаута наблюдения составляет 10 мс). Если вы используете задержку ведомого, вы должны установить тайм-аут контроля на что-то большее, чем 2 * conn_intv * (sup_to + 1).

+0

Привет, Эмиль, большое спасибо за ваш ответ! Здесь я нашел ограничения параметров: https://www.bluetooth.com/specifications/bluetooth-core-specification/technical-considerations, и кажется, что timeout> = conn_intv * (sup_to + 1). Однако, хотя я изменяю тайм-аут до 8010 мс или даже больше, он все еще не работает. Я не знаю, имеет ли Dialog свои спецификации. – Sentimental

+0

Кажется, что их сайт не обновлен. В BT 4.0 это были ограничения, но с BT 4.1 добавлено новое умножение на 2. См. Текущую спецификацию BT 5.0, том 6, часть B, раздел 4.5.2. Если он по-прежнему не работает, я предлагаю вам взглянуть на snooplog Bluetooth HCI, сгенерированный Android, так как там вы можете увидеть точную процедуру обновления параметров подключения и там, где это происходит неправильно. – Emil