Посоветуйте модули для начала обучения и проекта

Тема в разделе "ESP8266, ESP32", создана пользователем Anrikigai, 1 окт 2019.

  1. Anrikigai

    Anrikigai Нерд

    Здравствуйте!

    Созрел от использования стандартных Sonoff и т.п. перейти к разработке пусть простеньких, но своих проектов. Посоветуйте, пожалуйста, чем закупиться (метнуться по быстрому за каким-нибудь диодом Шотки не получится, лучше взять с запасом).

    Сейчас у меня две задачи:

    1. Подсчет количества воды в огороде.
    Планирую использовать обычный (старый) водяной счетчик с проводками, где геркон замыкает контакт каждый литр.
    Ну и каким-то образом это через Wi-Fi получать на смартфоне (в будущем в какой-нибудь ioBroker...)

    Т.е. модуль с обвесом, который потом пойдет именно в кессон.

    2. Все для изучения и макетирования.
    bread board, часто используемые резисторы, кнопки, диоды, конденсаторы, пипку данные вводить...
    На нем разработать, а потом залить в модуль из п.1. И делать что-то новое.

    Имею:
    - USB-UART преобразователь (Troyka-модуль) // перешивал им Sonoff на Tasmota
    - ccdebugger // прошить свисток zigbee для подключения к ioBroker


    Я, конечно, уже много чего читал, смотрел. Но очевидно, что понимание начнет приходить в процессе. Так что боюсь чего-то не учесть.
    К примеру, те же диоды Шотки (с их помощью же проще всего возможный дребезг контакта геркона устранить?) бывают разных номиналов. Какие используются в таких типовых проектах?
    Хотелось бы, чтобы под рукой было нужное, а не ждать пару недель, пока приедет какая-нибудь фитюлечка.
    Поэтому лучше возьму с запасом, вот и прошу совета.

    ---

    Ну и на всякий случай еще мои соображения по теме. Вдруг сразу поправите, натолкнете на что-то умное, убережете от очевидной глупости:

    По идее хочу ориентироваться на ESP32. Новее, быстрее, уже есть не только WiFi, но и BT (и в голове есть задачи, где это необходимо). При единичной разработке для себя лишние 100 руб не играют особой роли.
    Питание (энергпотербление) меня мало волнует, в кессоне и 220 есть (насос, реге регулировки давления), и 5V все равно будет для управления шаровым клапаном (пока стандартно через eWeLink).
    Смущает лишь, что по отзывам ESP32 очень уж греется. Или не бояться? Или, к примеру, можно для макетирования взять ESP32, а потом элементарно залить финальный проект в ESP8266?

    Разработать на ESP32 и залить в ESP8266 было бы вообще идеально в том числе и с точки зрения "перешить станадртное устройство, где уже и блок питания, и реле...". Ну те же имеющиеся Sonoff уже в корпусе заставить делать что-то новое, свое.

    Не хотелось бы привязываться к чему-то конкретному. Скажем, Blynk вроде красиво и удобно, но... Не хочу углубляться в проприетарщину.

    В идеале (если не слишком сложно для начинающего и вообще имеющего не особо большой опыт в программировании) я бы стандартными средствами пользовался. Скажем, родной Espressif меня бы больше устроил, чем Arduino IDE. Хотя Sonoff прошивал именно через него.

    При этом (в т.ч. из-за отсутствия опыта) мне нужно удобство в откладке программы.
    С этой точки зрения, кстати, хочу при макетировании использовать дисплей, чтобы выводить временные переменные и т.п., даже если в финальном проекте дисплея не будет.

    Разрабатывать предпочел бы из Win 10. Менее удобно - встроенная подсистема Linux. Тот же git из под Ubuntu, скаченной из Microsoft Store, работает. Но вот Docker под это дело не живет (есть отдельная версия под Win 10 с ограничениями). Мало ли, какие лишние глюки полезут...
    Еще хуже виртуалка под VMware Workstation. Насколько корректно из под ее USB-UART пробросится...

    Что о C, что о python, что о javascript имею только базовые представления. Последние лет 20 не программировал, а только небольшие скрипты изредка писал на чем придется, поэтому в приницпе без разницы. какой язык осваивать.
    По тому, что читал, склоняюсь к LUA. Сразу задел на асинхронность и все такое.

    Спасибо!
     
  2. ИгорьК

    ИгорьК Гуру

    Только не Lua. Опыт показывает, что где многобуковвсегдамалодела.
     
  3. SergeiL

    SergeiL Оракул Модератор

    Это как так? Поделитесь?

    А почему сразу не разрабатывать и тестировать на ESP8266?
     
  4. SergeiL

    SergeiL Оракул Модератор

    А чем стандартный serial не устраивает?
    Что про среду, что про язык - выбирайте то, что лучше знаете или понимаете. ;)
     
  5. ИгорьК

    ИгорьК Гуру

    Решил покормить?
     
  6. Anrikigai

    Anrikigai Нерд

    А что?
    C, конечно, классика. Но не слишком ли сложно "не программисту" будет?
    Пожалуй, мне важнее всего удобство отладки. Я, честно говоря, привык в breakpoint, посмотреть переменные... На Visual Studio Code это большим подспорьем мне для php было.
    А вот когда пишется для внешнее устройство с другой арзитектурой - не представляю, как отлаживать, вообще.
    Ну кроме как писал - на дисплейчик что-то выводить.

    Я не программист. Ни среды, ни языка толком не знаю.
    Могу писать небольшие скрипты на bash, powershell. Немного править веб сайты (php, js). Но все это мелко.
    "Что я знаю" вообще не критерий. Изучать с нуля.

    ESP-IDF, насколько я вижу, сильно на python завязана. Могу и его выбрать с тем же успехом.
     
  7. SergeiL

    SergeiL Оракул Модератор

    Я начал отвечать, раньше чем дочитал, многобуков. :)
    Очень заинтересовал метод борьбы с дребезгом на диодах.
     
  8. Anrikigai

    Anrikigai Нерд

    Фигню сморозил?
    Вот поэтому и спрашиваю советов :)

    Мне казалось по какому-то видео, что его эффективно добавить к RC цепочке для аппаратного устранения дребезга.


    Боялся, что
    а) Обратная совместимость
    Имея тестовую плату с 8266 я не смогу что-то сделать под ESP32. А имея ESP32 смогу разработать под что угодно.
    Всякие BT понадобятся наверняка, почему сразу не заложиться на будущее.
    б) Производительность и все такое.
    Обычно при разработке куча операций, куча дополнительного когда для дебага и т.п. А финальная версия гораздо меньше, и ее можно залить в устройство с меньшей памятью...
    Ну как на компе - разработчику нужен более мощный комп, чтобы сэкономить время. Потом уже под более слабые устройства оптимизировать.
    Как тут - не знаю просто.
     
  9. Anrikigai

    Anrikigai Нерд

    Вложения:

  10. SergeiL

    SergeiL Оракул Модератор

    issaom нравится это.
  11. SergeiL

    SergeiL Оракул Модератор

    Тут нужно не бояться, и что-то попробовать сделать. Почитать что уже сделали, попробовать повторить и, переделать под себя.
    А сделаешь - начинаешь понимать - что нужно.
    Мне пока ESP8266 хватало с головой, не хватало портов - ставил I2C расширитель, главное все отлажено, и работает на 100% надежно. Годами!
    ESP32 лежит, попробовал, но не знаю пока куда пойдет.
     
  12. Anrikigai

    Anrikigai Нерд

    Во-первых это красиво :)
    Ну и слова "защита от помех"...
    В описании есть и про дребезг контактов, и про диоды..

    Скорее всего, я Диод Шоттки с Триггером Шмидта спутал :)
     
  13. SergeiL

    SergeiL Оракул Модератор

    Никому об этом не говорите ;)
     
    issaom нравится это.
  14. SergeiL

    SergeiL Оракул Модератор

    Здесь много информации по Вашему вопросу. Поищите.
    Например тема @ИгорьК
    Почитайте, там много полезного.
     
  15. Anrikigai

    Anrikigai Нерд

    Офигенская подборка. Спасибо!!
     
  16. SergeiL

    SergeiL Оракул Модератор

    Я начинал с LUA, тогда под ESP больше ничего не было.
    Но Си, лично для меня, ближе, причем значительно.
    Все, что описано у Игоря оно универсально. Я перешел на Си, и пишу на Си. Но все перекликается! ;)
     
  17. parovoZZ

    parovoZZ Гуру

    купи лучше книжку. В деле копипасты можно достичь феерических успехов, но так и не стать профи.
     
  18. SergeiL

    SergeiL Оракул Модератор

    Так вроде форум и не для профи, тут только @parovoZZ считает себя профи. Что он тут делает, никто не знает... :)
    А книжка будет про программирование ESP на Си?
     
    issaom нравится это.
  19. SergeiL

    SergeiL Оракул Модератор

    Вот к чему такой совет, чтобы что то сказать?
    Какую книжку? Или просто в воздух?
    Я учил Си по книжке, если не ошибаюсь, Кернигана. Тогда учился писать под Unix.
    Причем к принципам программирования для определенных ОС или девайсов это малоприменимо.
    То есть Си - это первый этап. Си знаешь - можно двинуться дальше.
    А потом в основном примеры. Почему нужно именно так, не найдешь объяснений нигде.
     
  20. parovoZZ

    parovoZZ Гуру

    Я не программист.