IOT / Esp32 / FreeRTOS / Arduino / stm32
801 subscribers
747 photos
133 videos
29 files
199 links
Копилка материалов по работе с микроконтроллером esp32 / stm32
Download Telegram
Ну что я всё о каком-то EC да о ЕС =)
Есть же и другие радости тыкания в микроконтроллер.

Вобщем есть у меня комплектующие для одного проекта, лежат оочень давно, всё руки не доходят собрать. А тут такой повод - день независимости от Польши! ну грех не воспользоваться.
Начинается всё конечно с макетки, собираем "схему" =)

Накидываем быстренько проект в VsCode используя официальный плагин для работы с esp32 - https://marketplace.visualstudio.com/items?itemName=espressif.esp-idf-extension

Можно конечно и platformio воспользоваться, но потыкав более "родные" инструменты уже не хочется. Когда отладка для stm32 приедет - там наверно будут с platformio ковыряться, инструмент тож прекрасный.

Знач так, как понятно из картинки - будем мигать лампочками. И чем хорошо использовать в качестве фреймворка esp-IDF а не Arduino - так это обилие прекрасного кода, который легко подключается в систему.

Для проекта буду использовать эту либу:
https://github.com/CalinRadoni/ESP32DLEDController

Подключил и сразу завелось - как же это приятно =)
This media is not supported in your browser
VIEW IN TELEGRAM
Видос:)

диоды в реальности выглядят конечно сильно лучше чем на экране.
https://github.com/CalinRadoni/ESP32BoardManager

Классная штука, сохраню чтобы потом поизучать.
Что же ещё есть на бредборде кроме ws2812?

Фоторезистор и ИК-ресивер.
На ИК-ресивере перепутана полярность питания (VCC/GND) - но он не сгорел) Такие неприятности - самое сложное в отладке физических девайсов и попыток определения почему код не работает.

А дальше нужно просто получать сигналы с любого пункта, и кто-же в этом нам поможет? Официальная дока от Експрессива) они местами прям удивляют подходом, молодцы!

Ctrl+C → Ctrl+V и я ощущаю себя великим программистом оседлавшим irDA.

Теперь вся необходимая периферия проверена и можно распаивать на макетке.
Девайс спаян, всё работет.

Теперь нужно подключить ленту, и можно заниматься прошивкой: добавлять туда разные эффекты, и реагировать на кнопочки пульта и освещенность в комнате.
фотка снизу
Теперь осталось закрепить ленту 😎
На затею нужно 13+ метров ленты. В итоге по факту оказалось 2 катушки по 5 + 1 метровая чёрная — итого 11 метров (и не хватило 2х).

Одна лента оказалась не рабочая (видимо когда-то умудрился её спалить), и ещё 5метров в силиконовом кожухе и без липки - решил её оставить для другой затеи.

Для питания на такой длине - через каждый метр будем подводить питание с толстого 2.5mm медного провода - тогда точно напряжение нигде не просядет и лента будет равномерно светиться по всей длине. На то чтобы наделать необходимое количество отводов у кабеля и у ленты ушло туева туча времени.

Дальше всё это удовольствие с матами монтируем на потолок, и уаля! И выглядит нарядно даже с недостающими парой метров.
Тем временем у EC-метра с переключения на собственное питание прошла неделя. Вчера на несколько часов выткнул систему из розетки и "коробочка" немного остыла и поэтому на графике скачок.
Много примеров хорошего кода
https://github.com/nkolban/esp32-snippets

а особенно папочка
https://github.com/nkolban/esp32-snippets/tree/master/cpp_utils
Счётчик людей #интересныйпроект
Считает по WiFi и BLE

https://github.com/cyberman54/ESP32-Paxcounter

Тут тоже можно подсмотреть как реализован HAL- слой.

Выбор нужной платы осуществляется в файле platformio.ini
;SELECT THE TARGET PLATFORM HERE!
[board]
;halfile = generic.h
;halfile = ebox.h
;halfile = eboxtube.h
;halfile = ecopower.h
;halfile = heltec.h
;halfile = heltecv2.h
;halfile = heltecv21.h
;halfile = ttgov1.h
;halfile = ttgov2.h
;halfile = ttgov21old.h

Да и другие вещи приятно реализованы.