• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Обсуждение TLSR8269

nikolz

Well-known member
Вы указываете, что у вас всё собирается и документация на SDK есть - т.е. вам хватает всего для написания программ.
Вариант гаданий, основанный на ваших данных:
В доках (и вроде в примерах) есть установка скорости swire. Кварцы и частоты у чипов могут быть разными...
Регистры swire описаны в register_826?.h
Пример:
Код:
/****************************************************
swire regs struct: begin  addr : 0xb0
*****************************************************/
#define reg_swire_data            REG_ADDR8(0xb0)
#define reg_swire_ctrl1            REG_ADDR8(0xb1)
enum{
    FLD_SWIRE_WR  =             BIT(0),
    FLD_SWIRE_RD  =             BIT(1),
    FLD_SWIRE_CMD =                BIT(2),
    FLD_SWIRE_USB_DET =            BIT(6),
    FLD_SWIRE_USB_EN =            BIT(7),
};

#define reg_swire_clk_div        REG_ADDR8(0xb2)
Для работы swm или sws надо ещё включить на них CLK - биты включения описаны там-же, в register_826?.h.
Напишите тест вечной передачи в swire...
Перебрав пару вариантов примеров, да загрузив тестовый код в SRAM, получите 2..4 варианта скорости swire на осциллографе.
Вариант 2:
В SDK лежат бинарники EVK и есть полный пакет GCC. В него входит дизасм.
Меняете в бинарнике EVK что не совпадает у чипа 8266 на чип 8269 (не изучал - может вся адресация совпадает) и прошиваете.
У чипа с 48 ног в EVK ноги никуда не разведены (см. схема в доках), а используемые есть и у 8269 на 32 ноги.
В 8266 SWR совмещен с PA7,а в 8269 они еще совмещены с TRx.
Но по вашей подсказке попробую собрать какой-нибудь тест.
Непонятно лишь то, что если надо устанавливать CLK то это нельзя cделать на SWS у камня который умер
и еще в BDT есть режим "активировать" именно о нем говорит telink
полагаю это что-то как В SWIM активировать у STM
 

pvvx

Активный участник сообщества
Непонятно лишь то, что если надо устанавливать CLK то это нельзя cделать на SWS у камня который умер
Без живого камня не узнать. Требуется считать все регистры с живого и определиться со значениями по умолчанию.
Наверняка всё там включено по старту.
BDT есть режим "активировать" именно о нем говорит telink
полагаю это что-то как В SWIM активировать у STM
А может он просто ставит бит FLD_SWIRE_USB_DET и/или FLD_SWIRE_USB_EN...
Все коды из BDT USB->Swire тоже можно узнать работая с чистым чипом... Можно и в Wireshark по логам USB.
А без чипа симулировать USB пока нет никакого желания.
PS: я лучше пока раскручу игрушку USB-Tester QWAY-U2p. Управление через BT уже раскрутил - можно писать прогу на Android и PC... :)
 

pvvx

Активный участник сообщества
Потребление модуля E104-BT10-N (установки = factory: предварительно послано 02 0c 15).
Питание 3.3B, на старте reset к gnd, другие ноги не подключены:
Power_E104-BT10-N_reset.gif
Уточнение при отпускании reset (фрагмент из пред.):
Power_E104-BT10-N_start.gif
(время в мс)
При активном reset четкий прием 50Гц на висящие ноги.
Итого: жрет много.
 

nikolz

Well-known member
Потребление модуля E104-BT10-N (установки = factory: предварительно послано 02 0c 15).
Питание 3.3B, на старте reset к gnd, другие ноги не подключены:
Посмотреть вложение 7915
Уточнение при отпускании reset (фрагмент из пред.):
Посмотреть вложение 7916
(время в мс)
При активном reset четкий прием 50Гц на висящие ноги.
Итого: жрет много.
я измерял у TLSR8266 на заводской прошивке ,
получалось 8 ма без BLE и 24 ма c BLE .
 

pvvx

Активный участник сообщества
С какой целью?
Вы тут многим форумчанам советовали использовать TLSR, а средств для работы с ними никаких нет и не предоставили, кроме как выступать "ждуном" неизвестно чего :)
В итоге один модуль TLSR обойдется дороже полной платформы типа PI (Linux/OpenWRT) со встроенным BLE.
Я вам выкладывать "reverse engineering" пока не намерен. Жду реального хода от вас :p
 

nikolz

Well-known member
С какой целью?
Вы тут многим форумчанам советовали использовать TLSR, а средств для работы с ними никаких нет и не предоставили, кроме как выступать "ждуном" неизвестно чего :)
В итоге один модуль TLSR обойдется дороже полной платформы типа PI (Linux/OpenWRT) со встроенным BLE.
Я вам выкладывать "reverse engineering" пока не намерен. Жду реального хода от вас :p
Я у Вас ничего не прошу и никому ничего не обязан, особенно на этом форуме.
Не надо своих обезьян вешать на меня.
И пора уж прекратить вешать ярлыки, уже даже не смешно, а своим хамством Вы никого не удивите.
это Вы тут раб на галерах,
а я так -погулять вышел.
 

