Ini adalah fork dari :https://github.com/pvvx/THB2 Firmware khusus untuk perangkat Tuya berdasarkan chipset PHY622x2.
Langkah-langkah instalasi juga dijelaskan di sini: https://youtu.be/AD2KduDTjf8
THB1 | THB2 | THB3 | BTH01 | TH05_V1.3 | TH05_V1.4 | TH05F |
---|---|---|---|---|---|---|
Firmware ini berfungsi dengan Home Assistant dan perangkat lunak lain yang berjalan dalam format BTHome.
Semua firmware mendukung salah satu sensor berikut: CHT8215 (CHT8310), CHT8305, AHT20..30.
Software untuk setting dan pembuatan BLE OTA : PHY62x2BTHome.html.
Mengunggah file OTA ke PHY62x2BTHome.html dilakukan secara otomatis. Anda tidak perlu mengunduh file dari repositori ini untuk OTA.
Untuk menjalankan PHY62x2BTHome.html offline, cukup salin file html ke folder lokal.
Untuk bekerja dengan perangkat, Anda perlu menulis firmware FW Boot
ke perangkat melalui adaptor USB-COM. Firmware boot adalah program dengan fungsionalitas yang dikurangi dan menyediakan pembaruan OTA yang aman.
Selanjutnya, menggunakan koneksi BLE di PHY62x2BTHome.html melalui tab OTA, program operasi utama FW APP
dicatat.
FW APP
juga dapat direkam menggunakan adaptor USB-COM. Firmware Boot memiliki fungsi minimal. FW Boot
hanya digunakan untuk mengunduh melalui OTA versi FW APP
berfitur lengkap (file .bin
).
Perangkat | berkas boot | berkas OTA | Pelabelan papan sirkuit tercetak |
---|---|---|---|
THB1 | BOOT_THB1_v18.hex | THB1_v18.bin | TIDAK |
THB2 | BOOT_THB2_v18.hex | THB2_v18.bin | TIDAK |
THB3 | BOOT_THB2_v18.hex | THB2_v18.bin | TIDAK |
BTH01 | BOOT_BTH01_v18.hex | BTH01_v18.bin | TIDAK |
TH05_V1.4 | BOOT_TH05_v18.hex | TH05_v18.bin | TH05_V1.4, TH05_V1.5, TH05_V1.6 (chip: BL55028) |
TH05_V1.3 | BOOT_TH05D_v18.hex | TH05D_v18.bin | RSH-TH05-V1.3 (chip: BL55072) |
TH05F | BOOT_TH05F_v18.hex | TH05F_v18.bin | TH05Y_V1.1, TH05Y_V1.2 (chip: QD01 2332 NT) |
File firmware utama, BOOT_XXX_vXX.hex (untuk pemrograman melalui adaptor USB-COM) dan XXX_vXX.bin (untuk OTA), terletak di direktori bin.
File untuk memperbarui boot melalui OTA terletak di direktori update_boot. Proses update booting lewat OTA tidak aman. Silakan periksa level baterai sebelum melakukan ini. Jika booting berfungsi dengan baik, tidak perlu memperbarui ke versi baru. Kebutuhan untuk mengganti boot dengan versi baru akan diumumkan kemudian.
FW Boot' version is **v1.7** for devices with CHT8305 sensor. For other variants,
boot FW tidak diperlukan dari versi v1.4 .
Dengan pengaturan default :
Versi | Keterangan |
---|---|
1.0 |
|
1.1 |
|
1.2 |
|
1.3 |
|
1.4 |
|
1.5 |
|
1.6 |
|
1.7 |
|
1.8beta |
|
Dimungkinkan untuk mem-flash perangkat dengan program Boot melalui adaptor USB-COM dengan output 3.3V.
Adaptor | Perangkat |
---|---|
GND | -Vbat |
+3.3V | +Vbat |
terima kasih | RX1 |
RX | TX1 |
RTS | MENGATUR ULANG |
Jika tidak ada pin RST pada adaptor, pendekkan pin RESET ke GND (-Vbat) dan segera buka saat skrip dimulai (mungkin perlu beberapa kali percobaan).
Nama pin pada perangkat dapat ditemukan dalam deskripsi di tautan:
pip3 install -r requirements.txt
Unduh file BOOT_XXX_vXX.hex yang diperlukan untuk perangkat tertentu dari direktori bin.
Berlari:
python3 rdwr_phy62x2.py -p COM11 -e -r wh BOOT_XXX_vXX.hex
Booting flashing selesai. Perangkat beroperasi dan adaptor dapat dicabut.
Download firmware versi lengkap melalui OTA. Untuk melakukan ini:
Connect
, cari perangkat, dan sambungkan.OTA
, pilih firmware yang diperlukan ( .bin
) dan klik Start
.Perangkat harus reboot dan siap digunakan.
Opsional:
- Untuk melakukan pra-hapus seluruh flash, gunakan opsi
-a
.- Untuk melakukan pra-penghapusan ruang kerja flash, gunakan opsi
-e
.- Dengan adaptor USB-COM, Anda dapat langsung menulis firmware utama (APP):
python3 rdwr_phy62x2.py -p COM11 -r we 0x10000 XXX_vXX.bin
python3 rdwr_phy62x2.py -p COM11 -r rc 0x11000000 0x80000 ff_thb2.bin
Firmware Tuya asli untuk jenis perangkat tertentu dapat diperoleh dari tautan pada tabel di awal README ini.
python3 rdwr_phy62x2.py -p COM11 -b 1000000 -r we 0 ff_thb2.bin
Tidak semua adaptor USB-COM mendukung 1Mbit. Kemudian hapus opsi
-b 1000000
atau pilih baud rate yang berbeda.
Alamat | Keterangan | Ukuran |
---|---|---|
0x00000 | ROM yang digunakan | 8 kilobyte |
0x02000 | Info Booting untuk ROM | 4 kilobyte |
0x03000 | FW Boot dengan fungsi OTA | 52 kilobyte |
0x10000 | APLIKASI FW | 128 kilobyte |
0x30000 | Rekaman Sejarah | 304 kilobyte |
0x7C000 | Simpan Pengaturan (EEP) | 16 kilobyte |
FW Boot
memiliki fungsi OTA, tetapi tidak memiliki fungsi history atau add-on lainnya. Ini digunakan untuk menangani OTA untuk setiap pembaruan yang gagal atau salah.
FW APP
tidak memiliki fungsi OTA, untuk OTA reboot ke FW Boot
. Ini memiliki fitur dan ekstensi tambahan.
Tindakan tombol saat perangkat dihidupkan:
Jika tombol ditekan saat startup, FW Boot
selalu dimulai.
Jika tombol tidak ditekan maka entri FW APP
tercentang atau tidak. Jika ada FW APP
, ia akan meluncurkan FW APP
. Jika tidak ada FW APP
, FW Boot
diluncurkan.
Pada termometer dengan layar, jika tampilan waktu tidak diaktifkan, saat start atau restart, berikut ini akan ditampilkan dalam waktu singkat:
"Bot 14" - FW Boot
versi 1.4
"APLIKASI 15" - FW APP
versi 1.5
Ada dua cara untuk memaksa reboot ke FW Boot
dari FW APP
:
7233
di menu Service
program PHY62x2BTHome.html.Reboot lengkap: Masukkan perintah
7201
di menuService
program PHY62x2BTHome.html.
Melalui adaptor USB-UART, APLIKASI dapat ditulis segera setelah boot. Misalnya:
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
Sejak versi 1.2 didukung untuk melakukan polling pin yang terhubung ke saklar buluh atau kontak yang dihubung pendek ke GND.
Frekuensi peralihan maksimum adalah 100 kali per detik.
Jika kontaknya berderak, maka disarankan untuk memotong kontak dengan kapasitor.
Saat menutup atau membuka, blok 5 iklan BLE dikirimkan satu sama lain setelah jangka waktu 50 ms.
Pada setiap acara "Terbuka", penghitung ditambahkan.
Nilai penghitung dikirimkan bersamaan dengan setiap peristiwa "Buka/Tutup".
Masukkan kontak pada papan termometer:
RX
.RX
.RX
.RX2
.RX0
.RX2
. Kontak pada papan sirkuit tercetak berlabel "TX" atau "TX2" dikontrol dengan titik setel histeresis untuk suhu dan kelembapan. Dimungkinkan untuk beralih ke kontrol keluaran terbalik.
Pengaturan dilakukan dalam program PHY62x2BTHome.html.
Operasi keluaran ditetapkan dengan mengatur nilai histeresis:
Untuk mengatur ulang parameter dasar ke nilai awal, gunakan ponsel pintar Android dan aplikasi "nRFConnect". Hubungkan ke perangkat dan dalam layanan 0xFCD2
dengan karakteristik 0xFFF4
tulis 56
.
Jika intervalnya lebih dari 10 detik, maka akan ditetapkan 10 detik karena ini adalah maksimum dalam standar. Begitu juga pengaturan lainnya. Namun, tidak semua adaptor BT dapat bekerja dengan interval koneksi 10 detik.
GNU Arm Embedded Toolchain digunakan untuk membuat firmware.
Untuk bekerja di Eclipse, gunakan impor proyek dan instal toolchain.path.
Lihat ini untuk informasi lebih lanjut tentang chip PHY62xx.