Arduino Mega Server

Модератор: Alex

serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: Arduino Mega Server

Сообщение serghei » Вт ноя 20, 2018 4:25 pm

Понятно. Так значит надо переписать как положено. Например как у Mochalov_da в готовых решениях для 8266. Подобное есть в скетче радио, но в детали не вникал.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am
Благодарил (а): 4 раза
Поблагодарили: 43 раза

Re: Arduino Mega Server

Сообщение ser009 » Вт ноя 20, 2018 4:29 pm

Я про это и говорю. Данный кусок кода не приемлем.
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: Arduino Mega Server

Сообщение serghei » Вт ноя 20, 2018 4:45 pm

Вот уже год я морочу всем голову и пришел к выводу: надо прикручивать етернет шилд и забыть о wihi как кошмарный сон. У меня в двух метрах от рутера 32-я не коннектится. Стена мешает в метр толшиной. Не могу запустить в работу((. А как нет сети - работем по проводу. Но видимо у Алекса что то пошло не так. А может и запустил платку с етернетом )).
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: Arduino Mega Server

Сообщение serghei » Ср ноя 21, 2018 12:29 am

Тут только маленькая часть большого проекта , касающаяся WiFi. Если не находится локальная сеть , создается точка доступа.

Код: Выделить всё

//**************************************************************************************************
//                                       C O N N E C T W I F I                                     *
//**************************************************************************************************
// Connect to WiFi using the SSID's available in wifiMulti.                                        *
// If only one AP if found in preferences (i.e. wifi_00) the connection is made without            *
// using wifiMulti.                                                                                *
// If connection fails, an AP is created and the function returns false.                           *
//**************************************************************************************************
bool connectwifi()
{
  char*      pfs ;                                      // Pointer to formatted string
  char*      pfs2 ;                                     // Pointer to formatted string
  bool       localAP = false ;                          // True if only local AP is left

  WifiInfo_t winfo ;                                    // Entry from wifilist

  WiFi.disconnect() ;                                   // After restart the router could
  WiFi.softAPdisconnect(true) ;                         // still keep the old connection
  if ( wifilist.size()  )                               // Any AP defined?
  {
    if ( wifilist.size() == 1 )                         // Just one AP defined in preferences?
    {
      winfo = wifilist[0] ;                             // Get this entry
      WiFi.begin ( winfo.ssid, winfo.passphrase ) ;     // Connect to single SSID found in wifi_xx
      dbgprint ( "Try WiFi %s", winfo.ssid ) ;          // Message to show during WiFi connect
    }
    else                                                // More AP to try
    {
      wifiMulti.run() ;                                 // Connect to best network
    }
    if (  WiFi.waitForConnectResult() != WL_CONNECTED ) // Try to connect
    {
      localAP = true ;                                  // Error, setup own AP
    }
  }
  else
  {
    localAP = true ;                                    // Not even a single AP defined
  }
  if ( localAP )                                        // Must setup local AP?
  {
    dbgprint ( "WiFi Failed!  Trying to setup AP with name %s and password %s.", NAME, NAME ) ;
    WiFi.softAP ( NAME, NAME ) ;                        // This ESP will be an AP
    pfs = dbgprint ( "IP = 192.168.4.1" ) ;             // Address for AP
  }
  else
  {
    ipaddress = WiFi.localIP().toString() ;             // Form IP address
    pfs2 = dbgprint ( "Connected to %s", WiFi.SSID().c_str() ) ;
    tftlog ( pfs2 ) ;
    pfs = dbgprint ( "IP = %s", ipaddress.c_str() ) ;   // String to dispay on TFT
  }
  tftlog ( pfs ) ;                                      // Show IP
  delay ( 3000 ) ;                                      // Allow user to read this
  return ( localAP == false ) ;                         // Return result of connection
}
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
tihodom
Сообщения: 5
Зарегистрирован: Ср ноя 21, 2018 9:33 am
Благодарил (а): 0
Поблагодарили: 0

Re: Arduino Mega Server

Сообщение tihodom » Ср ноя 21, 2018 9:49 am

Всем привет. Вот собирался перейти с W5100 на ESP32 в связи с медленной скоростью загрузки страниц и ограниченным количеством 4 сокетов, но тут выясняется проблемы с Wi-Fi на ESP32. Вот и подумай 10 раз стоит ли покупать новый модуль в замен mega2560. Понятно что 240mHz это очень круто, да еще и 4мб памяти, но тут ограничения в количестве портов!

Собственно к чему я, вопрос Alex у, в ранних темах Вы запускали около 48 браузерных страниц и AMS работал без коллизий.
Как же так получается сокета всего 4, а постоянных Ajax подключений 48 плюс задержка TCP/IP три секунды на освобождение сокета,
неужели не происходит накапливание задержки? И как в отличии от W5100 работает Wi-Fi ESP32, есть эти подвисания и какова скорость загрузки страниц?
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: Arduino Mega Server

Сообщение serghei » Ср ноя 21, 2018 10:13 am

Привет. Мега и Esp32 это разные религии. Но конкретно дистрибутив работает очень шустро. С подключением железа есть много вопросов. Но можно работать через расширители портов. Да и с самими платами еще больше проблем. Одна померла,а у другой внутреннюю температуру показывает 92 С...
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am
Благодарил (а): 6 раз
Поблагодарили: 63 раза

Re: Arduino Mega Server

Сообщение alexsis_76 » Ср ноя 21, 2018 12:22 pm

Вот собирался перейти с W5100 на ESP32 в связи с медленной скоростью загрузки страниц и ограниченным количеством 4 сокетов, но тут выясняется проблемы с Wi-Fi на ESP32. Вот и подумай 10 раз стоит ли покупать новый модуль в замен mega2560. Понятно что 240mHz это очень круто, да еще и 4мб памяти, но тут ограничения в количестве портов!
данный чип может уже содержит ethernet ядро, необходим только физический уровень
https://ru.aliexpress.com/item/Smart-El ... abfd064214
код примера есть, забудете W5100 как страшный сон.ну и W5100 за одно.
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Re: Arduino Mega Server

Сообщение Alex » Ср ноя 21, 2018 12:32 pm

Собственно к чему я, вопрос Alex у, в ранних темах Вы запускали около 48 браузерных страниц и AMS работал без коллизий.
Это откуда вы такое взяли? Помнится я запускал несколько страниц, но это было никак не 48.
данный чип может уже содержит ethernet ядро, необходим только физический уровень
https://ru.aliexpress.com/item/Smart-El ... abfd064214
код примера есть, забудете W5100 как страшный сон.
Обалдеть, какие полезные советы вы даёте. Ну-ка, товарищ alexsis_76, прикрутите ethernet физику к ESP32 и запустите на ней АМС с ethernet интерфейсом. А мы росмотрим как у вас очередной программатор неожиданно сгорит. :)
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am
Благодарил (а): 6 раз
Поблагодарили: 63 раза

Re: Arduino Mega Server

Сообщение alexsis_76 » Ср ноя 21, 2018 12:44 pm

Ну-ка, товарищ alexsis_76, прикрутите ethernet физику к ESP32
оно как бы можно, надо только заказать платку с али, найти время, ну и наконец то дописать обещанную статью.
код есть в esp-idf.
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Re: Arduino Mega Server

Сообщение Alex » Ср ноя 21, 2018 12:48 pm

оно как бы можно, надо только заказать платку с али, найти время, ну и наконец то дописать обещанную статью.
Ясно, опять не судьба значит...

:) :) :)
Ответить