pvvx

Активный участник сообщества
Я у Вас ничего не прошу и никому ничего не обязан, особенно на этом форуме.
Не надо своих обезьян вешать на меня.
И пора уж прекратить вешать ярлыки, уже даже не смешно, а своим хамством Вы никого не удивите.
это Вы тут раб на галерах,
а я так -погулять вышел.
Тогда гуляйте :)
У меня всё хорошо с TLSR. Залил программку - принимает и передает PC<->Android<->модуль(com-port) через MESH:
Screenshot_1.gif Screenshot_2.gif term-send.gif
 

pvvx

Активный участник сообщества
3 GPIO на модуле работают на PWM 600 Гц - RGB цвет.
PWM_OUT.gif
Screenshot_3.gif
On/Off делается плавно за счет PWM.

И на Android есть функция OTA - предлагает загрузить бинарный файл.
 

pvvx

Активный участник сообщества
Короче все проблемс с iTag решены...
Ждем ждуна @nikolz :)
 

pvvx

Активный участник сообщества
Не поможет. Есть масса условий когда EVK не сможет достучаться до чипа (хоть через sws).
Одно из них - другой кварц или переключение на внутреннее тактирование в чипе :p
А модули имеют разные кварцы и заливка в них неверных прошивок приведет к кирпичу. Связи по USB, BT, SWS или COM не будет, т.к. скорость не совпадет с EVK.
Есть ещё другие условия для окирпичивания для EVK...
В итоге для пользователей уровня @nikolz чип является одноразовым, типа с OTP.
Я думаю что это надо так и оставить, чтобы никакое Arduino на него не распространилось.
 

pvvx

Активный участник сообщества
Слепил на STLink клоне за 90 руб программатор swire. Почти слепил - надо как-то примотать транзистор или TTL с OK на выход и соединить со входом...
Такой выход на него (пример передачи по адресу 0x0004 слова 0x55AA) на 1.1 Мегабит (выборочно):
sws_write_0004_55AA.gif
Чтение, но ничего не подключено (транзистор не припаял и а сигнал инвертирован программно на осциллографе, чтобы совпадало с диаграммой в PDF) :
sws_read_0004_not_dev.gif
Байтики он сам декодирует на приеме... Тактирование бит аппаратное. Можно ещё сильно разогнать в МГц-ы но там подтягивающий резистор и провод на шине... Короче: не всякий транзистор потянет переключения в десятку нс с проводом и резистором :)
 

sharikov

Active member
Слепил на STLink клоне за 90 руб программатор swire. Почти слепил - надо как-то примотать транзистор или TTL с OK на выход и соединить со входом...
...
Короче: не всякий транзистор потянет переключения в десятку нс с проводом и резистором :)
2N7002 ?
74LVC1G125 / 126 ?
 

pvvx

Активный участник сообщества
2N7002 ?
74LVC1G125 / 126 ?
Да просто скорость снизить. Это же шина swire для отладки и реанимации чипов - там скоростей к 2-м мегабитам (как сказано в PDF) не требуется. В приложениях SDK в его регистры пишут нехилый делитель, а скорости чтения приведены в картинках и не превышают десятки килобайт.
На swire при 2 мегабита выходит импульс строба бита в 1/5, а это уже за 10 МГц пропускной по проводку то с пимпачками и подтягивающему резистору в пару кОм, та и выход у чипов хилые по нагрузке :) ...
 

pvvx

Активный участник сообщества
@sharikov - вы тоже решили побаловаться TSLR?
В них у всех OTA из SDK. Работают и прошиваются. Но опасно - на многих модулях стоят другие кварцы, не как в SDK. Если не исправите или какой глюк - получите кирпич. BT и USB не заведется, а swire может быть отключена в GPIO и т.д.
Прикольные чипы - типа OTP, а не Flash :)
 

pvvx

Активный участник сообщества
2N7002 ?
74LVC1G125 / 126 ?
Я пошел другим путем... По проще - инвертировал выход и соединил pin OUT через резистор 750 Ом с pin IN.
А далее от IN к SWS модуля.
Запросил 9 байт у модуля по SWIRE:
sws_write_get_9_bytes.gif
Модуль отвечает со скоростью: 1 bit 783 nc при 12 MHz кварце.
Т.е. CLK SWIRE 156.6 nc.
Надо писать оболочку к программатору в переписанный STLinkV2 (90 руб)... Но пока лень.
 

pvvx

Активный участник сообщества
Swire реализовал как USB-COM на STM32F103C8T6 или CKS32F103C8T6 в китай-подделке STLinkV2.
т.е. на любой из этих
 
Сверху Снизу