ESP8266 MegaD api
Re: ESP8266 MegaD api
Интересный проект. Подскажите а как ESP8266 MegaD api привязать к системе MajorDoMo? Не могу разобраться та как в MegaD-328 есть пункт где можно у казать сервер на который нужно слать данные. здесь пока нет, а будут ли?
Re: ESP8266 MegaD api
Да, на данный момент нет пункта, как и функционала по работе с сервером.Dragon писал(а):Интересный проект. Подскажите а как ESP8266 MegaD api привязать к системе MajorDoMo? Не могу разобраться та как в MegaD-328 есть пункт где можно у казать сервер на который нужно слать данные. здесь пока нет, а будут ли?
Добавил eth: Net Action. + мелкие правки.
Последний раз редактировалось llams 05 фев 2016, 02:22, всего редактировалось 1 раз.
Re: ESP8266 MegaD api
Скажите пожалуйста а планируется появление пунктов:
pwd: пароль для доступа к Web-интерфейсу устройства
sip: IP-адрес сервера
sct: скрипт, который вызывается на сервере в случаях, заданных пользователем
pwd: пароль для доступа к Web-интерфейсу устройства
sip: IP-адрес сервера
sct: скрипт, который вызывается на сервере в случаях, заданных пользователем
Re: ESP8266 MegaD api
C 0.0a5-4m на 0.0a4-1m - Удачно...llams писал(а):Да, на данный момент нет пункта, как и функционала по работе с сервером.Dragon писал(а):Интересный проект. Подскажите а как ESP8266 MegaD api привязать к системе MajorDoMo? Не могу разобраться та как в MegaD-328 есть пункт где можно у казать сервер на который нужно слать данные. здесь пока нет, а будут ли?
Добавил eth: Net Action. + мелкие правки.
По поводу обновления по воздуху проверьте, пожалуйста, разные варианты на своих модулях + переход с одной на другую в обоих направлениях.
Для модулей с 1 Мб памяти: Для модулей с 4 Мб памяти: После прошивки желательно сбросить конфиг.
В обратную сторону нет... (проверял 3 раза)... потом только шить через через UART.
C 0.0a5-4m на 0.0a4-4m - Удачно...
C 0.0a4-4m на 0.0a5-4m - Удачно...
Видимо между 4m стабильно...
Между 1m - нет.
Последний раз редактировалось MSapogov 27 янв 2016, 09:45, всего редактировалось 1 раз.
Re: ESP8266 MegaD api
В pwd: особого смысла не вижу, может сделаю но позже,Dragon писал(а):Скажите пожалуйста а планируется появление пунктов:
pwd: пароль для доступа к Web-интерфейсу устройства
sip: IP-адрес сервера
sct: скрипт, который вызывается на сервере в случаях, заданных пользователем
sip: будет,
sct: вместе sip:
Честно говоря я понимаю не весь api меги, разбираюсь потихоньку.
Re: ESP8266 MegaD api
Уважаемый llams слежу за темой,очень интересно, если что не понятно по меге пишите, подскажемЧестно говоря я понимаю не весь api меги, разбираюсь потихоньку.
это можно реализовать с помощью таймераТолько как это в программном виде, я не знаю.
Re: ESP8266 MegaD api
Спасибо.MSapogov писал(а): C 0.0a5-4m на 0.0a4-1m - Удачно...
В обратную сторону нет... (проверял 3 раза)... потом только шить через через UART.
C 0.0a5-4m на 0.0a4-4m - Удачно...
C 0.0a4-4m на 0.0a5-4m - Удачно...
Видимо между 4m стабильно...
Между 1m - нет.
Апдейтер определяет реальный размер флэша, поэтому на модули 4m не встаёт прошивка 1m. Точнее она встаёт при прошивке проводом или если апдейтер заливающий прошивку скомпилен под 4m, а наоборот никак, т.к. новая прошивка встает в другую область памяти.
Нужно проверить как обновляются модули 1m и прочие, 1m -> 1m, ну и ради интереса 1m -> 4m, проводом залить 4m (может посыпаться при работе с eeprom).
Re: ESP8266 MegaD api
Спасибо.если что не понятно по меге пишите, подскажем
Тогда первый вопрос eth: Net Action в меге имеет ограничение в 35 байт, это действительно так? Тестировал мегу при попытке задать в Net Action команды "192.168.0.14/sec/?cmd=7:2;2:2" получаю "192.168.0.14/sec/?cmd=7:2;" странно.
И еще один, нужен ли именно такой формат записи IP адреса Net Action, очень много ресурсов на простой параметр. Чаще всего устройства находятся в одной подсети, может имеет смысл откинуть первые 3 октета IP? Или пытаться разбирать IP при сохранении в eeprom (что логично)? Хотя можно немного отойти в сторону от API меги и передавать октеты IP отдельно а команду отдельно.
А еще лучше вообще избавиться от повторяющейся части команды т.к. скорее всего пароль на всех мегах у конечного пользователя один.
Re: ESP8266 MegaD api
В MegaD-328 для хранения IP адреса в EEPROM используется 4 байта.
NetAction предназначен не только для управления другими устройствами, поэтому URL может быть любым.
NetAction предназначен не только для управления другими устройствами, поэтому URL может быть любым.
Re: ESP8266 MegaD api
Андрей, спасибо за подсказку. Честно говоря не думал в этом ключе. Пойду читать форум.Andrey_B писал(а):В MegaD-328 для хранения IP адреса в EEPROM используется 4 байта.
NetAction предназначен не только для управления другими устройствами, поэтому URL может быть любым.
Re: ESP8266 MegaD api
сдесь я так понял происходит декодирование этого поляif (find_key_val2((char *)&(buf[dat_p+4]),temp,42,"eth"))
{
//if ( strlen(temp) > 0 )
{
urldecode(temp);
char urlpar[13];
uint8_t urlpar_flag = 0;
uint8_t urlpar_flag2 = 0;
if ( temp[0] == '\0' )
_eth_addr[0] = 255;
else
{
memset(urlpar, 0, sizeof(urlpar));
for ( i = 0; i < strlen(temp); i++ )
{
if ( urlpar_flag == 0 && temp == ':' )
{
eeprom_write_byte ((void*)ee_eth_cmd[n]+4, ':');
eeprom_write_word((void*)ee_eth_cmd[n]+5, strtoul(&temp[i+1], NULL, 10));
urlpar_flag2 = 3;
}
if ( urlpar_flag > 0 )
{
urlpar[urlpar_flag-1] = temp;
urlpar_flag++;
}
else
{
if ( temp == '/' )
urlpar_flag++;
}
}
decode_ip(temp, _eth_addr);
}
eeprom_write_block (_eth_addr, &ee_eth_cmd[n], 4);
eeprom_write_block (urlpar, (void*)ee_eth_cmd[n] + 4 + urlpar_flag2, 13 - urlpar_flag2);
reset_flag = 1;
}
}
и запись в еепром
вот сюда
на каждый порт по 17 байт, чет я 35 не нашел// NetAction
uint8_t EEMEM ee_eth_cmd[IO_SIZE][17];
ну ничего не поделаешьИ еще один, нужен ли именно такой формат записи IP адреса Net Action, очень много ресурсов на простой параметр
таков уж формат передачи по сети , в еепром сохранять строку ip адреса еще затратнее , если не преобразовывать нужно больше памяти
Re: ESP8266 MegaD api
Это настройки самих портов, а есть ещё общиена каждый порт по 17 байт, чет я 35 не нашел
Re: ESP8266 MegaD api
Код: Выделить всё
uint8_t _ip_addr[4];
Re: ESP8266 MegaD api
С радостью бы проверил, но у меня только ESP-12E и F... А они все с 4mb.llams писал(а):Спасибо.MSapogov писал(а): C 0.0a5-4m на 0.0a4-1m - Удачно...
В обратную сторону нет... (проверял 3 раза)... потом только шить через через UART.
C 0.0a5-4m на 0.0a4-4m - Удачно...
C 0.0a4-4m на 0.0a5-4m - Удачно...
Видимо между 4m стабильно...
Между 1m - нет.
Апдейтер определяет реальный размер флэша, поэтому на модули 4m не встаёт прошивка 1m. Точнее она встаёт при прошивке проводом или если апдейтер заливающий прошивку скомпилен под 4m, а наоборот никак, т.к. новая прошивка встает в другую область памяти.
Нужно проверить как обновляются модули 1m и прочие, 1m -> 1m, ну и ради интереса 1m -> 4m, проводом залить 4m (может посыпаться при работе с eeprom).
Что радует, то после прошивки настройки сети сохраняются!
Что не совсем радует, то это после каждого изменения назначения GPIO, модуль рестартует
Если нужно поменять все выводы скриптом, как это делается в драйвере IoBroker , например, то коннект с модулем потеряется..
Может отдельно кнопку применить изменения? (но в общую логику не подходит). Что самое интересное на проекте homes-smart, при изменении назначения вывода модуль не рестартует (автор сразу пишет программу на Си используя SDK модуля).
Для расширителей портов можно зарезервировать сразу выводы как на homes-smart (Да простит меня Adminhs)
Код: Выделить всё
GPIO Описание
0-5,12-16 GPIO самого модуля.
6-11 GPIO заняты под flash память.
20-79 VGPIO удаленных ESP8266 (только управление)
80-199 Зарезервирировано. Может быть расширено для VGPIO
200-215 Ремап MCP23017 (только управление)
220-227 Ремап PCF8574 (только управление)
230-245 Ремап 74HC595 (только управление)
Re: ESP8266 MegaD api
Добавил sip: IP-адрес сервера + много правок.
Все Act для порта IN выполняются всегда, позже доделаю условия.
Может есть пожелания? Можно отвязаться от условия ожидания сервера если это не нужно для конкретного порта.
Все Act для порта IN выполняются всегда, позже доделаю условия.
Может есть пожелания? Можно отвязаться от условия ожидания сервера если это не нужно для конкретного порта.
Последний раз редактировалось llams 05 фев 2016, 02:22, всего редактировалось 1 раз.
Re: ESP8266 MegaD api
Обновление по воздуху с 5-4m на 6-4m - без проблемllams писал(а):Добавил sip: IP-адрес сервера + много правок.
Все Act для порта IN выполняются всегда, позже доделаю условия.
Может есть пожелания? Можно отвязаться от условия ожидания сервера если это не нужно для конкретного порта.
Для модулей с 1 Мб памяти: Для модулей с 4 Мб памяти:
Re: ESP8266 MegaD api
Подскажите а как вы обновляете по воздуху, а то у меня какой то затык.
Re: ESP8266 MegaD api
Какие симптомы?
Какой модуль? Возможно используете не ту прошивку, для 1m я тоже не могу проверить.
Какой модуль? Возможно используете не ту прошивку, для 1m я тоже не могу проверить.