Merge branch 'master' of github.com:pvvx/THB2

This commit is contained in:
pvvx 2024-02-24 19:29:28 +03:00
commit 947b371563
2 changed files with 42 additions and 17 deletions

View file

@ -1,4 +1,5 @@
# BTHome THB1, THB2, BTH01, TH05(HW: v1.3..1.6), TH05F
# BTHome THB1, THB2, BTH01, TH05(HW: v1.3..1.6), TH05F
Custom firmware for Tuya devices on the PHY622x2 chipset
| [THB1](https://pvvx.github.io/THB1) | [THB2](https://pvvx.github.io/THB2) | [BTH01](https://pvvx.github.io/BTH01/) | [TH05_V1.3](https://pvvx.github.io/TH05-v1.3) | [TH05_V1.4](https://pvvx.github.io/TH-05) | [TH05F](https://pvvx.github.io/TH05F) |
|:---:|:---:|:---:|:---:|:---:|:---:|
@ -6,7 +7,7 @@ Custom firmware for Tuya devices on the PHY622x2 chipset
* Программа для настройки и BLE OTA [PHY62x2BTHome.html](https://pvvx.github.io/THB2/web/PHY62x2BTHome.html)
## Прошивки Boot и APP:
## Прошивки Boot и APP
* Прошивка [Boot](https://github.com/pvvx/THB2?tab=readme-ov-file#fw-boot-%D0%B8-ota) имеет минимум функций. Boot используются только для выполнения OTA - для загрузки полнофункциональной версии APP (Application - файлы *.bin).
* Внешне отличить тип устройства возможно по символу смайлика на экране.
@ -20,7 +21,7 @@ Custom firmware for Tuya devices on the PHY622x2 chipset
| [TH05_V1.3](https://pvvx.github.io/TH05-v1.3) | BOOT_TH05D_v14.hex | TH05D_v14.bin | RSH-TH05-V1.3 с чипом BL55072 |
| [TH05F](https://pvvx.github.io/TH05F) | BOOT_TH05F_v14.hex | TH05F_v14.bin | TH05Y_V1.1, TH05Y_V1.2 с чипом QD01 2332 NT |
## Основные характеристики:
## Основные характеристики
! ри настройках по умолчанию_ !
@ -35,7 +36,7 @@ Custom firmware for Tuya devices on the PHY622x2 chipset
* Обработка входного контакта со счетчиком для передаваемых событий [Open/Close](https://github.com/pvvx/THB2/issues/10#issuecomment-1935169274)
* Обработка выходного контакта переключаемого по устанавливаемой температуре и/или влажности с гистерезисом
## История версий:
## История версий
| N | Описание |
|---|--- |
@ -45,7 +46,7 @@ Custom firmware for Tuya devices on the PHY622x2 chipset
| 1.3 | Добавлен THB1 и TH05V1.3. Следующий этап уменьшения потребления для версий с LCD дисплеем и опция отключения дисплея. |
| 1.4 | Стабилизация соединения для всех вариантов устройств. Добавлен [TH05F](https://pvvx.github.io/TH05F). Коррекция хода RTC. Изменено BLE имя для TH05_V1.3 на "TH05D" |
## Прошивка:
## Прошивка
Прошить устройство програмой Boot-OTA возможно через USB-COM адаптер с выходами на 3.3В:
@ -59,14 +60,31 @@ Custom firmware for Tuya devices on the PHY622x2 chipset
| RX | TX1 |
| RTS | RESET |
Если на адаптере отсутствует RST пин, во время запуска скрипта следует подключить RESET пин до GND (вомзожно потребуется несколько попыток)
Название контактов на устройстве смотреть в описании по ссылкам: [THB1](https://pvvx.github.io/THB1), [THB2](https://pvvx.github.io/THB2), [BTH01](https://pvvx.github.io/BTH01/), [TH05_V1.3](https://pvvx.github.io/TH05-v1.3), [TH05_V1.4](https://pvvx.github.io/TH-05)
2. Запустить:
2. Установить python3 и необходимые библиотеки
```txt
pip3 install -r requirements.txt
```
3. Запустить:
```txt
python3 rdwr_phy62x2.py -p COM11 -e -r wh BOOT_xxx_vxx.hex
```
3. Прошивка Boot-OTA завершена. Устройство работает.
4. Далее загружаем полную версию по OTA в [PHY62x2BTHome.html](https://pvvx.github.io/THB2/web/PHY62x2BTHome.html).
4. Прошивка Boot-OTA завершена. Устройство работает. Адаптер можно отсоединить.
5. Загружаем полную версию прошивки по OTA. Для этого:
1. Подаем питание на датчик (устройство).
2. Переходим на [PHY62x2BTHome.html](https://pvvx.github.io/THB2/web/PHY62x2BTHome.html).
3. Жмем кнопку `Cоединение`, ищем устройство, подключаемся.
4. После подключение переходим на вкладку `OTA`, выбираем необходимую прошивку и жмем `Старт`.
6. Устройство должно перезагрузиться и быть готово для использования.
Дополнительно:
@ -74,23 +92,27 @@ python3 rdwr_phy62x2.py -p COM11 -e -r wh BOOT_xxx_vxx.hex
* Для предварительного стирания рабочей области Flash используйте опцию `-e`.
## Сохранение оригинальной прошивки.
## Сохранение оригинальной прошивки
1. Соединить GND, TX, RX, RTSRESET, VCC (+3.3B).
2. Запустить:
```
python3 rdwr_phy62x2.py -p COM11 -r rc 0x11000000 0x80000 ff_thb2.bin
```
3. Полученный файл ff_thb2.bin сохранить.
## Восстановление оригинальной прошивки.
## Восстановление оригинальной прошивки
1. Взять сохраненный файл ff_thb2.bin оригинальной прошивки.
2. Соединить GND, TX, RX, RTSRESET, VCC (+3.3B).
3. Запустить:
```
python3 rdwr_phy62x2.py -p COM11 -b 1000000 -r we 0 ff_thb2.bin
```
Не все адаптеры USB-COM поддерживают 1Mbit. Тогда удалите опцию `-b 1000000` или выберите другой Baud rate.
4. Прошивка зашита. Устройство работает.
@ -114,7 +136,7 @@ python3 rdwr_phy62x2.py -p COM11 -b 1000000 -r we 0 ff_thb2.bin
Поддерживаемые функции и сервисы описываются включенными битами в 32-х битном поле `dev_id.services`.
`FW Boot` запускается по старту, и если не нажата кнопка, проверяет есть или нет запись `FW APP`. Если есть запускает `FW APP`. Если кнопка при старте нажата - запускается `FW Boot`.
`FW Boot` запускается по старту, и если не нажата кнопка, проверяет есть или нет запись `FW APP`. Если есть запускает `FW APP`. Если кнопка при старте нажата - запускается `FW Boot`.
При соединении указывается:
@ -128,8 +150,8 @@ _Software:_ **B**x.x - значит работает `FW Boot`
Принудительно перезагрузиться в `FW Boot` из `FW APP` возможно двумя способами:
1. Отключить питание и удерживая кнопку включить питание.
2. Подать команду `7233` в меню `Service` программы PHY62x2BTHome.html и отключить соединение.
1. Отключить питание и удерживая кнопку включить питание.
2. Подать команду `7233` в меню `Service` программы PHY62x2BTHome.html и отключить соединение.
Полная перезагрузка - Подать команду `7201` в меню `Service` программы PHY62x2BTHome.html и отключить соединение.
@ -138,7 +160,7 @@ _Software:_ **B**x.x - значит работает `FW Boot`
```
python3 rdwr_phy62x2.py -p COM11 -e wh ./bin/BOOT_TH05V13_v13.hex
python3 rdwr_phy62x2.py -p COM11 -r we 0x10000 ./bin/TH05V13_v13.bin
```
```
## Событие Open/Close и счет импульсов
@ -150,17 +172,18 @@ python3 rdwr_phy62x2.py -p COM11 -r we 0x10000 ./bin/TH05V13_v13.bin
При замыкании или размыкании передается блок из 5 BLE реклам следующих друг за другом через период в 50 мс.
При каждом событии "Open" прибавляется счетчик.
При каждом событии "Open" прибавляется счетчик.
Значение счетчика передается совместно с каждым событием "Open/Close".
Входной контакт на плате термометра:
* На [THB1](https://pvvx.github.io/THB1) - маркирован как `RX`
* На [THB2](https://pvvx.github.io/THB2) - маркирован как `RX`
* На [BTH01](https://pvvx.github.io/BTH01/) - маркирован как `RX2`
* На [TH05_V1.3](https://pvvx.github.io/TH05-v1.3) - маркирован как `RX0`
* На [TH05_V1.4](https://pvvx.github.io/TH-05) - маркирован как `RX2`
![image](https://github.com/pvvx/THB2/assets/12629515/09f6f810-f2e2-4b61-9c84-f7c3770bb76a)
## Вывод управления внешним устройством по температуре и/или влажности
@ -171,13 +194,14 @@ python3 rdwr_phy62x2.py -p COM11 -r we 0x10000 ./bin/TH05V13_v13.bin
Настройка производится в PHY62x2BTHome.html.
Работа выхода назначается с помощью установки значения гистерезиса:
* Если значение гистерезиса равно нулю - переключений не будет.
* Если значение гистерезиса больше нуля - переключение (включение) произойдет при значении ниже уставка + гистерезис.
* Если значение гистерезиса меньше нуля - переключение (включение) произойдет при значении выше уставка + гистерезис.
---
## Сборка прошивки.
## Сборка прошивки
Для сборки прошивки используется GNU Arm Embedded Toolchain.

1
requirements.txt Normal file
View file

@ -0,0 +1 @@
pyserial