Рубрики
Без рубрики

Взломать кухонную шкалу

TL; DR: Результат Hertzg / Etekcity … Теги от взлома, JavaScript, Bluetooth, узел.

Hertzg/Etekcity.

ETEKCity Smart Protuction Protocol Reverse Engineering

Недавно я набирал вес и обвиняю все это в COV-19 (выпуск JIRA). Поэтому я думал, что должен управлять моим потреблением пищи и подсчитать калории, поэтому я делал то, что делаю лучше всего, откладывать и пытаться делать другие вещи, пока все еще думая о задаче. Все это + Amazon и мой интерес к Иоту как-то убедил меня купить ETEKCity Smart Nutrition Food Calorie Кухонные цифровые масштабы Отказ

Увлекаясь пробуждением на следующий день после позднего вечера импульсного покупки, я попробовал устройство, немного сыграл с приложением (MEH) и понял, что это просто завышенная кухонная шкала с функцией приложения, чья единственная причина – это добыча данных. После установки в приложении vesync и пропуска как можно большего количества регистрации и воспроизведения с ним достаточно, я решил каким -то образом получить контроль над устройством без необходимости использовать приложение (MEH).

Перед тем, как вступить в технические детали, я хотел бы упомянуть, что никогда раньше не работал с устройствами BLE. Будучи вооруженным 0 техническим знанием Bluetooth низкой энергии, я был (не), оборудованным всем знанием, которые мне нужны и (определенно нет) готовы начать взлом.

Вместевшись в некоторых других устройствах IOT (ESP), мой первый инстинкт должен был разобрать устройство и попытаться найти, как эта вещь работала. Я надеялся, что смогу найти имя и модель микроконтроллера или некоторые порты отладки, выставленные и помеченные, но я был разочарован, чтобы увидеть это.

Печатная плата была помечена здесь и там Но это было не слишком полезно, так как они были просто «идентификаторами компонентов», чтобы выбрать и место. У устройства коммуникации была некоторая информация для меня.

Модуль связи для Bluetooth 4, что я могу начать расследовать.

Следующий шаг должен был попытаться как-то найти, как общаться с этим И, может быть, кто-то еще уже сделал немного взлома 💔 на этом Но я не смог найти информацию для этого устройства 💔. Один из проектов, которые были относины к этому, было Олиексдев/OpenScale

OLIEXDEV/OPENSCALE

Трекер весов с открытым исходным кодом и метрик тела, при поддержке шкал Bluetooth

Трекер весов с открытым исходным кодом и метрик тела, при поддержке шкал Bluetooth

Установить openscale-dev-build.apk Чтобы получить последнюю версию разработки, созданную по Трэвис CI Отказ Также имейте в виду, что эта версия может содержать ошибки, и вы не получаете автоматические обновления.

Контролировать и отслеживать свой вес, ИМТ, жир в организме, воду для тела, мышцы и другие показатели тела в приложении с открытым исходным кодом:

  • имеет простой в использовании пользовательский интерфейс с графиками,
  • Поддерживает различные масштабы Bluetooth,
  • не требует, чтобы вы создали учетную запись,
  • можно настроить только для отображения метрик, которые вы заботитесь о, и
  • уважает вашу конфиденциальность и позволяет решить, что делать с вашими данными.60 “

OpenScale имеет встроенную поддержку ряда масштабов Bluetooth (BLE или «Smart») от многих производителей, например, Береги, Санитас, Юньмай, Сяоми и др. (См. Список моделей ниже). Вместе с нашими пользователями мы постоянно улучшаемся и продлите набор …

Но это было нацелено только на масштабы веса тела 💔.

Я также смог найти проблему GitHub, спрашивая об этом конкретном устройстве и модели, и он был отклонен на очевидную причину 💔.

Привет Это отличное приложение. Это работает как очарование практически для всех устройств. Спасибо за это великое творение. Недавно я купил новую масштаб измерения веса ETEKCity, и это не поддерживается этим приложением.

https://www.etekcity.com/product/100334

здесь Файл журнала Debug прилагается с приложением отладки

openscale_2019-10-17_12-57.txt.

