Comments 40
Есть же Pogo pins?
Что с ним надо делать, чтобы убить?
Понятно, что не каждый ESP-12 доживет до просветления.
Что с ним надо делать, чтобы убить?
Странная статья, ИМХО.
Все мы пользуемся теми или иными костылями для наших изобретений, но никому не приходит в голову написать статью, о том что оказывается очередной IDE-разъем подходит под гребенку Raspberry PI, и это круто.
Тут блин научился обмениваться информацией от датчиков подключенных к ESP, отправлять их на сервер, в зависимости от их показаний заливать новую совершенно иную прошивку на этот же ESP для последующих действий этого же самого ESP, и то не выложил, потому что банальщина и это может любой кто хоть раз видел в глаза какой-то язык программирования.
А здесь эвон как просто — научился пользоваться плоскогубцами — выложил, научился пилить разъем — выложил.
Не хочу обидеть автора статьи, но моя система прошивки ESP втыкается напрямую в USB, а его система прошивки ESP занимает пол-стола соплей. Я что-то сделал не так ?)
Все мы пользуемся теми или иными костылями для наших изобретений, но никому не приходит в голову написать статью, о том что оказывается очередной IDE-разъем подходит под гребенку Raspberry PI, и это круто.
Тут блин научился обмениваться информацией от датчиков подключенных к ESP, отправлять их на сервер, в зависимости от их показаний заливать новую совершенно иную прошивку на этот же ESP для последующих действий этого же самого ESP, и то не выложил, потому что банальщина и это может любой кто хоть раз видел в глаза какой-то язык программирования.
А здесь эвон как просто — научился пользоваться плоскогубцами — выложил, научился пилить разъем — выложил.
Не хочу обидеть автора статьи, но моя система прошивки ESP втыкается напрямую в USB, а его система прошивки ESP занимает пол-стола соплей. Я что-то сделал не так ?)
Секундочку, секундочку!
>>в зависимости от их показаний заливать новую совершенно иную прошивку на этот же ESP для последующих действий этого же самого ESP
с этого момента поподробнее, пожалуйста!
Можно в личку, а лучше статью напишите для пользы сообществу!))
>>в зависимости от их показаний заливать новую совершенно иную прошивку на этот же ESP для последующих действий этого же самого ESP
с этого момента поподробнее, пожалуйста!
Можно в личку, а лучше статью напишите для пользы сообществу!))
>Я что-то сделал не так ?)
Только одно: в отличие от топикстартера никому об этом не рассказал
Только одно: в отличие от топикстартера никому об этом не рассказал
Вы наверное в linux foundation работаете. Каждый комментарий как commit в репозиторий.
тоже интересно каким вариантом заливки прошивки пользуетесь?
если без Apache2 + PHP на сервере который заливает прошивку на ESP то поподробнее
если без Apache2 + PHP на сервере который заливает прошивку на ESP то поподробнее
И да и нет. На сервере живет злобный ГУЙ, на который можно зайти и поклацать. Он работает на nginx+php-fpm.
А сама прошивка через банальный CURL.
На самом деле задача довольно нетривиальная, готовых решений в интернете я не нашел.
Как вы поняли, юзаю NodeMCU, соответственно на ESP лежат две части. Первая, init — собственно статика, которая запускается первой, и в зависимости от состояния одного GPIO, подключается к точке доступа, либо сама становится точкой доступа для изменения параметров (эдакий hard reset). Потом эта статика обрабатывает входящие POST-запросы, собственно отлавливает необходимый ключик и шьет второй файл, собственно «прошивку».
А нетривиально, потому что во-первых, LUA со строками работает через жопу, и чтобы сделать аналог "$c=$_POST['firmware'];file_put_contents(«firmware.lua»,$c); — нужно очень и очень извратиться, а во-вторых работа с серверными переменными так же реализована через одно место — и их тоже приходится парсить самому. К этому добавьте уникальную особенность ESP-шки вешаться в случае самой незначительной ошибки (например если длина запроса больше отведенной под это переменной, а введение Content-size жрет бесценные байты), и представите мою злость когда я все это писал.
Но тем не менее, эта задача не требует особых знаний, ни схемотехники, ни программирования. Я этот LUA вообще первый раз в жизни увидел. Посему выкладывать это в интернет не счел нужным.
А сама прошивка через банальный CURL.
На самом деле задача довольно нетривиальная, готовых решений в интернете я не нашел.
Как вы поняли, юзаю NodeMCU, соответственно на ESP лежат две части. Первая, init — собственно статика, которая запускается первой, и в зависимости от состояния одного GPIO, подключается к точке доступа, либо сама становится точкой доступа для изменения параметров (эдакий hard reset). Потом эта статика обрабатывает входящие POST-запросы, собственно отлавливает необходимый ключик и шьет второй файл, собственно «прошивку».
А нетривиально, потому что во-первых, LUA со строками работает через жопу, и чтобы сделать аналог "$c=$_POST['firmware'];file_put_contents(«firmware.lua»,$c); — нужно очень и очень извратиться, а во-вторых работа с серверными переменными так же реализована через одно место — и их тоже приходится парсить самому. К этому добавьте уникальную особенность ESP-шки вешаться в случае самой незначительной ошибки (например если длина запроса больше отведенной под это переменной, а введение Content-size жрет бесценные байты), и представите мою злость когда я все это писал.
Но тем не менее, эта задача не требует особых знаний, ни схемотехники, ни программирования. Я этот LUA вообще первый раз в жизни увидел. Посему выкладывать это в интернет не счел нужным.
Если использовать NodeMCU — проще простого. Достаточно организовать базовый загрузчик, из которого затем подтягивать необходимые модули оформленные как отдельные .lua файлы.
Проще простого, пока не столкнетесь с этим близко, а затем всплывает куча подводных камней.
«Достаточно организовать базовый загрузчик» — это как «Чтобы самому сделать авто, достаточно собрать ДВС, и всё» ))
Для начала заставьте LUA вывести вам значения всех переменных, пришедших в POST.
Когда сможете это сделать, удивитесь, потому что на этих ваших ПеКа, вы можете засунуть всю прошивку в один запрос POST, а попытаетесь сделать это в LUA — получите exception fault.
Значит организуете систему построковой записи, что вполне логично. Только вот nodemcu http — невероятно тормознутое уродище. Посему вам придется либо отсылать каждую строку с промежутком в минуту, чтобы эта строка гарантированно смогла записаться, либо как я, организовать обмен информацией, и слать следующую строку, только когда будет записана предыдущая.
А теперь мякотка: на русском языке этот алгоритм будет занимать 10 слов, на английском 20 слов, а на языке LUA — 500 строк. К которым кстати еще нужно придти, поскольку там от LUA по большей части только синтаксис, и многие LUA-решения банально не работают.
Так что не все так просто как вы рассказали, но и не настолько сложно чтобы выкладывать это в инет. Так, пару часов активного секса.
Такие дела.
«Достаточно организовать базовый загрузчик» — это как «Чтобы самому сделать авто, достаточно собрать ДВС, и всё» ))
Для начала заставьте LUA вывести вам значения всех переменных, пришедших в POST.
Когда сможете это сделать, удивитесь, потому что на этих ваших ПеКа, вы можете засунуть всю прошивку в один запрос POST, а попытаетесь сделать это в LUA — получите exception fault.
Значит организуете систему построковой записи, что вполне логично. Только вот nodemcu http — невероятно тормознутое уродище. Посему вам придется либо отсылать каждую строку с промежутком в минуту, чтобы эта строка гарантированно смогла записаться, либо как я, организовать обмен информацией, и слать следующую строку, только когда будет записана предыдущая.
А теперь мякотка: на русском языке этот алгоритм будет занимать 10 слов, на английском 20 слов, а на языке LUA — 500 строк. К которым кстати еще нужно придти, поскольку там от LUA по большей части только синтаксис, и многие LUA-решения банально не работают.
Так что не все так просто как вы рассказали, но и не настолько сложно чтобы выкладывать это в инет. Так, пару часов активного секса.
Такие дела.
Зачем такое? Лично я во все ESP проекты ставлю плату с ESP на гребёнки. Такой переходник куда проще изготовить, плюс занимает меньше места, подходит под макетки беспаечные, к тому же он надёжнее.
https://pp.vk.me/c638630/v638630844/280/hOAqVRswjIU.jpg
https://pp.vk.me/c638630/v638630844/280/hOAqVRswjIU.jpg
403 Forbidden
>>Она удачно встала на монтажную плату показала себя с лучшей стороны.
Моя плата становится ровно на макетку, а не боком, остаётся по ряду контактов с каждой стороны. И изготавливается не час.
Моя плата становится ровно на макетку, а не боком, остаётся по ряду контактов с каждой стороны. И изготавливается не час.
а исходником с layout не поделитесь?
Панельку можно купить у китайцев, а потраченные на распил AGP часы употребить на хобби: http://mysku.ru/blog/aliexpress/38586.html
Ага, и ждать эту панельку месяц. А так через день-два будет готова. К тому же, для многих присутствующих это как раз и есть хобби. Опять же — «наши руки не для скуки», вторичное использование ресурсов, и тому подобное. Я так себе когда-то панельку для AVR-ок делал из Soket-370.
Спасибо за наводку на Witty Cloud, закажу пару шт на тесты.
Автору:
Ниже еще указывали ESP-201 — это вот то, что получилось, только без затрат времени, искорёженных мат плат, ну и слегка культурнее выглядит. Цена на али — 3.50 на сегодня.
Автору:
Ниже еще указывали ESP-201 — это вот то, что получилось, только без затрат времени, искорёженных мат плат, ну и слегка культурнее выглядит. Цена на али — 3.50 на сегодня.
В чем смысл экспериментировать на голых ESP-07/ESP-12, когда существует целый ряд 8266-плат именно для экспериментов/прототипирования: NodeMCU Board, Witty, WeMos, ESP-201 на худой конец.
Цены на них выше на какие-то десятки центов, зато намного удобнее.
Цены на них выше на какие-то десятки центов, зато намного удобнее.
Я так понимаю, что торцевые выводы ESP12 не охвачены?
Тут таких нету
Как вы ими пользуетесь, мне интересно? Я максимум анализатором посмотрел, что оно там как-то хитро работает с памятью. HSPI ведь на других пинах находится.
Честно говоря не совсем понял смысл данного девайса. С ESP поиграться — так на али куча удобных готовых макеток, а эту даже в breadboard полностью не воткнешь. Убили ESP'шку, сдули, новую припаяли, играемся дальше. Программировать перед установкой в готовое устройство, а смысл? Экономим четыре пина для подключения программатора и два под перемычку для переключения режима?
Освойте уже прошивку по воздуху. Впрочем для её первоначальной заливки ваша приспособа очень пригодится.
Очень прикольная идея/реализация, правда сомнительно применение: для каких-то промышленных масштабов программирования/проверки.
А так проще изначально вывести концы для прошивки на плате…
А так проще изначально вывести концы для прошивки на плате…
Не проще сделать так:
?
сделайте себе одолжение, освойте ЛУТ, всё будет выглядеть гораздо пригляднее, и в данном случае компактнее
Sign up to leave a comment.
Панелька для ESP8266 ESP-12