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

Обсуждение Программатор для TLSR

Sergey55111

New member
Привет! Прошу помощи в моей задачке.

Дано:
- TB-03F
- СР2102 USB-UART
- датчик температуры и влажности xiaomi. HW1.4 - После экспериментов с прошивками перестал включаться экран (обновлял по BLE)

Почитав форум понял, что через плату TB-03F смогу восстановить работоспособность датчика.

Вопрос:
1. Какую прошивку необходимо залить в TB-03F (подключаюсь через UART преобразователь), чтобы потом восстановить датчик...
2. Как должна отображаться плата ТВ в диспетчере? Сейчас отображается как USB-serial с желтым треугольником.
3. Итоговая цепочка подключения будет: TB-03F по USB к ПК - датчик тем. к TB-03F по каким пинам?

Заранее извиняюсь за глупые вопросы, но сам разобраться не могу(
 

pvvx

Активный участник сообщества
1. Какую прошивку необходимо залить в TB-03F (подключаюсь через UART преобразователь), чтобы потом восстановить датчик...
Чтобы восстановить прошивку термометру TB-03F не нужен
xiaomi. HW1.4
The USB-COM adapter writes the firmware in explorer. Web version.

Файл прошивки , программа для прошивки

Из TB-03F делается полный программатор-отладчик для чипов TLSR8xxx, а для разовой прошивки это не обязательно.
 

Sergey55111

New member
Чтобы восстановить прошивку термометру TB-03F не нужен
xiaomi. HW1.4
The USB-COM adapter writes the firmware in explorer. Web version.

Файл прошивки , программа для прошивки

Из TB-03F делается полный программатор-отладчик для чипов TLSR8xxx, а для разовой прошивки это не обязательно.
Спасибо за ответ!

Тогда уточняющий вопрос, если датчик не подает признаков жизни, то по 2 проводам (TX - GND) зальется прошивка? И как в таком случае сделать активацию чипа?
Насколько я понял, активация должна выглядеть следующим образом: подключили датчик, начали заливать прошивку, в течение времени активации нужно успеть коротнуть TX с +3.3v...?

webpgm.png
 

pvvx

Активный участник сообщества
Спасибо за ответ!

Тогда уточняющий вопрос, если датчик не подает признаков жизни, то по 2 проводам (TX - GND) зальется прошивка? И как в таком случае сделать активацию чипа?
Насколько я понял, активация должна выглядеть следующим образом: подключили датчик, начали заливать прошивку, в течение времени активации нужно успеть коротнуть TX с +3.3v...?

Посмотреть вложение 14068
В течении "активации" желательно подключить TX и +3.3В питания. GND всегда соединен. Это гарантирует пробуждение чипа из сна для восприятия кода остановки CPU и последующей прошивки.
Иначе чип может спать, питаясь от любого провода к любой ножке (через встроенные диоды), т.к. потребление во сне - 0.9..1.8 мкА (!). А во сне у него всё отключено и бесполезно дергать ногу SWS.
Также возможно во время активации дернуть ногу RESET - это тоже пробуждает чип из сна. Но лучше соединить RESET с RTS - тогда программа автоматом дернет...
 

enjoynering

Well-known member
а можно ссылку как из TB-03F сделать программатор для чипов TLSR8xxx? заранее спасибо
 

pvvx

Активный участник сообщества
а можно ссылку как из TB-03F сделать программатор для чипов TLSR8xxx? заранее спасибо
У TB-03F стоит чип TLSR8250 (в старых версиях TLSR8253), а у него не выведены пины USB. По тому проще взять TB-03F-Kit или TB-04-Kit, где уже припаян USB-COM чип.
Но можно и припаять какой USB-COM (3.3V). Ток потребления десяток мА: 10..20 в макс, т.е. около 4..8 мА на CPU в зависимости от частоты (16..32 MHz) и с пиками к 8..25 мА при RF TX 0..+10дБм.
 

Sergey55111

New member
В течении "активации" желательно подключить TX и +3.3В питания. GND всегда соединен. Это гарантирует пробуждение чипа из сна для восприятия кода остановки CPU и последующей прошивки.
Иначе чип может спать, питаясь от любого провода к любой ножке (через встроенные диоды), т.к. потребление во сне - 0.9..1.8 мкА (!). А во сне у него всё отключено и бесполезно дергать ногу SWS.
Также возможно во время активации дернуть ногу RESET - это тоже пробуждает чип из сна. Но лучше соединить RESET с RTS - тогда программа автоматом дернет...
В очередной раз попробовал прошить и неудача(
Заметил особенность, если несколько раз позамыкать питание, дисплей оживает, начинают включаться различные сектора. Когда экран активирован, программа тоже не зашивается.

Пин сброса на датчике это не "пятка" reset на плате? необходимо к самому чипу припаяться?
 

Вложения

DMUTPUUM

New member
Добрый день.
пытаюсь прошить вот это
20250106_122545.jpg
и через веб и через tb04 никак что то не получается...
через веб оно как будто шьется, но ничего не меняется, термометр работает, а модуль ztu нет.
 

DMUTPUUM

New member
TlsrPgm.py
Код:
TLSRPGM-main>TlsrPgm.py -p COM3 -t5000 we 0 TS0012_TZ3000_p8alo7qa.bin
=======================================================
TLSR82xx TlsrPgm version 31.10.23
-------------------------------------------------------
Open COM3, 230400 bit/s... ok
PGM: ChipID: 0x5562 (TLSR825x), ver: 0.0.0.2
swdiv 5, addrlen 3, swbuf [5a 00 06 02 00 05], pwr On
SWire bit rate: 0.9600 Mbits/s
=== PreProcess ========================================
Hard reset Ext.MCU 5000 ms... ok
=== Process ===========================================
Inputfile: TS0012_TZ3000_p8alo7qa.bin
Write 0 to Flash Status Register...
Error get Flash Status! (102)
 

pvvx

Активный участник сообщества
У TlsrPgm.py множество опций.
В TlsrPgm.py -p COM3 -t5000 we 0 TS0012_TZ3000_p8alo7qa.bin не указано, что необходимо применить сброс чипа или другие варианты "активации".
Так же не фото не понятно, правильно ли распаяны SWS и RST.
 

DMUTPUUM

New member
У TlsrPgm.py множество опций.
В TlsrPgm.py -p COM3 -t5000 we 0 TS0012_TZ3000_p8alo7qa.bin не указано, что необходимо применить сброс чипа или другие варианты "активации".
Так же не фото не понятно, правильно ли распаяны SWS и RST.
перепроверил, sws и rst перепутал, припаял Pin PD3 (OUT) --> RESET, Pin PD4 (SWM) <-> SWS, Pin PB4 (OUT) --> Power (max 16 mA)
запустил TlsrPgm.py -p COM3 -t5000 we 0 TS0012_TZ3000_p8alo7qa.bin
прошло без ошибок, но снова ничего не изменилось.
как нужно изменить команду?
я не особо понимаю в опциях
 

DMUTPUUM

New member
я по ходу еще и прошивку программатора другую залил...
сейчас залил pvvx теперь выдает другую ошибку.
Код:
TlsrPgm.py -w -pCOM3 we 0 TS0012_TZ3000_p8alo7qa.bin
=======================================================
TLSR82xx TlsrPgm version 31.10.23
-------------------------------------------------------
Open COM3, 230400 bit/s... ok
PGM: ChipID: 0x5562 (TLSR825x), ver: 0.0.0.2
swdiv 5, addrlen 3, swbuf [5a 00 06 02 00 05], pwr On
SWire bit rate: 0.9600 Mbits/s
=== Process ===========================================
Inputfile: TS0012_TZ3000_p8alo7qa.bin
Write 0 to Flash Status Register...
Flash Status Register: 0x1c

Error unlock Flash!
 

DMUTPUUM

New member
а провод между ch340 2 pin и sws TB04 нужно оставлять после прошивки TB04 или убирать надо?
 

pvvx

Активный участник сообщества
а провод между ch340 2 pin и sws TB04 нужно оставлять после прошивки TB04 или убирать надо?
Лучше убрать.
Я его ни разу не паял на TB-03F-Kit. Вставляете типовой китай-провод с разными наконечниками - один в разъем SWS, второй рукой к 2 контакту. Запускаете запись прошивки и через секунду можно уже отключить провод. На этом моменте программа програмирования через UART уже залита и работает в RAM... И будет работать пока не отключите питание или не произведете сброс. Повторной заливки не требует - при старте скрипта распознается что уже залита.
 

pvvx

Активный участник сообщества
теперь выдает другую ошибку.
Вариантов много. Можно сначала сбросить чип и остановить CPU. А потом уже заливать программу.
Код:
python TlsrPgm.py -pCOM3 -s -t100 -a100 i
python TlsrPgm.py -pCOM3 we 0 TS0012_TZ3000_p8alo7qa.bin
Первая строка может быть с разными опциями...
python TlsrPgm.py -pCOM3 -s -z10 i
python TlsrPgm.py -pCOM3 -s -a100 i
...
 
Сверху Снизу