Больше журнала отладки, openscale_2019-10-17_16-04_new.txt

Масштабная информация

Дайте мне знать, если вышеприведенное достаточно или мне нужно дать больше.

Спасибо.

Я люблю js и узел. JS и я чувствовал себя уверенно (по какой-то странной причине) в худшем случае, я могу использовать некоторые инструменты Linux с Child_Process Или даже взломать что -то в C общаться, используя BLE (через USB). Уже было поздно, и я становился бредовым: D.

Теперь я здесь И я хочу иметь возможность, по крайней мере, прочитать измерения. Я быстро погуглил модуль для узла, который был хорошим началом.

благородный/благородный.

Центральный модуль Node.js Bluet (Bluetooth) Центральный модуль

Центральный модуль Node.js Bluetooth Low Energy).

Хотите реализовать периферийное устройство? Оформление Блено

Примечание: MacOS/Mac OS X, Linux, FreeBSD и Windows в настоящее время являются единственными поддерживаемыми ОС. Другие платформы могут быть разработаны позже.

Предварительные условия

Операционные системы X

  • Установить Xcode

Linux.

  • Ядра версия 3.6 или выше
  • libbluetooth-dev.

Ubuntu/Debian/Raspbian

sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev

Убедитесь, что узел На вашем пути, если это нет, некоторые варианты:

Fedora/Other-RPM на основе

sudo yum install bluez bluez-libs bluez-libs-devel

Intel Edison

Смотрите Настройка Intel Edison для разработки Bluetooth LE (SMART)

FreeBSD.

Убедитесь, что у вас есть GNU:

sudo pkg install gmake

Отключить автоматическую загрузку стека Bluetooth по умолчанию, поместив NO-UBT.conf в /usr/local/etc/devd/no-ubt.conf и перезапустить devd ( sudo service devd перезагрузите ).

Разгрузить ng_ubt Модуль ядра, если уже загружен:

sudo kldunload ng_ubt

И начинает взлом и вывод регистрации. С некоторыми удачей я смог угадать правильный сервис, характерный и оказался некоторыми замечаниями, где я мог начать смотреть на протокол.

И около 4 утра утром закончили писать readme и, наконец, устали, чтобы просто ложиться спать и отдыхать.

Hertzg/Etekcity.

ETEKCity Smart Protuction Protocol Reverse Engineering

Это потенциальный проект, который пытается обратный инженер-протокол BTR, который использует масштаб ETEKCity Smart Nutrition (ESN00).

ETEKCity Smart Nutrition Scale (ESN00) ( de | США )

Ble Protocol

В этом разделе описывается протокол (то, что было исследовано до сих пор)

Найти устройство

Адрес устройства случайный Таким образом, способ найти его основан на названии рекламы (тестирован) или данные производителя (не тестировали) Устройство отчеты веса и статус на обслуживание 1801 и характерные 2C12 Отказ

Протокол

Все пакеты имеют эту структуру

Пакеты данных

Пакет данных зависит от значений типа пакета:

Ошибка 0x00 (сброс ошибок) / 0x01 (запускается ошибка) Режим ошибки срабатывается или сброс E0 1 байт
Вал 0x00 (без тары) / 0x01 (режим тары) TARE обновляется (настроен) или сброс D3. 1 байт
Вещь 0x00 Пункт положен или удален из масштаба Е4. 1 байт

Я хотел бы написать (по крайней мере, половина) достойную библиотеку, чтобы прослушать и, возможно, контролировать большой дисплей с информацией с питанием от вне приложения. На данный момент мне нужно устройство Android, чтобы понюхать пакеты и проанализировать результат.

Я на самом деле не знаю, какое устройство выбрать так, может быть, одна поздняя ночь, я выберу случайных дешевых телефонов Android и инвестируйте больше в мою промедление или, может быть, кто-то скажет мне в комментариях, которые отправляются на ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ ¯ \ _ (ツ) _/¯ Отказ

Конечной целью (вероятно) было бы интегрировать его с домашним мостом или домашним помощником и обеспечить его комфортно отображение питательной ценности на основе голосовых команд.

Оригинал: “https://dev.to/hertzg/hacking-ble-kitchen-scale-55io”