• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Буфер esp8266

AlexeyGR

New member
Приветствую всех!
Прошу Вашей помощи в решении вопроса:
Почему функция smartlink_promiscuous_rx(uint8_t *buf, uint16 len)
возвращает ограниченную длину в (len) 128 байт (из кадра считана почти середина),
и кадр начинается со смещения в 20 байт от начала?
Может плохо искал, но так и не нашёл размер буфера для приёма данных.
Использую Espressif DevKit v1.0.7.
 

pvvx

Активный участник сообщества
Получается что остаётся только ждать когда "они" ещё увеличат буфер (если увеличат) )?, а если самому?, то в какую сторону "смотреть"?
Они очень дорожат кодом для WiFi и описанием аппаратуры по WiFi. Они реализовали свой smartlink в SDK 0.9.5 и наверняка ничего больше менять не будут и никаких исходников к 0.9.5 пока нет. Чем больше им выдают их ошибки, тем больше они закрывают, после исправления. Это намекает о том, что не надо больше давать в открытые источники ошибки по SDK Espressif и другие варианты решения разных задач. Тогда Espressif никогда не доделает свой SDK и будет вынужден выкладывать информацию. :)
 

AlexeyGR

New member
Файлы в папке lib (SDK) участвуют при компиляции?,
например esp_buf.o (находящегося в libpp.a), а это наверное нужные мне функции esf_rx_buf_alloc, esf_buf_alloc, esf_buf_recycle, esf_buf_setup?
Из этих файлов импортируются функции при компиляции прошивки?
 
Последнее редактирование:

pvvx

Активный участник сообщества
Файлы в папке lib (SDK) участвуют при компиляции?
Да - вставляются напрямую в выходную прошивку, если есть хоть одно обращение к либе...
В BIOS ROM тоже есть работа с WiFi. По началу надо её раскрутить, а либы - это уже потом.
При инициализации либов в SDK, они используют систему памяти от LwIP. Все принятые кусочки (пакетики WiFi) передаются LwIP, а далее уже разгребаются, используя его функции.
Подключите к проекту только стандартные библиотеки c gcc hal и далее по очереди phy pp main и т.д. - получите в ошибках линковки список обращений к функциям LwIP. (так просто проще и нагляднее, оперируя только makefile)
При включенных LIBS = c gcc hal main phy pp net80211 wpa получите: undefined reference to `pbuf_alloc', `pbuf_ref', `pbuf_free', `netif_set_up', `netif_set_down' ...
Надо разбирать библиотеки на объектники и менять функции (замещать), а затем опять собирать уже со своими вставками...
 
Последнее редактирование:
Сверху Снизу