• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Как выкачать прошивку с мк phy 6202 установленном в thermo beacon датчик температуры.

pvvx

Активный участник сообщества
Я string в bin перевел но теперь такая картина))
Это в сторону соединения пинов модуля tx/rx/reset с UART tx/rx/rst и не относится к софту

У моего ble постоянный мак, вопрос в том как мне сопрягать с нужным мне другим ble а не с приложением официальным.
Что вы имеете в виду в понятии "сопрягать"?
У BLE есть "привязка" - когда устройство передает в флагах направленную рекламу, что ответ надо направлять на конкретный MAC.
Для beacon это безразлично, т.к. его реклама не направленная и без ответная.
 

pvvx

Активный участник сообщества
Тоесть получается что он не получил ответа =0x и #OK, куда копать будем сэр?)
Копать в сторону как запустить загрузчик встроенный в ROM чипа. Конкретно - как включить питание и какие пины куда, да прочие соединения.
 

pvvx

Активный участник сообщества
И есть такая тема:
 

pvvx

Активный участник сообщества
Предполагаю, что вам надо начать с начала:
Добрый день, имеется датчик китайский thearmobeacon температуры и влажности но нигде не могу найти команды управления через терминал.
Beacon – это маяк, т.е. передаваемый рекламный пакет от датчика с данными через определенные интервалы. Для BLE устройств Beacon передается по трем каналам.
Чтение такого пакета производится путем сканирования BLE реклам на принимающем адаптере. При этом не производится BLE соединение.

Что имеется в виду в китайском понятии ‘thearmobeacon’ никому не известно.

Если это предполагает соединение с BLE устройством, то вам необходимо узнать UUID сервисов и их характеристик. Это возможно на Android смартфоне в программе “nRF Connect”. В остальных случаях и других ОС ПО часто некорректно и имеет массу ошибок в драйверах и kernel.

После определения UUID сделать поиск в google найти и нет правильную программу, а далее уже сотворить другие действия, в зависимости от итогов...
Можно ли выкачать с него прошивку и посмотреть что в ней, так как какието команды в ней есть ибо он отвечает #ER значит должен ответить и OK. Прошивка скорее всего написана на python. МК phy6202.
Прошивка написана на Си и содержит бинарные данные, возможно зашифрованные, т.к. загрузчик чипа поддерживает шифрацию.
Если вы хотите дублировать устройство, то только тогда есть смысл её чтения.
 

Olef000

New member
Предполагаю, что вам надо начать с начала:

Beacon – это маяк, т.е. передаваемый рекламный пакет от датчика с данными через определенные интервалы. Для BLE устройств Beacon передается по трем каналам.
Чтение такого пакета производится путем сканирования BLE реклам на принимающем адаптере. При этом не производится BLE соединение.

Что имеется в виду в китайском понятии ‘thearmobeacon’ никому не известно.

Если это предполагает соединение с BLE устройством, то вам необходимо узнать UUID сервисов и их характеристик. Это возможно на Android смартфоне в программе “nRF Connect”. В остальных случаях и других ОС ПО часто некорректно и имеет массу ошибок в драйверах и kernel.

После определения UUID сделать поиск в google найти и нет правильную программу, а далее уже сотворить другие действия, в зависимости от итогов...
Прошивка написана на Си и содержит бинарные данные, возможно зашифрованные, т.к. загрузчик чипа поддерживает шифрацию.
Если вы хотите дублировать устройство, то только тогда есть смысл её чтения.
Здесь вы мне Америку не открыли) меня. Мучают два вопроса первый почему не работает rdreg скрин ранее присланных остаётся актуальный даже после исправлений ваших, хотя на терминале rdreg работает и отвечает =0x......#OK) второй как принимать advert пакеты с маяка на BLE HMsoft 10 выводить на терминал полученные данные пакета.) Спасибо
 

Olef000

New member
Здесь вы мне Америку не открыли) меня. Мучают два вопроса первый почему не работает rdreg скрин ранее присланных остаётся актуальный даже после исправлений ваших, хотя на терминале rdreg работает и отвечает =0x......#OK) второй как принимать advert пакеты с маяка на BLE HMsoft 10 выводить на терминал полученные данные пакета.) Спасибо
Я конечно могу заморочиться и считать все регистры по одному адресу каждый записывая блокнот но на это уйдет уйма времени. Либо писать код перебора адресов на том же Си, только зачем если уже есть подобное на пайтоне.
 

pvvx

Активный участник сообщества
Здесь вы мне Америку не открыли) меня. Мучают два вопроса первый почему не работает rdreg скрин ранее присланных остаётся актуальный даже после исправлений ваших, хотя на терминале rdreg работает и отвечает =0x......#OK) второй как принимать advert пакеты с маяка на BLE HMsoft 10 выводить на терминал полученные данные пакета.) Спасибо
Текущая версия, опубликованная 13 hours ago, полностью работает c Python от 3.10+. Проверено на рабочем образце с PHY6202.
Но уже вышел Python 3.11, а завтра и pyserial может смениться. Питон - это такое дело - сегодня работает, завтра всё поменяют, включая либы :)
 

pvvx

Активный участник сообщества
Я конечно могу заморочиться и считать все регистры по одному адресу каждый записывая блокнот но на это уйдет уйма времени. Либо писать код перебора адресов на том же Си, только зачем если уже есть подобное на пайтоне.
Вы не написали - нафига это всё вам?
Уверен, что есть решение и оно не включает чтение Flash.
А если подходить чуть-чуть немного профессионально, для уменьшения потребления и возможности работы устройства от батареи CR2032 более года, то явно надо переписывать программу. К примеру SDK уже содержит пример iBeacon и т.д....
 

pvvx

Активный участник сообщества
Вы в совершенстве владеете Ghidra или купили IDA и пишите к ним плагины?

Если нет – тогда зачем вам считанная Flash?

Иначе вот это
нигде не могу найти команды управления через терминал.
По тому, что нет такого “терминала”. Есть только “nRF Connect” с посылкой бинарных данных набираемых вручную.

С Python у вас тоже пока проблемы, а для Linux систем ваш указанный ThermoBeacon c bcmd.py требует Bleak который завязан на последней версии BlueZ и D-Bus, которых нема и нет возможности закинуть в Rpi и подобные из-за старого ядра Linux. Т.е. никакой автоматизации и интеграции во всякие "Вумные дома" вы не получите, если не самостоятельно не пишите все утилиты или не собираете новые ядра Linux для малых систем.

Для остального применения достаточно поковырять какие там у устройства есть UUID при соединении в том-же “nRF Connect” и налякать что-то простейшее на том, что есть и работает. Чтение прошивки и паяльники при этом не требуются.

Указанный 'ThermoBeacon' наверняка будет работать с вашим неизвестным ‘ThermoBeacon’ на PC, ели поменять пару строк…

Следующий простейший вариант – найти в устройстве UUID OTA и залить новую, свою, программу.

PS: Это всё гадания на "кофейной гуще", т.к. вы всё скрываете и от вас нет никакой информации... На сим откланиваюсь, пока не напишите что реально то надо?
 
Сверху Снизу