MicroPyton на ESP8266

Тема в разделе "ESP8266, ESP32", создана пользователем DIceberg, 5 янв 2018.

Метки:
  1. DIceberg

    DIceberg Гик

    Пошаговое руководство по прошивке MicroPython на ESP8266. Вечер потерянного времени - может кому пригодится.

    http://smart-el.ru/?p=1104
     
    Последнее редактирование: 6 янв 2018
  2. Ugcom

    Ugcom Нуб

    у меня ругается на import mashine - говорит нет такого модуля
     
  3. DIceberg

    DIceberg Гик

    у Вас синтаксическая ошибка - machine
     
  4. sergey-fedor

    sergey-fedor Нерд

    Micropython - крутая штука на ЕСП, перешел на него еще на версии 1.8.7 , совсем перестал в сторону Ардуино смотреть , беда в том что быстро вырастает кол-во активных ЕСП дома :))) скоро роутер будет их уже отпинывать. Подумываю на ЕСП 32 переходить и пробовать многопоточность уже применять, на ЕСП пока так и не смог использовать _threading, и asyncio
     
  5. Ugcom

    Ugcom Нуб

    Спасибо. Получилось. У меня тоже лежит ЕСП32. Не планируете написать инструкцию по установке питона на нее?
     
  6. sergey-fedor

    sergey-fedor Нерд

  7. ИгорьК

    ИгорьК Гуру

    Покажите что-то готовое на этом чуде.
     
  8. sergey-fedor

    sergey-fedor Нерд

    у меня к есп подключены 3 реле освещения на улице , и датчик BME280 на улице и si7021 в парной в бане и LCD2004. еще одна 8266 дома с датчиком si7021 и LCD2004.Показания температуры давления и влажности выводятся как на экранчик в бане так и в доме. на этих ЕСП микропитон. На распбери крутится python скрипт который опрашивает эти ESP8266. Управляется все ботом в телеграмме. То есть домочадцы имеют доступ и к показаниям всех температурных датчиков, ну и могут включать выключать освещение. Еще данные о температуре, влажности и давлении на улице каждые 2 часа пишется в текстовый файлик в облаке на Yandex Disc. пока не придумал еще как их использовать :) так для интереса сделал.

    Код приводить не буду, хоть это и python и читается все легко, но получится довольно много всего :) . на каждом есп код, плюс на Raspberry основной скрипт.

    Долго думал как всем этим управлять, сайт написать или мобильное приложение ... в итоге выяснилось что управлять через телеграмм проще всего, так как пользуемся им всей семьей для общения
     
  9. ИгорьК

    ИгорьК Гуру

    У вас все необыкновенно круто!
     
  10. sergey-fedor

    sergey-fedor Нерд

    Я программист, так се ) диванный самоучка, поэтому не пинайте. Могу конечно пояснить где и что если возникнут вопросы. Тут конечно много нужно данных подставлять которые индивидуальны для каждого , например токены ботов, настройки сети, почта и пароль для яндекс диска. Выкладываю файлы txt так как py не дает загрузить. meteo.txt - этот файлик крутится на Raspberry, echo-serverboot.txt - этот прошит в ESP 8266 к которому подключены датчки температуры на улице и в бане, а также реле и LCD 2004 . для домашнего не стал выкладывать - так как там все тоже самое практически только убрано лишнее.

    PS за такой код мне конечно настоящие программисты руки бы поломали :)) но работает главное , для себя ж все )
     

    Вложения:

    • echo-serverboot.txt
      Размер файла:
      5,6 КБ
      Просмотров:
      1.010
    • meteo.txt
      Размер файла:
      15,2 КБ
      Просмотров:
      1.148
  11. ИгорьК

    ИгорьК Гуру

    Давно поглядываю на эту систему, но что-то проектов маловато, не на что посмотреть.
     
  12. sergey-fedor

    sergey-fedor Нерд

    тут беда в том что придется самому и выдумывать сферу применения, информации крайне мало, разрабатывать тоже не очень удобно , приходится например скрипт писать в IDLE Python или в том же Pycharm а отлавливать ошибки уже на самом контроллере. Pycharm например например до недавнего времени и не поддерживал синтаксис micropython, а он хоть и не значительно но отличается.
    Но все таки есп8266 мне больше нравится программировать именно на микропитоне а не в ардуино IDE например.
     
  13. DIceberg

    DIceberg Гик

    32я ЕСП пока в дороге из Поднебесной. как приедет обязательно поделюсь инструкцией по прошивке. но, как говорят более опытные товарищи - г..но еще то... очень сырое железо... насчет проектов - их очень много если ты связан с рекламой и маркетингом ;)
     
  14. ИгорьК

    ИгорьК Гуру

    На этом сайте очень много верующих в микропитон, но с рекламой не связан никто: и проекты отсутствуют.
    Продолжаем верить.
     
  15. sergey-fedor

    sergey-fedor Нерд

    ну наверное любой проект который можно сделать на ЕСП можно реализовать на микропитоне, кому то на нем проще, кому то на Lua , тут на вкус и цвет как говорится, я для себя его выбрал потому как просто напросто интересуюсь Python ом, здорово же на одном и том же языке и сайт написать и релюшками пощелкать :)
     
  16. Ugcom

    Ugcom Нуб

    Так может намекнете на примеры, которые используются в "рекламе и маркетинге". А то я у своих маркетологов поспрашивал - они и слухом не слухивали о микропитоне :)))
     
  17. DIceberg

    DIceberg Гик

    Повезло что не знают :) Что касается проектов, то от простого табло наружки с бегущей строкой, которая обновляется через вай-фай, до эксклюзива типа индикатора на ESP8266 и OLED дисплее с показаниями доступности лендингов, их посещаемости и тд. Хитом прошлого года был счетчик проходимости покупателей в магазинах и ТЦ, который скидывал тиковые значения или за заданный период времени на сервер, а тот уже строил красивые графики :) и речь была не только о питоне, то же можно сделать и на IDE ардуины, но более заморочистей.
     
  18. sergey-fedor

    sergey-fedor Нерд

    для удобства программирования в винде , есть программка https://github.com/jungervin/EsPy
    что типа IDE для micropython , тоже можно пользоваться наряду с PyCharm с плагином
     
  19. BreakFaster

    BreakFaster Нерд

    Здравствуйте!
    Осуществляю переход в адепты Python, взялся сделать небольшую метеостанцию-минисервер на базе ESP32. Будут свои датчики (BME280, освещенности), обязателен прием по радио от нескольких имеющихся датчиков. Радио - nrf24l01+. NRF-ки стабильно работают с ардуинами, исходники от пары датчиков уже потеряны, так что перешивать имеющиеся нет возможности.
    Задачу решаю на Micropython.
    А теперь, уважаемые знатоки, вопрос: как на Micropython определить структуру, в которую записывались бы принимаемые по радио посылки?
    На С структура выглядит так:
    Код (C++):
    // структура для получения значений от сервера
    typedef struct{        
      int SensorID;        // идентификатор датчика
      float ParamValue1;    // значение параметра 1
      float ParamValue2;    // значение параметра 2
      float ParamValue3;    // значение параметра 3
      float ParamValue4;    // значение параметра 4
      time_t ParamValue5;    // значение параметра 5
      time_t ParamValue6;    // значение параметра 6
      char Comment[6];    // комментарий
    } MessageMeteo2;
    time_t - это uint, длина структуры - ровно 32 байта.
    Хочу определить структуру, чтобы и передавать тоже, с четкой регламентацией байтовой длины.
    Ткните носом в пример кода на Python - Micropython.