Zigbee Sonoff Zigbee Bridge pro: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 147: Строка 147:
   
 
==Прошивка==
 
==Прошивка==
Скачать можно тут: http://ota.tasmota.com/tasmota/release/
+
Скачать можно тут: http://ota.tasmota.com/tasmota32/release/
Нужный файл - tasmota-zbbridge.bin
+
Нужный файл - <code>tasmota32-zbbrdgpro.bin</code> (32 подразумевает ESP32)
 
<code>esptool.py --port /dev/tty.usbserial-A5XK3RJT write_flash -fs 1MB -fm dout 0x0 ~/Downloads/tasmota-zbbridge.bin</code>
 
<code>esptool.py --port /dev/tty.usbserial-A5XK3RJT write_flash -fs 1MB -fm dout 0x0 ~/Downloads/tasmota-zbbridge.bin</code>
 
<PRE>
 
<PRE>

Версия 18:18, 12 мая 2024

Sonoff Zigbee Bridge Pro

Задача - отвязать от всяких облаков, вся работа должна проходить локально

Что нужно

Пайка

Распаять гребенку что бы было проще жить (конечно надо было обточить но руки-крюки)

Sonoff bridge rx tx gpio power.jpg

Подключение

У меня вот такой (плюс/минус) конвертер с USB на 3.3/5v Serial

FTDI-USB-to-serial-converter.png

В случае с ESP требуется уровеь 3.3V - выбрать на плате джампером, проверить вольтметром


Подключаю вот так:

How to connect sonoff bridge to usb.JPG

На что тут смотреть:

  • Синими стрелками помечена земля - важно что бы GPIO0 был подключен к земле, это переводит плату в режим прошивки. Если это не сделать, то загрузится текущая прошивка
  • RX/TX подключается крест на крест, выход RX одной платы к TX другой (очевидно конечно)
  • Земля общая (тут она включена в макетную плату и от нее на 2 точки - GPIO0 и GRN на бридже)
  • Питание у меня подается отдельно от ноута на конвертер и отдельно от блока питания на бридж. Есть инструкции где советуют брать питание 3.3V с конвертера, но у меня в таком режиме бридж уходит в циклическю перезагрузку

Проверка

Если плата работает в обычном режиме то в minicom (имя порта /dev/tty.usbserial-A5XK3RJT будет отличаться от системы к системе и похоже зависит от серийника конвертера)
то при загрузке покажет что-то вот такое, светодилот мигает

Welcome to minicom 2.8

OPTIONS:
Compiled on Nov 18 2022, 07:58:18.
Port /dev/tty.usbserial-A5XK3RJT, 16:23:45

Press CTRL-A Z for help on special keys

ets Jul 29 2019 12:21:46

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:4
load:0x3fff0034,len:6976
ho 0 tail 12 room 4
load:0x40078000,len:13072
load:0x40080400,len:3896
entry 0x40080688
{V���c��Vj���k{�����j{��WBj{��W�c��FZc�����c��vc��B�Bn��c��B�NBJB�"��Bv�JZJj{�҇�NBBB�"��B�BJJj?{��B�OBCJԦ��B҄BJjj{V�vc�����j{���J�Rfnj�{����V�fBK�{���j�JfO��{�����r?Jj�{����VJfJJ�{�����J�b[��{V���Ncj�����jZ�������ets Jul 

Если все сделано верно и плата в режиме прошивки то в миникоме видно что-то такое (светодиод горит постоянно)

rst:0x1 (POWERON_RESET),boot:0x3 (DOWNLOAD_BOOT(UART0/UART1/SDIO_REI_REO_V2))
waiting for download

Софт

Определение типа платы

esptool.py --port /dev/cu.usbserial-A5XK3RJT flash_id (у меня в системе использование /dev/tty.usbserial-A5XK3RJT и /dev/cu.usbserial-A5XK3RJT ведет к одинаковым результатам хотя формально это 2 разных устройства)


esptool.py v4.7.0
Serial port /dev/cu.usbserial-A5XK3RJT
Connecting.......
Detecting chip type... Unsupported detection protocol, switching and trying again...
Connecting...
Detecting chip type... ESP32
Chip is ESP32-D0WD-V3 (revision v3.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 0c:dc:7e:32:81:fc
Uploading stub...
Running stub...
Stub running...
Manufacturer: 5e
Device: 4016
Detected flash size: 4MB
Hard resetting via RTS pin...

@esp_tool -pCOM5 -b115200 -a0x0000 -s0x100000 -or esp82XX.bin

Бекап прошивки

esptool.py -b 115200 --port /dev/tty.usbserial-A5XK3RJT read_flash 0x000000 0x400000 soboff_bridge_pro_original_software.bin

  • Адреса 0x000000 0x400000 ожначают читать все 4М (а размер флеша указан выше)
esptool.py v4.7.0
Serial port /dev/tty.usbserial-A5XK3RJT
Connecting...
Detecting chip type... Unsupported detection protocol, switching and trying again...
Connecting...
Detecting chip type... ESP32
Chip is ESP32-D0WD-V3 (revision v3.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 0c:dc:7e:32:81:fc
Stub is already running. No upload is necessary.
2097152 (100 %)
2097152 (100 %)
Read 2097152 bytes at 0x00000000 in 196.8 seconds (85.3 kbit/s)...
Hard resetting via RTS pin...

Скачалось 2М, хотя размер флеша выше писал 4М

ls -lsah soboff_bridge_pro_original_software.bin
4096 -rw-r--r--  1 mmazur  staff   4.0M May 12 17:34 soboff_bridge_pro_original_software.bin

Очистка флеша перед записью

esptool.py --port /dev/tty.usbserial-A5XK3RJT erase_flash

esptool.py v4.7.0
Serial port /dev/tty.usbserial-A5XK3RJT
Connecting......
Detecting chip type... Unsupported detection protocol, switching and trying again...
Connecting...
Detecting chip type... ESP32
Chip is ESP32-D0WD-V3 (revision v3.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 0c:dc:7e:32:81:fc
Uploading stub...
Running stub...
Stub running...
Erasing flash (this may take a while)...
Chip erase completed successfully in 13.8s
Hard resetting via RTS pin...

Прошивка

Скачать можно тут: http://ota.tasmota.com/tasmota32/release/ Нужный файл - tasmota32-zbbrdgpro.bin (32 подразумевает ESP32) esptool.py --port /dev/tty.usbserial-A5XK3RJT write_flash -fs 1MB -fm dout 0x0 ~/Downloads/tasmota-zbbridge.bin

esptool.py v4.7.0
Serial port /dev/tty.usbserial-A5XK3RJT
Connecting...
Detecting chip type... Unsupported detection protocol, switching and trying again...
Connecting...
Detecting chip type... ESP32
Chip is ESP32-D0WD-V3 (revision v3.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 0c:dc:7e:32:81:fc
Stub is already running. No upload is necessary.
Configuring flash size...
Unexpected chip id in image. Expected 0 but value was 3584. Is this image for a different chip model?
Flash will be erased from 0x00000000 to 0x000b9fff...
Compressed 760064 bytes to 532981...
Wrote 760064 bytes (532981 compressed) at 0x00000000 in 47.1 seconds (effective 129.0 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...