• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

ESP8266 SDK v1.0.0 20.03.2015

JustACat

Moderator
Команда форума
Victor, прикольно, надо пощупать!
А вы у них видели ссылку на "Bug Bounty Program"?
Вроде как обещают реальные деньги (200 USD) за отловленные (и ранее неизвестные) в новой SDK баги.

Небольшой вклад от меня - перевод списка изменений из темы:
esp_iot_sdk_v1.0.0_15_03_20 изменения

Fix bugs:
Исправлены баги:
1、 Interrupt during flash erasing will cause wdt reset;
1、 Прерывание во время цикла стирания flash вызывало reset по вачдогу;
2、 Read/write rtc memory;
2、 Чтение/запись памяти RTC;
3、 If router disconnect to ESP8266, ESP8266 won’t reconnect;
3、 Если роутер отключался от ESP, то ESP не реконектилась;
4、 Connect to router which hid its SSID
4、 Подключение к роутеру со скрытой сетью

Add APIs:
Добавлены API:
1、system_update_cpu_freq: change CPU frequency;
1、system_update_cpu_freq: изменение частоты CPU;
2、wifi_promiscuous_set_mac: set a mac address filter during sniffer;
2、wifi_promiscuous_set_mac: установка фильтра по mac адресу для сниффера;
3、wifi_set_broadcast_if : set which interface will UDP broadcast send from;
3、wifi_set_broadcast_if: установка, с какого интерфейса отправлять UDP broadcast пакеты;

Optimization:
Оптимизации:
1、Optimize smartconfig to version v1.0;Please don't call any other APIs during SmartConfig.
1、Оптимизирован smartconfig до версии v1.0; Пожалуйста, не вызывайте другие API во время работы SmartConfig.
2、Optimize AT to version 0.22.0.0;
2、Оптимизирована AT прошивка до версии 0.22.0.0;
3、Optimize the protection of system parameters , and add error-check about it;
3、Оптимизирована защита системных параметров и проверка ошибок для них;
4、Optimize beacon delay of ESP8266 softAP;
4、Оптимизирована задержка между beacon (вещанием) в режиме softAP;
5、Optimize boot to version 1.3(b3);
5、Оптимизирован загрузчик до версии 1.3(b3);
1>、Add API system_restart_enhance: for factory test, support to load and run program in any specific address;
1>、Добавлено API system_restart_enhance: для заводских тестов, поддерживает загрузку и исполнение программ по любому адресу;
2>、Add APIs to get boot version and start address of current user bin;
2>、Добавлено API для получения версии загрузчика и стартового адреса текущего пользовательского бина;
3>、Fix compatibility problem of dual flash;
3>、Исправлена проблема совместимости двойной flash;
6、Optimize sniffer, structure sniffer_buf changed, please refer to document;
6、Оптимизирован сниффер, изменена структура sniffer_buf, пожалуйста, обратитесь к документации;
7、Optimize espconn;
7、Оптимизирован espconn;
8、Optimize pwm;
8、Оптимизирован ШИМ;
9、Other optimize to make the software more reliable;
9、Другие оптимизации для улучшения стабильности ПО;

AT_v0.22 изменения

Important Note:
Важные замечания:
1.AT added some functions so it's larger than before, if you want to compile it, please modify ld files according to the “!!!readme!!!" file.
1.В AT добавлены новые функции, и она стала больше, чем раньше, если вы хотите скомпилировать ее, пожалуйста, измените ld файлы согласно “!!!readme!!!" файлу.
2."AT+CIUPDATE" , if you use Espressif AT bin(\esp_iot_sdk_v1.0.0\bin\at) directly it will upgrade bin files from Espressif Cloud; if you compiled your own AT, you need to do your own "AT+CIUPDATE" ,we provide a demo(\esp_iot_sdk_v1.0.0\examples\at ) showing upgrade from local server.
2."AT+CIUPDATE", если вы используете AT прошивку от Espressif (\esp_iot_sdk_v1.0.0\bin\at) она будет обновляться из облака Espressif; если вы компилируете свою собственную AT прошивку, вы должны реализовать вашу собственную "AT+CIUPDATE", мы прилагаем демо-проект (\esp_iot_sdk_v1.0.0\examples\at) с демонстрацией обновления прошивки с локального сервера.
3. Previous version of AT,can not upgrade from Espressif Cloud any more,please use this latest AT.
3. Предыдущие версии AT не смогу больше обновиться с облака Espressif, пожалуйста, используйте данную последнюю прошивку AT.

Fix bug:
Исправлены баги:
1、Wrong return value of AT+CIPSTATUS;
1、Неверное возвращаемое значение от AT+CIPSTATUS;
2、wdt rest after “0,CONNECT FAIL”;
2、reset по вачдогу после “0,CONNECT FAIL”;

Add AT commands:
Новые AT команды:
1、 Change AT commands of which configuration will store into flash to two kinds:
XXX_CUR: current,only set configuration,won’t save it into Flash;
XXX_DEF: default, set configuration and save it to Flash
1、 Изменения в том, какие AT команды (точнее их результаты) сохраняются во, теперь возможно два варианта:
XXX_CUR: не будут сохранены во Flash (т.е. после рестарта не восстановятся);
XXX_DEF: будут сохранены во Flash

