shaman1010
Member
"или"и в роутере
"или"и в роутере
Тогда уж "и/или""или"
Неа. DHCP выключаем - статик на роутере не поможетТогда уж "и/или"
У меня так и работает. Надо ставить вписывать IP и т.д. на station. Конфликта нет. Когда снимаете галку DHCP - IP и прочее остается вписанным.Неа. DHCP выключаем - статик на роутере не поможет
Так что толпа вариантов.Или выключаем DHCP, и руками на модули ставим, что нужно. Или оставляем включенным DHCP, а на роутере гвоздим его статиком.
Это и есть отключение DHCP на модуле. Роутер здесь не участвует в присвоении адресов, вне зависимости есть на роутере статик на MAC девайса, либо нет. Но статик на роутере поможет, если модуль обнулить и перешить - тогда по умолчанию (DHCP включен) роутер выдаст модулю тот адрес, который в нем загвоздили за этим MAC-ом.У меня так и работает. Надо ставить вписывать IP и т.д. на station. Конфликта нет. Когда снимаете галку DHCP - IP и прочее остается вписанным.
Снял галочку DHCP. И все заработало без прописки мак адреса. Адрес всегда фиксирован получился.У station галочку DHCP снять и в роутере назначить фиксированный адрес по MAC.
Изначально стоят предельные. На 9600 Baud - время передачи от последнего символа в пакете UART - 2 ms (2 символа). При других, более скоростных baud, к примеру 3 000 000 baud - около 0.2 ms. RACK425 имеет большие задержки.Где можно подкорректировать настройки модуля для хорошего быстродействия?
RAK425 работает с AT командами. Кто такая 'Каскада' и на каком протоколе работает я не знаю и знать не хочу. Напишите в 'Каскада' чтобы опубликовали тип протокола и соответствие к RFC стандартам.Другой модуль WIFI RACK425 такой проблемы не имеет хотя тоже работает как прозрачный УАРТ.
Работает по протоколу MODBUS. Выступает как беспроводная HIM панель на андроиде в плеймаркете таких много есть.Напишите в 'Каскада' чтобы опубликовали тип протокола и соответствие к RFC стандартам.
Для Modbus есть свой драйвер стандарт по TCP. Он работает на модуле.Работает по протоколу MODBUS. Выступает как беспроводная HIM панель на андроиде в плеймаркете таких много есть.
Все компоненты (ввода и вывода) имеют связь с контроллером через сетевые переменные ,назначенные в контроллере .Сетевые переменные это регистры ,которые имеют адресацию в контроллере.Биты в контроллере обьеденены в регистры (16 бит) .Но по сети в любом случае передается регистры .Тогда в Каскаде компоненты привязываете к сетевым устройствам ,их регистрам (адресам) и битам (номера) .И задаете в зависимости от канала связи сервера -если блютуз то выбираете по мас адресу то или иное устройство из списка ,если вайфай то прописываете IP адрес и порт .если юсби то делаете настройки канала ...
Попробовал..... Тот же результатИ более полный вариант тут Modbus TCP / RTU RS-485 + WEB server
Значит ваша программа неправильная - не поддерживает стандарты. Сделана для рекламы работы с продаваемым к ней оборудованием, которое не поддерживает стандарты.Попробовал..... Тот же результат
Если б было плохо настроены поты или адреса тогда, вообще не работало. А так получается что немного работает и немного не работает.
Я участвовать в рекламе их поддерживаемого оборудования не собираюсь. Это возможно только в случае перевода нормальной суммы на поддержку хоть данного сайта. Тогда можно будет подумать о встраивании их кривых протоколов в отдельной версии.Напишите в 'Каскада' чтобы опубликовали тип протокола и соответствие к RFC стандартам.
os_sprintf(payload, MACSTR ",%s", MAC2STR(macaddr), "12345\r\n");
ets_uart_printf("12345 \r\n");
tcp_write(conn->pcb, "12345", len, 0);
//-------------------------------------------------------------------------------
// TCP sent_cb (UART->bufo->TCP)
//-------------------------------------------------------------------------------
err_t ICACHE_FLASH_ATTR tcp2uart_sent_cb(TCP_SERV_CONN *conn) {
#if DEBUGSOO > 3
tcpsrv_sent_callback_default(conn);
#endif
tcp2uart_conn = conn;
if(conn->cntro) {
uint32 len = mMIN(conn->pcb->snd_buf, conn->cntro);
#if DEBUGSOO > 5
os_printf(" sent2 %u bytes\n", len);
#endif
os_printf(" sent2 %u bytes\n", len);
//tcp_write(conn->pcb, "12345\r\n", len, 0);
os_sprintf(payload, MACSTR ",%s", MAC2STR(macaddr), "12345\r\n");
ets_uart_printf("ESP8266 platform starting... \r\n");
if(tcp_write(conn->pcb, uart_drv.uart_rx_buf, len, 0)!= ERR_OK) {
#if DEBUGSOO > 1
os_printf("tcp2uart: err sent!\n");
#endif
}
if(len) {
uart_del_rx_chars(len);
conn->cntro -= len;
}
}
return ERR_OK;
}
Спасибо за подсказку !@Артемий
смотри лучше пример /app/mdbtcp
это проще!
какая кнопка? (вэб или gpio)
почему tcp ?
(кст udp в разы проще! ибо не нужно ждать когда соединение подымется)
и зачем это? в чем истинный смысл?
Отдельным TCP соединением.Мне надо при нажатии на кнопку отправить строку в тср .
А как в тср отправить хотя бы символ?
UDP через WiFi - нуль гарантий что дойдет.Спасибо за подсказку !
Почему не используете Arduino? Там web и прочее есть...Поэтому пришлось разбираться с этим проектом