Пульт красивый, но непонятный. Вскрываем BLE протокол
Однако при ближайшем знакомстве выяснилось: пульт не так прост, как кажется. Он общается с устройствами по BLE, но документации на это нигде нет. Органы управления очевидны, но как именно они преобразуются в команды — загадка. Для самодельщика это вызов: взять красивую, но непонятную железку и заставить её работать на себя.
Самое интересное началось при попытке подключить пульт к собственному контроллеру. Стоковое приложение или примеры кода не подходили, поэтому пришлось идти путём реверс-инжиниринга. Перехват BLE-трафика показал, что пульт шлёт пакеты с данными, где упакованы значения стиков и кнопок. Но как именно они кодируются — сразу не разобрать. Пришлось поэкспериментировать: двигать стиками, нажимать кнопки и наблюдать за изменениями в дампе. Постепенно картина прояснилась, и протокол перестал быть тайной.
Теперь этот пульт можно использовать в собственных проектах: он отлично подходит для управления роботами, дронами или другими самоделками. Найденные закономерности позволяют легко декодировать сигналы и передавать их в любую систему управления. Главное — не бояться вскрывать протоколы, даже если производитель не оставил ключей. История с MBBTCTR01 показывает: иногда самый быстрый путь — взять в руки анализатор и разобраться самому, а результат превосходит ожидания.
Источник: habr.com
Поделиться