2、Add SmartConfig in AT:
AT+CWSTARTSMART/AT+CWSTOPSMART: start / stop SmartConfig
Notice:please refer to the document, call “AT+CWSTOPSMART” to stop SmartConfig first since “AT+CWSTARTSMART”,then call other AT commands. Don’t call any other AT commands during SmartConfig.
2、Добавлена AT команда SmartConfig:
AT+CWSTARTSMART/AT+CWSTOPSMART: запустить / остановить SmartConfig
Пометка: пожалуйста, обратитесь к документации. Вызывайте “AT+CWSTOPSMART”, чтобы остановить SmartConfig, после того, как вы его запустили командой “AT+CWSTARTSMART”, и только потом вызывайте другие AT команды. Не вызывайте другие AT команды во время SmartConfig.

3、 AT+SAVETRANSLINK:save transparent transmission link to Flash;
Note:AT+CIPMODE=1 set to enter transparent transmission mode,won‘t save to Flash.
3、 AT+SAVETRANSLINK: сохранить текущий прозрачный режим во Flash;
Пометка: AT+CIPMODE=1 теперь будет лишь включать прозрачный режим, но не будет сохранять это во Flash.

Add AT APIs
Новые AT API
1、at_customLinkMax: set the max link that allowed, most can be 10; if you want to set it, please set it before at_init; if you didn’t set it, the max link allowed is 5 by default.
1、at_customLinkMax: установить максимальное количество соединений, (максимум 10); если вы хотите установить этот параметр, пожалуйста, делайте это до at_init; если вы не установите этот параметр, то по умолчанию будет значение 5.
2、at_enter_special_state/ at_leave_special_state:Enter/leave AT processing state. In processing state, AT core will return “busy” for any further AT commands.
2、at_enter_special_state/ at_leave_special_state: Вход/покидание AT состояния обработки. В состоянии обработки ядро AT будет возвращать “busy” в ответ на все последующие AT команды.
3、at_set_custom_info:set custom version information of AT which can be got by AT+GMR;
3、at_set_custom_info: установить свою собственную информацию о версии AT, которая будет возвращена по команде AT+GMR;
4、at_get_version:get version information of AT lib .
4、at_get_version: получить версию AT библиотеки.

Optimize
Оптимизации
1、 Add UDP remote ip and remote port is allowed to be parameters of “AT+CIPSEND”
1、 Для “AT+CIPSEND” параметрами могут быть UDP удаленный ip и удаленный порт
2、 Move “AT+CIUPDATE” from lib to AT demo(\esp_iot_sdk\examples\at), AT demo shows how to upgrade AT firmware from a local server. Notice that AT upgrade the bin files name have to be "user1.bin" and "user2.bin".
2、 “AT+CIUPDATE” перемещена из библиотеки в AT пример (\esp_iot_sdk\examples\at), AT пример демонстрирует, как обновить AT прошивку с локального сервера. Обратите внимание, что имена файлов прошивок для обновления должны быть "user1.bin" и "user2.bin".
3、 Optimize “AT+CIPSTA”, add gateway and netmask as parameters
3、 Оптимизирована “AT+CIPSTA”, добавлены параметры gateway (шлюз) и netmask (маска подсети)
4、 Optimize transparent transmission.
4、 Оптимизирован прозрачный режим.

Known issues:
Известные баги:
1. DHCP client may get wrong IP address
1. DHCP клиент может получить неверный IP адрес
2. Lib c string issue
2. Проблема с "Lib c string"
3. wifi_station_get_connect_status won‘t change immediately.
3. wifi_station_get_connect_status не изменяется сразу.
Как по мне - есть интересные моменты. Даже захотелось еще раз попытаться обойтись AT прошивкой для реализации UART моста на ESP, вместо написания собственной прошивки для этого. А точнее так - поковырять их исходники AT прошивки, может что-то туда добавить, и использовать, особенно с обновлением прошивки с локального сервера.
 

pvvx

Активный участник сообщества
Первая печальна весшъ в SDK 1.0.0:
Сравнение по памяти (SDK 0.9.5 / 1.0.0):
Total Used RAM : 39952 / 43336
Free RAM : 41968 / 38584
Free IRam : 6100 / 5244
Current 'heap' size: 41696 / 38304 bytes (это в user_init())
Current 'heap' size: 39072 / 35680 bytes (это в system_init_done_cb(xxx), после инициализации SDK, т.е. = имеющийся максимум)

Итого: C SDK 1.0.0 потеряли ещё 10% памяти (3392 байта)
И это только с необходимым минимумом библиотек (включая свою LwIP), без всяких libjson.a, liblwip.a, libsmartconfig.a, libat.a, libssl.a, libupgrade.a....
 
Протестировал эту версию, пока правда не полностью. Но кое какие впечатления есть:
1) за пол часа работы в режиме сервера , не единого падения и перезагруза (микроконтроллер не отловил ни одной критической ошибки, чтобы перезагружать модуль)
2) передатчики (режим клиента) стабильно передают данные серверу , в терминале данные принимаю и расшифровываю .

На текущий момент вроде работает :)
Осталось за малым , запустить еще дополнительных 5шт. передатчиков и проверить )))
 
Сверху Снизу