Перейти к содержанию
    

Помогите с ESP8266 ( ESP-WROOM-02 )

Спасибо, но из этого списка:

 

 

Quote

- все кроме первой и последней ссылок вообще не имеет ни малейшего отношения к моей теме.

В последней - тема проде и похожая, но только частично. Там все несколко по другому.

Вот первая ближе всего, но там все на пайтоне а не mkspiffs, попробую конечно разобраться, но я с пайтоном не очень дружу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

могу порекомендовать

1) форки libesphttpd

https://github.com/chmorgan/esphttpd-freertos

https://github.com/MightyPork/libesphttpd

при желании esphttpd несложно заменяется на spiffs

2) штатный вебсервер из esp-idf

3) esp-ginx

https://github.com/israellot/esp-ginx

 

c 1 и 2 я имел дело. 3) не пробовал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Друзья, я наверное просто плохо обяснил в чем проблема.

У меня нет проблемы с  программой вебсервера для ESP, сслыки на которые вы мне все время приводите.

Он работает. И spiffs в нем работает. проблема в другом.

Чтобьы не повторяться, скопирую текс, который мой напарник задал на другом форуме:

 

Quote

Поясняю, есть два варианта - вставить текст html файлов в Си-код, и слать "на лету". Этот вариант работает, но не интересено, т.к. потом невозможно менять контент без перешивки фирмваре.



Другой вариант - флеш-память модуля разбивается на две партиции, первая, с нуля, содержит прошивку. Т.е. код, по которому работает процессор ESP.
Вторая часть (начинается во 2-го мегабайта) - это диск, spiffs (SPI Flash File system).
На ней хранятся файлы, в том числе и html, хотя можно что угодно.
Эти фацлы потом можно менять, удалять, добавлять, как на любом диске.
В данном случае, там находится контент веб-сервера, т.е. html, css, js, png, jpg, zip и т.п.




Использовать все это можно тоже двумя вариантами:
1. прошить из под IDE в модуль. Это работает.
Но не пригодно для последующего использования в девайсе с бутлоадером и соответственно апдейтом всего этого.


2. Для прошивки (в первый раз) в ESP-модуль:
а) делается имедж этого диска программой mkspiffs, получается бинарник.
б) Этот бинарник затем программой MergeSpiffs обединяется с бинарником, фирмваре, созданным компилятором, и прошивается в модуль бутлоадером или (для отладочного модуля, подключенного к СОМ-порту компа) - программой flash_download_tools.
И вот тут проблема - вебсервер не видит файлов.
Значит ошибка или в а) или в б).

 

Да, я понимаю что при слове "Ардуино" у многих выступают слезы, у меня тоже :) Но в ней-то как раз все работает, не работает без нее.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 minutes ago, Allregia said:

Да, я понимаю что при слове "Ардуино" у многих выступают слезы, у меня тоже :) Но в ней-то как раз все работает, не работает без нее.

Так без неё вы и не попробовали даже! Хотя затраченного времени с лихвой хватило бы на запуск того же esphttpd (тоже рекомендую, кстати) с любой fs по вкусу - spiffs, espfs, да хоть fatfs.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 minutes ago, aaarrr said:

Так без неё вы и не попробовали даже!

Именно без нее и пробовали, когда получили 404 ошибку.

 

3 minutes ago, aaarrr said:

лихвой хватило бы на запуск того же esphttpd (тоже рекомендую, кстати) с любой fs по вкусу - spiffs, espfs, да хоть fatfs.

 

Это поможет понять ошибку в командной строке программы mkspiffs или алгоитм программ mergeSpiffs?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 minutes ago, Allregia said:

Именно без нее и пробовали, когда получили 404 ошибку.

Так основная прошивка была ардуиной сгенерирована, верно?

 

6 minutes ago, Allregia said:

Это поможет понять ошибку в командной строке программы mkspiffs или алгоитм программ mergeSpiffs?

Это позволит отдебажить все без черных ящиков: вызываем монтирование spiffs и смотрим код ошибки в терминале, а не 404 в браузере.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

31 minutes ago, Allregia said:

Значит ошибка или в а) или в б).

Угу. Вариант, как определить где ошибка:

1. Зашиваем всё по варианту 1 (который работает). Програмой flash_download_tools скачиваем из ESP образ

2. Зашиваем по варианту 2 (не работает). Той же программой flash_download_tools скачиваем из ESP образ

3. Сравниваем образы от п1 и п2. Скорее всего что то не туда записалось (не по тем адресам).

4. Правим бажный скрипт ( mkspiffs  или MergeSpiffs )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

25 minutes ago, Allregia said:

Да, я понимаю что при слове "Ардуино" у многих выступают слезы, у меня тоже :) Но в ней-то как раз все работает, не работает без нее.

Когда вы объединяете прошвку с фс прошивке нужно как-то сказать адрес во флэшке где лежит фс.

В esp-idf это делается партициями, но в 8266 такого нет. Вам нужно что-то придумать. Я в одном случае делал поиск espfs по сигнатуре.

Когда вы делаете монолитный проект (хоть в абдурине хоть где-то еще) адрес фс известен линкеру и поэтому там все работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, sharikov said:

Когда вы объединяете прошвку с фс прошивке нужно как-то сказать адрес во флэшке где лежит фс.

В esp-idf это делается партициями, но в 8266 такого нет. Вам нужно что-то придумать. Я в одном случае делал поиск espfs по сигнатуре.

Когда вы делаете монолитный проект (хоть в абдурине хоть где-то еще) адрес фс известен линкеру и поэтому там все работает.

Это не совсем верно.

 

https://docs.espressif.com/projects/esp8266-rtos-sdk/en/latest/api-guides/partition-tables.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, sharikov said:

. . . В esp-idf это делается партициями, но в 8266 такого нет. Вам нужно что-то придумать. Я в одном случае делал поиск espfs по сигнатуре. . . .

Для флешек и других "помнящих" устройств, как-бы подразумевается, что очень даже возможны ошибки в виде отказа - забывания чего либо в разных объемах и вариантах. С самых дремучих времен это уже закладывалось "как данное", использование техже сигнатур, 0x55AA или как-то, уже и не помню, небыло необходимости уже лезть в эти дебри. Неужто нет никакой (системной) диагностики, что файловая система не найдена ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А если WEB-страницу поместить в spiffs уже после прошивки? Штатными средствами работы со spiffs её туда поместить (передать по UART с внешнего контроллера или с ПК), а потом по WiFi запросу штатными-же средствами её из spiffs считать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, xvr said:

. Зашиваем всё по варианту 1 (который работает). Програмой flash_download_tools скачиваем из ESP образ

Это первое, что пришло мне в голову. Но к сожалению -  не обнаружил в ней возможости скачать  содержимое флеша модуля, только запись.

1 hour ago, sharikov said:

Когда вы объединяете прошвку с фс прошивке нужно как-то сказать адрес во флэшке где лежит фс.

Он в обоих случаях (и рабочем, и не рабочем) ,лежит с 0х100000.

1 hour ago, aaarrr said:

Так основная прошивка была ардуиной сгенерирована, верно?

Проовали и Ардуиной и Визуалом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос решился, основная проблема была не совсем корректно переведенной с Пайтона в Си программе merge.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...