Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

Делюсь опытом stm32 esp8266 ат команды самодельная wifi камера

Тема в разделе "Другие проекты", создана пользователем BORISBRITWA, 11 май 2019.

  1. BORISBRITWA

    BORISBRITWA Новичок

    Сообщения:
    6
    Симпатии:
    1
    STM32 wifi камера
    Детали:stm32f4, ov2640 камера и esp01 за 1 бакс)
    Использую режим transparent transmission mode
    В видео используется скорость 921600 бод .Сейчас поднял до 2000000 это даже не половина от максимальной заявленной Baudrate range: 110 to 115200*40 (4.608 Mega).
    Картинка JPEG 800x600 в среднем весит 14килобайт передача занимает на скорости в 2ляма 100ms.
    Сейчас работаю над оптимизацией работы с DMA, должно убрать еще 100-200 ms на захват данных в во фреймбуфер.Я тестировал ESP32 камеру так там 2-6 кадров было 800 на 600 .Это уже на данные момент сравнимо с моими результатами.
     
  2. Алексей.

    Алексей. Авторитетный участник сообщества

    Сообщения:
    499
    Симпатии:
    59
    На esp32 пробрасывал rtp видео поток, получаемый с другого mcu.
    Из за неожиданных лагов, картинка начинает разваливаться (на 264-м кодеке из-за запоздавших слайсов вылезают неприятные артефакты), работает не стабильно, может начать разваливаться через 5 минут или через минуту.
    В общем такое не продать, пришлось отказаться от этого модуля.
     
  3. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.298
    Симпатии:
    1.264
    На ESP8266 уходит много ресурсов (тактов CPU) на задачу помещения данных в RAM с внешних интерфейсов без использования DMA (есть жалкое подобие) и нет места для необходимой буферизации видео-потока к средним рабочим условиям WiFi. У ESP32 аналогично - желательного объема буфера для видео низкого разрешения нет.

    ESP позволяют передавать необходимый поток исключительно из своей QSPI-Flash. При этом среднестатистическая скорость TCP находиться в пределах 1МБ в сек, а при UDP – 1.2..1.5 МБ при условии работы ESP8266 на 160 МГц, близкой зоне AP, одного участника - данной ESP и роутера + довольно чистого эфира рабочего канала WiFi. Чего в городе – “днем с огнем не сыщешь”.
     
  4. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.298
    Симпатии:
    1.264
    Непрерывный поток данные с COM порта в TCP выше 3-х мегабит ESP8266 не протягивает. UART сидит на общей низко-скоростной шине и масса тактов CPU уходит на выемку блоков из его FIFO. В идеальных условиях (ESP8266 и роутер в железном ящике) получите к пределу 5 Мбит UART.
    А когда его обрабатывать - прилеплять заголовки, и передавать по WiFi?
     
  5. BORISBRITWA

    BORISBRITWA Новичок

    Сообщения:
    6
    Симпатии:
    1
    На 3Мегабит на вышло. действительно возникли проблемы.Добился 5 кадров в секунду на 2мегабитах (800x600),(двойной фрейм буфер пока первая часть передается ,вторая наполняется ,). Приблизительный размер картинки указывал.
    Я тестировал ESP32CAM там 2-7 FPS. Я считаю, что у меня очень не плохой результат.

    Есть альтернативные прошивки , чтобы еще чуточку выжать?Или 3Мегабита, это придел из-за низко скоростной шины.

    Может есть вариант прошивки,моста SPI-WIFI? И что из этого соединения можно получить ?

    Картинки идут в JPEG можно даже в браузере их "проигрывать" нужно просто необходимые заголовки дабовалять.
    Но в режиме моста не выйдет.А так картинки на лету обрабатываются openCV, у каждой картинки есть признак начало и конец JPEG .Программа ищет начало и конец показывает и удаляет обработанные из принятых TCP пакетов.
     
  6. Алексей.

    Алексей. Авторитетный участник сообщества

    Сообщения:
    499
    Симпатии:
    59
    На одном ядре что у esp8266, собрались и wifi и интенсивный поток с spi получать? Драйвер wifi всё может испортить. Начали на spi транзакцию и в это время драйвер wifi подожрал ресурсы и с spi получили каку.
     
  7. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.298
    Симпатии:
    1.264
    Это как выйдет "кака" при SPI мастер на ESP?
    У ESP8266 есть конфигурация как у обычного внешнего модуля WiFi на шину типа "обгрызанной" SDIO (QSPI)...
    C Flash на шине QSPI ESP8266 без проблем передает непрерывный поток в 1 мегабайт в TCP, что есть к 8 Мбит в сек.
     
  8. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.298
    Симпатии:
    1.264
    Разбор с SPI ESP8266 был в 2015 году и я уже многое не помню, но помню, что на Arduino вам не достичь даже 1 мегабайта в сек, т.к. необходимо корректировать всё, включая доп. команды компилятору и свои драйвера для SPI на чистом СИ (или ASM :))
     
  9. Алексей.

    Алексей. Авторитетный участник сообщества

    Сообщения:
    499
    Симпатии:
    59
    Нее, у меня esp32 слейвом работал, таск что с spi-ем работал, был на первом ядре, на нулевом ему wifi драйвер мешал.
    Без проблем и 2 мегабайта (точнее 1.8-1.9) получалось.
     
  10. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.298
    Симпатии:
    1.264
    В чистом поле, с одним устройством у роутера в метре :)
    1.8-1.9 мегабайта - это пиковое значение при TCP у ESP32, примерно равное UDP, когда все ACK ложатся ровно и передается от двух полных пакетов на 1 ACK...
    При этом чип нехило греется, если AP удалена и возможен троттлинг.
     
  11. Алексей.

    Алексей. Авторитетный участник сообщества

    Сообщения:
    499
    Симпатии:
    59
    По этим причинам модуль заменен иа медиатек ;)
     
  12. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.298
    Симпатии:
    1.264
    Тут обещают в скором выложить OpenWRT -> Komikan - 8devices и там есть 5 ГГц.
    В продаже уже давно Tenda AC10 -> Tenda AC10 – обсуждение - 4PDA ...
     

Поделиться этой страницей