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

reverse китайской железки

Alexey_gans

New member
Купили китайскую железяку (датчик разных газов в атмосфере и тп) с wifi интерфейсом. Не заводится (есть софтина под андроид, которая по идее должна с железякой связаться и дать сделать все настройки, но ... не работает). Продавец не отзывается...
Wifi сделан на esp8266 (esp12-e судя по приведенным здесь картинкам).
Прошу совета-помощи - есть вариант подцепиться к esp8266 и считать что там она хочет или перенастроить ее или что-то еще? Там не бывает защиты от считывания прошивки?
Руки растут из более менее нужного места, но опыта работы с таким железом нет. Я так понимаю, что надо начать с usb->uart переходника (где и какой в МСК посоветуете брать)

Спасибо
 

Юрий Ботов

Moderator
Команда форума
Wifi сделан на esp8266
Но это только wifi. Других процессоров нет?
Там не бывает защиты от считывания прошивки?
Никакой. Вся программа во внешней SPI-флэшке которую на самом деле и надо прочитать.
Я так понимаю, что надо начать с usb->uart переходника
Любой 3.3 вольтовый.
 

Alexey_gans

New member
Но это только wifi. Других процессоров нет? Никакой. Вся программа во внешней SPI-флэшке которую на самом деле и надо прочитать. Любой 3.3 вольтовый.
Значит я неправильно понял что 8266 законченный wifi интерфейс со своими "мозгами".
Да, на плате 25q16 и stm32f407. и еще не распаянный UART. Получается надо его восстановить и пытаться через него. Но, боюсь, это уже задача другого уровня сложности. А так была идея извлечь настройки WiFi и либо изменить их, либо дать ему что он хочет. Сейчас даже не понятна идеология :(
 

arbuzmaster

New member
Выковыривание прошивки из модуля Вам ничего не даст, так как ее потом придется декомпилировать, что не получится в таком виде о котором Вы возможно подумали! Самый простой вариант - разобраться в схеме устройства и накатать свою прошивку или замучить до смерти этого китайца, чтобы он дал вам бинарник прошивки! Дело все в том, что прошивка - не то, что Вы набираете например в Arduino IDE
Код:
#include <ESP8266WiFi.h>
#include <WebSocketsClient.h>
#include <ArduinoJson.h>
#include <Hash.h>
#include <IRremoteESP8266.h>
//#include <OneWire.h>
//#include <DallasTemperature.h>


#define USE_SERIAL Serial
//#define ONE_WIRE_BUS 0                    // порт GPIO для подключения шины One_Wire
#define SENSORS_INTERVAL 3000             // Интервал отправки значений температуры и освещенности в м.сек.(1000 = 1сек)
#define TEMPERATURE_INTERVAL 60000        // Интервал получения значений температуры с датчика в м.сек.(1000 = 1сек)
WebSocketsClient webSocket;
а уже результат компиляции кода.Снимок экрана из 2017-05-22 22-11-50.png
 
Последнее редактирование:

Alexey_gans

New member
ну это я понимаю :)
Поэтому и была версия что если можно выдрать инфу из esp - это было бы решение. А так если только там в явном (читаемом) виде задано что и как, а так конечно - тоска, на такие подвиги я не готов.
(там вроде как смысл такой, что железка должна выйти сама отдать инфу на сайт, а я зарегаться на сайте и через андроид аппликуху считав ее QR код смогу на нее попасть и тп. Но не работает. И китайцы молчат. Похоже надо самому такое дизайнить. Хотя лет 20 назад бинарники реверсить мне приходилось, но это был другой мир :)
 

arbuzmaster

New member
По сути железяка изначально должна быть в режиме точки доступа, чтобы ее настроить. У Вас не появляется новая точка доступа?
 

Alexey_gans

New member
По сути железяка изначально должна быть в режиме точки доступа, чтобы ее настроить. У Вас не появляется новая точка доступа?
Вот нет. И так сканили и так сканили - молчит. Поэтому была взята за версию вышеприведенная версия. Собственно вот железка: Air Quality Detector Sensor-109.25 Online Shopping| GearBest.com
 

Alexey_gans

New member
Какой датчик газов стоит?
Без датчика эта игрушка стоит 10 долларов.
Напишите китайцу пусть даст прошивку или ссылку на сайт разработчика.
Датчиков там вагон, включая продувной с вентилятором ( CO, H2S, пыль, свет, влажность, температура). Опять буду писать :-\
 

vad7

Active member
Значит я неправильно понял что 8266 законченный wifi интерфейс со своими "мозгами".
Да, на плате 25q16 и stm32f407.
Ну раз стоит stm, значит, скорее всего, что esp8266 там только в качеcтве приема-передачи wifi, и прошивка в нем какая-нить стандартная для AT команд.
Фотки бы посмотреть платы.
 

vad7

Active member
Alexey_gans, модуль esp-12f, пины 22 и 21 (TX, RX) модуля можно отсоединить от схемы, временно перерезав и через них считать прошивку, ну и посмотреть, что в них модуль выводит в терминале.
Также нужно проверить, что при включении на пинах 1, 3, 8, 18, 17, 16.
Светодиод синий на модуле мигает при включении?
 
Последнее редактирование:

Alexey_gans

New member
Alexey_gans, модуль esp-12f, пины 22 и 21 (TX, RX) модуля можно отсоединить от схемы, временно перерезав и через них считать прошивку, ну и посмотреть, что в них модуль выводит в терминале.
Также нужно проверить, что при включении на пинах 1, 3, 8, 18, 17, 16.
Светодиод синий на модуле мигает при включении?
ну вот я собственно и ожидал такой ответ в самом начале. Хорошо - буду пробовать
 

Alexey_gans

New member
синий светодиод: при включении две коротких вспышки, пауза и еще одна короткая. потом выключен
 

Alexey_gans

New member
остальные - надо придумать как момент включения мониторить. После же включения на всех высокий уровень (питание), кроме 16 - там ноль.
 

vad7

Active member
Alexey_gans, модуль по крайней мере работает или пытается.
Далее нужно смотреть в терминале.
 

Alexey_gans

New member
Спасибо, куплю USB-UART и возьмусь за опыты.
А то что у меня по питанию идет 5 вольт это правильно? (я еще проверю - вдруг калибровка слетела, но запало что именно 5 вольт было)
 

CodeNameHawk

Moderator
Команда форума
А вас не настораживает, что у вас на 16 ноль, на 15 высокий уровень?
5В для есп много.
 
Сверху Снизу