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

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

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

  1. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    У меня так и включен модуль всё время. Через xxxx.asuscomm.com, от производителя роутера. Постоянно наблюдаю в логе все заходящие поисковики на него, в основном из ШША, даже из пентагону запросы были :) Много запросов в Web сыпется просто по IP, от ошибок где-то ....
    С внешним именем и IP уже через множество проксей модуль проверил, а так- же всякими анализаторами HTTP страниц и Web... Об этом где-то ранее писалось...
    Вот первый попавшийся внешний запрос (какой-то файл 'rom-0' хотели) , за сегодня:
    Код (Text):
    1. srv[80] 95.213.143.180:51685 [1] listen
    2. srv[80] 95.213.143.180:51685 [1] read: 219 of255[rom-0] of255[rom-0/index.htm] GET f[/rom-0] of1[404.htm] #2258 (208) 404 send: of2[footer.inc] cf2 cf1 #2246 640 dis
    3. srv[80] 95.213.143.180:51685 [1] disconnect
    Шарятся, на главной странице и пароль и имя написано, но никто не меняет :)
     
    Последнее редактирование: 3 апр 2015
  2. FGX

    FGX Читатель

    Сообщения:
    100
    Симпатии:
    9
    настроил Dynamic DNS, и через вайфай он работает, по присвоенному хосту заходит на веб страничку и подключается к TCP. Причем на веб страничке показывается IP не мой, а Dynamic DNS сервера(или как он называется правильно) - т.е. все честно работает, но вот через мобильный интернет не работает. Хочу проверить с другого компа, через другой интернет зайдет ли. Возможно есть ограничения на мобильные из-за того что Dynamic DNS бесплатный, но там ничего об этом не сказано, и роутер ничего лучше не поддерживает. Кому не сложно подключитесь к TCP gfx.noip.me:4444 и скажите подключается ли и приходит что-то(если подключится нужно минуту подождать, там данные раз в минуту шлются)?
     
  3. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    С мобильниками мне известна только проблема с POST на древней аппаратуре GSM. Если у вас не мАсква или spb, то обычно, старые станции GSM снимаются из больших городов и устанавливаются на периферию... там и многое не поддерживается.
    Вторая беда с GSM - большая пауза передачи (ping) и NAT. В Web стоит 5 сек - этого мало для российских сетей GSM :)
    ping http://gfx.noip.me
    При проверке связи не удалось обнаружить узел http://gfx.noip.me.
    Проверьте имя узла и повторите попытку.
     
  4. FGX

    FGX Читатель

    Сообщения:
    100
    Симпатии:
    9
    вы хотели зайти на веб, я выключал переадресацию 80 порта (для проверки поэтому и писал 4444 порт), сейчас включил, попробуйте, пожалуйста еще раз http://gfx.noip.me
     
  5. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    Анализаторов сайтов очень много в сети
    К примеру, первый попавшийся: http://gtmetrix.com/
    cccc22.gif
    На ваш пишет:
    Analysis Error
    An error occurred fetching the page: write failed: Connection timed out

    Используйте любой online proxy для начальной проверки... и просить никого не потребуется.
     
    Последнее редактирование: 4 апр 2015
  6. FGX

    FGX Читатель

    Сообщения:
    100
    Симпатии:
    9
    Анализатор сайтов - не совсем прямая проверка. Так сам сервер может работать, а если переадресацию порта не настроить, то TCP порт не будет работать, который нужен. Но в моем случае похоже, что ничего так и не работает, если заходить не из локальной сети, что непонятно. Когда я подключаюсь ведь работает и ip чужой отображается, по хосту пингуется. Ну ладно, это не по теме.
     
  7. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    У вас не работает noip.me и возможно сидите за кривым NAT у провайдера.
    Если у вас публичный IP, то всё работает на ура:
    proxyxx.gif
    Единственное, что у многих proxy многое отключено. К примеру не поддерживают авторизации и т.д.
    А номер порта тут ну ни как не сказывается... Какой укажите, тот и будет анализироваться и т.д.
    Свой адрес куда включен ESP не даю, т.к. он используется у меня для тестов не только ESP :) Мешать будут.
     
    Последнее редактирование: 4 апр 2015
  8. FGX

    FGX Читатель

    Сообщения:
    100
    Симпатии:
    9
    Вообще, как я понимаю, noip.me у меня работает, так как я захожу на него и попадаю к себе, т.е. он по имени предоставляет мой ip адрес. Он же вроде ничего больше и не должен делать(вообще если я сам посмотрю мой внешний ip, пусть он динамический, то я должен заходить по нему к себе или нет?).
    Мне кажется странным что в роутере прописан IP-адрес: 10.51.226.117, а при запросе в яндексе и другие сайты говорят мне что у меня 178.76.217.105, если я захожу на адрес который прописан в роутере то я попадаю к себе на страницу ESP(из домашней сети), а если тот что видят браузеры то нет. Короче у меня какой-то виртуальный адрес от поставщика интернета и ничего тут не поделать, нужно подключать услугу "«Интернет-адрес» — реальный интернет-адрес на компьютере." Вообщем вопрос закрыт, нужно менять провайдера, или доплачивать этому.
     
  9. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    Как раз это всё к теме не относится :) У большинства реализаций NAT у провайдеров и GSM нет возможностей определить внутренний маршрут по внешнему запросу. По этому работает только исходящее от вас соединение. Ждите ipv6 :)
    А вот поведение Web-сервера через всякие прокси - это уже интереснее.
     
    Последнее редактирование: 4 апр 2015
  10. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Ничего там интересного нет. Роутер видит запрос на внешний ресурс, маршрут к которому он знает, вот и пускает пакеты по короткому пути. Любые внешние запросы на свое железо нужно проверять либо с чужой сети, либо запретить обходить NAT на роутере (далеко не всегда это возможно сделать).

    А пара 10.51.226.117 - 178.76.217.105 говорит о том, что роутер сидит за провайдерским NAT-ом и снаружи получить хоть какие-то порты можно лишь при пробросе таковых провайдером (что они делать не всегда хотят, либо за отдельную плату).
     
  11. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    Вы картинки то смотрели? Там запрос не с моего IP и тот IP 62.210.94.133 не входит в мою домашнюю сеть :) Proxy на то и proxy. И поведение у них разное, творят что хотят с запросами HTTP - от того и интерес...
    Если
    то "пробросить" из вне никакие порты невозможно, не отняв их у других.
     
    Последнее редактирование: 5 апр 2015
  12. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Вы опять с другой стороны смотрите. Я не говорю, что нельзя попасть к своему модулю через proxy/anonymizer/vpn... а говорю, что FGX сидит за провайдерским NAT-ом в его (провайдерской) локальной 10.0.0.0 подсети и получить доступ с мира сквозь провайдерский NAT, без согласия последнего, невозможно (ну почти :) ). А то, что он имеет доступ к своему модулю, обращаясь к внешнему доменному имени, говорит лишь о том, что его личный роутер любит сокращать маршруты. Вот, собственно, что я имел ввиду.
    Ну и по теме, когда Winsock+chrome планируется зарелизить? :)
     
  13. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    Нет я отвечаю на конкретный ответ к цитате: >А вот поведение Web-сервера через всякие прокси - это уже интереснее.
    У меня давно, в тестовом черновом варианте, переключение WEB HTTP на WebSocket ...:
    На запрос из https://ru.wikipedia.org/wiki/WebSocket#.D0.9F.D1.80.D0.BE.D1.82.D0.BE.D0.BA.D0.BE.D0.BB_07
    Код (Text):
    1.  
    2. GET / HTTP/1.1
    3. Host: server.example.com
    4. Upgrade: websocket
    5. Connection: Upgrade
    6. Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
    7. Sec-WebSocket-Origin: http://example.com
    8. Sec-WebSocket-Protocol: chat, superchat
    9. Sec-WebSocket-Version: 7
    10.  
    Лог расчета ключей дает правильный:
    Код (Text):
    1.  
    2. srv[80] 192.168.1.2:9437 [1] listen
    3. srv[80] 192.168.1.2:9437 [1] read: 239 of1[index.htm]
    4. wskey:'dGhlIHNhbXBsZSBub25jZQ==258EAFA5-E914-47DA-95CA-C5AB0DC85B11'
    5. cha:'b37a4f2cc0624f1690f64606cf385945b2bec4ea'
    6. base64_encode() = 28
    7. key:'s3pPLMBiTxaQ9kYGzzhZRbK+xOo='
    8. WEBSOC f[/]....
    9.  
    А так - не знаю. На него же ещё надо что-то повесить...
    Используемая память Web при этом стала меньше на 128 байт :)

    Для ускорения дайте ответ на вопросы: Надо ли или возможно "парсить" запрос на переключение в WebSocket:
    1) на переменные?
    2) на куки
    3) ещё на что?
    Пока запрос разбирается как и для Web.
    CHA используется из ROM-BIOS. Она там целнотянутая у Copyright (C) 1998 VMware, Inc. All rights reserved. :)
    Код (C):
    1.  
    2. /*********************************************************
    3.  * Copyright (C) 1998 VMware, Inc. All rights reserved.
    4.  *
    5.  * This program is free software; you can redistribute it and/or modify it
    6.  * under the terms of the GNU Lesser General Public License as published
    7.  * by the Free Software Foundation version 2.1 and no later version.
    8.  *
    9.  * This program is distributed in the hope that it will be useful, but
    10.  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
    11.  * or FITNESS FOR A PARTICULAR PURPOSE.  See the Lesser GNU General Public
    12.  * License for more details.
    13.  *
    14.  * You should have received a copy of the GNU Lesser General Public License
    15.  * along with this program; if not, write to the Free Software Foundation, Inc.,
    16.  * 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA.
    17.  *
    18.  *********************************************************/
    19.  
    20. /*********************************************************
    21.  * The contents of this file are subject to the terms of the Common
    22.  * Development and Distribution License (the "License") version 1.0
    23.  * and no later version.  You may not use this file except in
    24.  * compliance with the License.
    25.  *
    26.  * You can obtain a copy of the License at
    27.  *         http://www.opensource.org/licenses/cddl1.php
    28.  *
    29.  * See the License for the specific language governing permissions
    30.  * and limitations under the License.
    31.  *
    32.  *********************************************************/
    33.  
    34. /*
    35.  * sha1.h --
    36.  *
    37.  *    SHA1 encryption
    38.  */
    39.  
    По этим и аналогичным причинам нам никогда не видать исходников от Espressif :)
     
    Последнее редактирование: 5 апр 2015
  14. FGX

    FGX Читатель

    Сообщения:
    100
    Симпатии:
    9
    Добрый день. Нашел проблему, уже несколько раз повторилась. Иногда модуль сходит с ума и начинается адски греться и просаживать напряжение питания и пока питание не передернешь, сам он не выходит из этого режима, но пока не сгорел, хотя раскаляется знатно (но я успевал выдернуть питание через несколько секунд после того как увидел что индикатор еле светится).
    Вот сейчас я шил пик не отключая вайфай модуль, который соединен с пиком через ком порт, питание тоже не снимал(но модуль питается через стабилизатор 3.3.В и уровни согласованы по ком порту). Прошил пик все нормально, но смотрю индикатор еле светится, пробую модуль а он обжигает палец. передернул питание- все нормально. Такие пироги, модуль без защиты какой-то, так заглючит и сгорит ненароком..
     
  15. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    388
    Чтобы исключить такое нужно ВСЕ GPIO, RESET и CH_PD подтянуть к питанию ЧЕРЕЗ резисторы (кроме GPIO15 конечно - его на землю через R<10k).
     
  16. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Не знаю, у Вас с этим связано, или нет. Но сегодня на своем модуле (он на лабораторном БП висит) обнаружил, что если на WiFi точке доступа сильно снизить выходную мощность, то модуль начинает потреблять 200-250мА, повышаешь обратно - модуль вроде бы возвращается в стандартные 60мА. Проверьте, возможно перед нагревом точка доступа снижала мощность (из-за интерференции, например)
     
  17. FGX

    FGX Читатель

    Сообщения:
    100
    Симпатии:
    9
    У меня роутер в метре от модуля, так что со связью вряд ли это связано, сам по себе он четко потребляет 60-70 мА (если без энергосбережения), а тут было явно более 250 мА, т.к. по питанию у меня 0,5А ограничение, а оно просело. Возможно это и связано с тем что все выводы я не подтягивал к питанию, хотя и считаю, что это не годится никуда (на то они и выходы, тем более они короткие), тогда лучше все неиспользуемые выводы перевести в режим выхода и выставить на выходе 0. Вывод сброса, 16 и 15 ноги подключены через резисторы.
     
  18. shaman1010

    shaman1010 Читатель

    Сообщения:
    128
    Симпатии:
    14
    Опять я со своими "глючными терминалами" :)
    Попался еще один интересный вариант. Опенсорсный Tera Term. Русский интерфейс.
    Умеет много чего и файлы кидать в том числе, но самое интересное, передал им 115 мегабайт на 921600 за 23 минуты. Без flowcontrol и БЕЗ ОШИБОК!
    По zmodem-у.
    Жду, как обычно, конструктивной критики. :) По-моему, вполне достойный вариант
     
  19. pvvx

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

    Сообщения:
    9.410
    Симпатии:
    1.320
    В новом доке, в конце, "2C-SDK-Espressif IoT SDK Programming Guide_EN_V1.0.1.pdf" фигурирует настройка напряжения питания модуля (опция байта 107 в esp_init_data_default.bin) или в версии Web-demo на странице Debug and Tests. Там можно на ходу менять 107 байт. Но, необходима перезагрузка модуля...
    В принципе, от правильной диагностики напряжения питания, зависит отдача передатчика и нагрев. Но связано ли это с опцией 107 - прошивку ещё не смотрел.
    Знаю только, что deep-sleep с выключенной калибровкой RF = каюк соединению = вечный поиск AP модулем с одиночными соединениями на пару секунд и опять отваливается в поиск = Espressif. :)
    Укажу и тут - NetBios пока с ошибкой... не включать. С версии 0.2.1 будет исправлен. Но она ещё не созрела :)
     
    Последнее редактирование: 7 апр 2015
  20. mcmega

    mcmega Новичок

    Сообщения:
    93
    Симпатии:
    1
    Предлагаю использовать модуль в конкретном проекте. Я делаю выключатель на ATMega168. Взял ESP8266-11 (хотя можно и другой, нужны ноги Rx, Tx, 1 GPIO и на всякий случай Reset)
    Я хочу сделать возможность удалённого обновления прошивки МК
    В роли загрузчика chip45boot2 https://www.chip45.com/avr_bootloader_atmega_xmega_chip45boot2.php
    Я пробовал с этим загрузчиком работать на прямую через терминал, результат отличный.

    Общий принцип работы с загрузчиком такой:

    1. Отправляем символ "U" до тех пор, пока МК не выдаст по UART ответ: Chip45 (далее версия загрузчика). Это означает, что работает загрузчик.
    Во время отправки символа "U" сбрасываем контроллер (для этой цели задействую GPIO0 через кондёр на Reset МК, можно и любой другой вывод)

    2. Далее нужно отправить символы "pf" ("pe") и дождаться ответа "pf+" ("pe+"). Это включает режим записи во Flash (EEPROM) память.

    3. Затем отправляется сам hex файл (сама прошивка). В процессе передачи контроллер отчитывается о каждой записи, выдавая по UART ответ.
    Во время записи во Flash (EEPROM) работает протокол управления потоком XON/XOFF.

    4. После прошивки отправляем символ "g" и когда контроллер ответит g+ это означает, что мы вышли из загрузчика и пошла выполняться основная программа.
     
    Последнее редактирование: 10 апр 2015

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