Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

Прошивка TCP2UART переходника с настройкой по Web

Тема в разделе "SDK и создание собственных прошивок", создана пользователем pvvx, 13 мар 2015.

  1. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    Уже исправлено + ещё мелочь :)
    C настройками была моя ошибка (перепутал две буквы :) ) + ошибка SDK.
    "а WEP" вообще на SOFTAP не работает - не реализовано у Espressif в закрытом коде.
    В user_interface.h к SDK это описано так:
    AUTH_MODE authmode; // Note: Don't support AUTH_WEP in softAP mode.
    А весть интернет копирует друг у друга, что модуль поддерживает WEP :) Копипастеры...
     
    Последнее редактирование: 17 мар 2015
  2. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Ну почти :)
    Теперь точкой доступа он нормально прикидывается, а вот клиентом все-равно не цепляется.
    Но связано уже с другим, на стандартных ESP8266/0123456789 + WPA2/PSK точкой доступа завелось нормально, но при изменении SSID (6 символов) и пароля (33 буквенно-цифровых символа) - уже не шуршит... Экспериментальным путем обнаружил, что (при SSID из 6 символов) пароль из 30 цифр - работает, а из 33 цифр - не работает. Граница где-то между :)

    И в общем проекте этот-же баг, в момент написания прошлого поста, тоже был.
     
    Последнее редактирование: 17 мар 2015
  3. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    #define FileNameSize 48
    #define VarNameSize 32

    Трудовому народу пароли и переменные длиннее 32 символов не требуются :) (и коммерсантам не продадите). Исправлению не подлежит - жалко памяти.
    Добавил сброс на установки WiFi по умолчанию ножкой RX (см. описание в первом посте).
     
  4. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Т.е. предлагаете обе сетки со всем гамузом у себя перестроить? :)
    На гостевую сетку он у меня тоже не цепляется (там DHCP фиг знает где, видать релей где-то упустил, хотя винда и андроиды цепляются нормально)
    Кстати, а почему 32, а не 24 или 40?
     
  5. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    Просто так. Так росло. Смените на 40.
    В новой версии сменил на:
    #define FileNameSize 64
    #define VarNameSize 64
    Но в HTML ограничено SSID на 31 и пароль на 63, т.к. всегда беда с последним символом и испытывать SDK на это не стоит :)
     
    Последнее редактирование: 18 мар 2015
  6. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Отлично :) Уже ставлю.
     
    Последнее редактирование: 18 мар 2015
  7. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    А было 32 по причине, что в кодировке urldecode (что передается в WEB, если писать по русски) 64 символа будет вот такая надпись:
    %u0433%u043B%u0430%u0432%u0440%u044B%u0431%u0430-%u0430%u0431%u044B%u0440%u0432%u0430%u043B%u0433-%u0433%u043B%u0430%u0432%u0440%u044B%u0431%u0430-%u0430%u0431%u044B%u0440%u0432%u0430%u043B%u0433-%u0433%u043B%u0430%u0432%u0440%u044B%u0431%u0430-%u0430%u0431%u044B%u0440%u0432%u0430%u043B%u0433-%u0433%u043B%u0430%u0432%u0440%u044B%u0431%u0430-%21
     
  8. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Кто-то русские символы в ключе использует? бррр...
    Но, кстати, длинный пароль прокатил только в режиме AP, в STA - нифига...
    Для чистоты эксперимента - пароль взял один и тот-же.
    Может быть от того, что SSID имеет и маленькие и большие символы? Пока проверяю...
    Проверил, ни от того. В режиме точки доступа работает с любой комбинацией. Клиентом цепляться не хочет. Может еще где-то ограничение на длину забыто?
    Взлетело!!! ура, проблема (или особенность :) ) была в том, что без установленной галки "AutoConnect" даже в ручном режиме не стартовало. "Галка решила вопрос".
    Может стоит зафиксировать сей нюанс на главной?
     
    Последнее редактирование: 18 мар 2015
  9. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    Это известно. Постоянное выставление данной галки и отсутствие базы, куда будет ломиться модуль, почти полностью тормозит AP на модуле.
    И перечитайте прошивку - в прошлом варианте был включен очень большой уровень отладки и будет подтормаживать.... :)
    Счас ещё авто-автоконнект впишу для забывчивых, когда переключают в режим ST, без AP...
     
    Последнее редактирование: 18 мар 2015
  10. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Модуль в режиме AP+STA потерялся, передернул питание - появился. Перевел в чистый STA. Смотрю. Пока даже клиента UART-ного не подключал.
    Сейчас попеременно подключал андроидного/виндового клиентов - получил то, что в логе... wdt отработал. "56" - первая посылка виндового клиента.

    output_2015-03-18_04-10-18.txt
     

    Вложения:

    Последнее редактирование: 18 мар 2015
  11. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    В прошивке не существует стринга "GPIO,"
    В режиме STATION ESP8266 глючит с быстрыми базами, если включен "802.11n". Это баг Espressif. 802.11n у них работает только с тормозными и дешевыми базами, которые не тянут полный 802.11n... Переключайте в 802.11g. Espressif всё делает только для галочки, что типа есть 802.11n и т.д.. А на самом деле все неполноценное.
    Нарисуют красивые HTM на русском - впишем всё необходимое во встроенный HELP.
     
    Последнее редактирование: 18 мар 2015
    JustACat нравится это.
  12. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Это зеркалирование посылки. То, что имелось ввиду - реакция модуля, после очередного получения (в данном случае 56, с виндошного клиента). wdt и иже с ним.
    Попробую обязательно. Переключатель переводит в модуль в g-режим, не зависимо от использования его в AP либо STA?
    Главное, что бы у людей домашние точки доступа не схлопывались в G, при появлении хоть одного G-клиента.

    Перевел в G, заодно и обновился до 0.1.3 (хотя в интерфейсе 0.1.2 :) ). Пока повторить прошлое поведение модуля не удалось.

    Кстати, два вопроса:
    1) утечку памяти починили в SDK, или каждый сам себе патчит?
    2) в дальнейшем в текущем проекте возможна передача прямого RAW потока? Другими словами, можно ли будет подключить к одному модулю ИК-светодиод, к другому (а в идеале - к другим) ИК-приемник и использовать в качестве удлинителя пульта?


    Сейчас проверял различные битрейты, так вот до 3800000 работает нормально (модуль автоматически переводит введенное число в фактически необходимый поток), а начиная с 3900000 - модуль выставляет 4000000, на 5000000 модуль оставляет 5000000. Т.е. не корректирует ширину потока.
    На 3800000 модуль абсолютно нормально работает (у меня flow-control эмулирует клиент, замыкая RTS+CTS и DSR+DTR, т.е. фактически его нет)

    Так что пока отлично :) (но стоит проверить, что мешает на битрейте выше 3800000)
     
    Последнее редактирование: 18 мар 2015
  13. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    Тактовая на UART 80 000 000 MHz из этого и исходите. Делить не на целое генератор для UART не умеет.
    После 3 Mbaud появляются провалы из-за таймеров, адаптированных для поддержки низких скоростей UART (для любителей "дурино" на 9600Baud).
    После 20 Mbaud порт UART "теряет" биты на I/O - не хватает частоты тактирования пинов в режиме UART...
     
  14. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Возможно некорректно описал. Попробую еще раз.
    Когда в модуле выставляю 3800000 - он автоматически меняет значение на 3809523. В терминале выставляю 3800000 и все работает. (аналогично 5500000-5714285, в терминалах 5500000)
    А когда пытаюсь выставить 5000000 - модуль выставляет 5000000 (уже не верно), в терминалах тоже 5000000, но уже сыпет мусор (при том, что на 550000 работает нормально, в первом приближении).

    И, кстати, все это сквозь CP2104 :eek:
     
  15. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    Baud rates: 300 bps to 2 Mbits
    CP2104_bauds.gif
    При 5000000 Baud ближайшее у CP2104 будет 48000 или 6000000 Baud. Но она на таких скоростях не работает и драйвер часто не позволяет ставить даже промежуточные между стандартным рядом 300 ... 57800, 115200, 23400, 460800, 921600, 1843200.

    Дешевые FTxxx на недо USB2.0 (Full-speed 12MBit/s max) - до 3-х MBaud и делитель тоже ступенями.

    80000000/3809523 = 21
     
    Последнее редактирование: 18 мар 2015
  16. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Так я об этом же...

    Это я понял, но не понял, почему на 5Мбод мусор, а на 5,5 - чистота, хотя по идее должно быть минимум наоборот, а максимум - у меня вообще не должно было работать...

    Хотя отбой, мусорит и там и там, но по-разному. Даже на 2000000 при передаче HEX-а есть пропуски. Здесь таки понятно, нужны нормальные CTS+RTS.

    Но эффект ВАУ был :)

    Теперь все с точностью до наоборот :-(
    Включил и подключил везде RTS и CTS и даже на 19200 не смог словить HEX, не отличающийся от оригинала. Может, конечно, я где-то косячу, но хотелось бы услышать от тех, кто реально пробовал именно бинарники отсылать, на сколько они целыми доходят.
    Может уже и DSR с DTR-ом добавлять?
     
    Последнее редактирование: 18 мар 2015
  17. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    Зависит от программы терминала :) Пишите свою программу открывающую сокет и отсылающую бинарники, т.к. большинство рассчитаны на передачу текста :)
     
  18. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    У большинства терминалов и скорость то отфанарную не выставишь.
    В текущем применении пользуюсь этим, если есть что-то еще более гибкое - сошлите, плз.
    Могу сказку написать, могу обзор с пристрастием набросать, программу под x86 - не могу :oops:
     
  19. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    9.091
    Симпатии:
    1.303
    Всё передает и принимает в bin:
    tcp-uart-hexbin.gif
    Про это "пользуюсь этим" - писалось ранее. Оно выдает символы с шагом в 1 ms и часто у него переполняется буфер.
    У вас все вопросы, на которые уже были ранее приведены ответы в параллельной теме...
     
  20. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Я так понимаю, это Ваш проект. Если так, то отлично, дождемся выхода в продакшн, потестируем. Этот процесс мне нравится.
    Соседние ветки в принципе нужно прокурить, это да, на досуге и этим займусь.
    Т.к. у меня CP2104, ему нельзя в настройках 1мс выставить...
    Я не первый, и не последний :) думаю когда будет какой-нить FAQ, будет куда "посылать".
    А пока да, пошел читать, какие грабли уже найдены.
     

Поделиться этой страницей