Tasty One Top и приложение для Android

Всё началось с того что Ксюша решила купить себе умную индукционную плиту Tasty One Top в надежде что это позволит ей более удобно жарить всякое во фритюре с удобным контролем температуры и уменьшенным расходом масла

Однако, всё сразу пошло не так как ожидалось. В первую очередь оказалось что управляется эта плита только с iPhone (даже iPad неработает), ну а дальше ещё и выяснилось что замер температуры нормально работает только при погружении щупа в жидкость как минимум на 5 сантиметров - много масла!

В любом случае первой важной задачей было подружить One Top с телефоном на андроиде - что и было поручено мне. "Ты же умный, сломай iPhone приложение чтобы заработало на андроиде", так что пришлось разбиратья как же всё это работает.

Сам процесс - ниже, но в начале для тех кому прсто нужно приложение для управления One Top без BuzzFeed: OneTop Control

[One Top Setup]

One Top управляется по протоколу Bluetooth Low Energy (BT LE) так что первым дело нужно было найти что-то чтобы подслушать переговоры телефона и плитки.

Один из самых дешевых вариантов BlueFruit 3.0 от Adafruit, за всего лишь $25. Инструкция по использованию на сайте AdaFruit.

При условии полного соблюдения инструкции (используйте строг те версии софта что они рекомендуют - не смотря на то что они очень старые!) - работает подслушиватель просто превосходно.

Расположите телефон и плитку (или что вы там подслушиваете) рядом с друг другом и подслушиватель рядом с теоефоном. Смотрите за лампочками, если после установления соединения ничего не горит или не моргая горит красный светодиод - что-то пошло не так и процесс соединения надо повторить.

[Bluefruit blinking]

Wireshark UI

В Wireshark можно удобно отсортировать пакеты по протоколу, для BT LE важен протокол ATT - так как все действия происходят через атрибуты. Сравните что происходило во время разных действий с тем что видно в атрибутах (ведите записи какие кнопки нажимались/инструкции подавались!).

И затем...

[One Top Blinking]

Ура! Заработало!

Another useful tool to examine attributes is called LightBlue - it's an android app that lets you to connect to random devices and see and modify all attributes.

Ещё один удобный инструмент - андроидное приложение Light Blue. Оно позволяет просмотреть все атрибуты устройства, проверить из значения и поменять те их них которые можно менять. С его помощью удалось обнаружить настройки мощности и чтение температуры, так же зная это всё заранее проще оказалось читать данные с перехваченных сообщений.

Tags: