This media is not supported in your browser
VIEW IN TELEGRAM
Вставил вольтметр-амперметр в блок питания. На этом буду считать проект почти завершенным.
Ещё понижайку на систему охлаждения стоит поменять и верхушку корпуса напечатать. Но это уже никак не влияет на возможность использования
Ещё понижайку на систему охлаждения стоит поменять и верхушку корпуса напечатать. Но это уже никак не влияет на возможность использования
🔥3
Попробовал сделать видео.
Удивительно, но это заняло менее 2х часов.
+ пол часа на то чтобы выложить штуку на thingiverse
https://www.youtube.com/watch?v=o-d0SzPBn_4
Удивительно, но это заняло менее 2х часов.
+ пол часа на то чтобы выложить штуку на thingiverse
https://www.youtube.com/watch?v=o-d0SzPBn_4
YouTube
Filament Welder / 3D Printed. How to connect two threads of 1.75 mm filament
In three minutes, using a printed thingy and a silicone tube, I fuse two filament strands into one
👍2
В папочке "проекты" у меня почти 20 проектов начинающихся со слов esp32.
Большинство тестовые, просто потыкаться вечером и понять в как работает какая-нибудь перефирия или модуль.
Тут вырисовывается 2 проблемы:
1) С каждым новым проектом у меня накапливается всё больше и больше кода который копируется из одного проекта в другой.
Пара функциональных модулей уже вытащены в компоненты: работа с mqtt и модуль iot который делает обвязку. Они были сделаны достаточно давно, когда моё понимание С/Сpp и насмотренность хорошего кода были никакими. Их хорошо бы переписать. А ещё появилась куча "тасок" и папочка "утиль" которые мигрируют из проекта в проект и периодически приходится искать "а где же последняя версия" этой типовой задачи:
- просканировать файфай точки
- просканировать список устройств на шите i2c
- работа с NVS - это такой кей-валью сторадж для сохранения конфигурации
- набота с NTC и ds18b20
- работа с кнопками
- работа с диодами
- работа с енкодером
- работа с экраном
Большинство тестовые, просто потыкаться вечером и понять в как работает какая-нибудь перефирия или модуль.
Тут вырисовывается 2 проблемы:
1) С каждым новым проектом у меня накапливается всё больше и больше кода который копируется из одного проекта в другой.
Пара функциональных модулей уже вытащены в компоненты: работа с mqtt и модуль iot который делает обвязку. Они были сделаны достаточно давно, когда моё понимание С/Сpp и насмотренность хорошего кода были никакими. Их хорошо бы переписать. А ещё появилась куча "тасок" и папочка "утиль" которые мигрируют из проекта в проект и периодически приходится искать "а где же последняя версия" этой типовой задачи:
- просканировать файфай точки
- просканировать список устройств на шите i2c
- работа с NVS - это такой кей-валью сторадж для сохранения конфигурации
- набота с NTC и ds18b20
- работа с кнопками
- работа с диодами
- работа с енкодером
- работа с экраном
🔥1
2) У меня не хватает некоторых решений для создания конечного потребительского устройства которое можно получить по почте, и начать пользоваться настроив с телефона. В первую очередь это каптив портал для настройки вайфайя. Ну и есть ещё ряд полезных фич которые нужны. Я их описал для себя в ТЗ, постепенно про все задумки расскажу.
Решение понятное. Сделать фриртос-компонент, который будет давать мне всю необходимую обвязку для проекта.
И я даже начал это делать. И как часто получается - как только ты начинаешь думать в какую-то сторону - сразу находится проект в котором уже есть готовая реализация) осталось только скомпоновать всё в кучу.
За проект традиционно спасибо Руслану (UncleRus) который пишет максимально прекрасный в моём представлении код https://github.com/UncleRus/EvLamp
Решение понятное. Сделать фриртос-компонент, который будет давать мне всю необходимую обвязку для проекта.
И я даже начал это делать. И как часто получается - как только ты начинаешь думать в какую-то сторону - сразу находится проект в котором уже есть готовая реализация) осталось только скомпоновать всё в кучу.
За проект традиционно спасибо Руслану (UncleRus) который пишет максимально прекрасный в моём представлении код https://github.com/UncleRus/EvLamp
GitHub
GitHub - UncleRus/EvLamp: FireLamp in pure C with ESP-IDF and ESP32
FireLamp in pure C with ESP-IDF and ESP32. Contribute to UncleRus/EvLamp development by creating an account on GitHub.
👍2
Media is too big
VIEW IN TELEGRAM
Вместо тысячи слов ТЗ - рафаэлло видос.
У компонентов классная система конфигурирования которая встраивает необходимые настройки в общие настройки SDK от експрессив.
Там даже можно делать зависимости между отмеченными галочками и выпадающие списки.
На неделе за вечер набросал конфигурацию - думаю она демонстрирует задумку сильно лучше чем текстовое описание.
У компонентов классная система конфигурирования которая встраивает необходимые настройки в общие настройки SDK от експрессив.
Там даже можно делать зависимости между отмеченными галочками и выпадающие списки.
На неделе за вечер набросал конфигурацию - думаю она демонстрирует задумку сильно лучше чем текстовое описание.
Конфигурировалка пинов через гуй сильно упрощает понимание и вспоминание а где же у меня в этом девайсе i2c прицеплено и где сидит енкодер. А есть ли на этом пине АЦП? а стоит ли мне эту кнопку посадить на этот пин или он мне ещё пригодится.
Открыл всё в общем списке и увидел, мне нравится!
Теперь буду меньше пользоваться этой картинкой.
Открыл всё в общем списке и увидел, мне нравится!
Теперь буду меньше пользоваться этой картинкой.
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Первое что я уже сделал - это использование пинов как кнопочек с помощью библиотеки:
https://github.com/UncleRus/esp-idf-lib/tree/master/components/button
- обычные бытовые кнопочки
- кнопочка (RESET) с событиями
В качестве кнопочки ресета использую кнопку енкодера) и сделаны пара событий:
— нажатие 3 секунды (планирую включать веб)
— нажатие 10 секунд (сбрасываем всю конфигурацию)
Инициализацию работы с NVC тоже уже сделал.
Далее - включение девайса в режиме
https://github.com/UncleRus/esp-idf-lib/tree/master/components/button
- обычные бытовые кнопочки
- кнопочка (RESET) с событиями
В качестве кнопочки ресета использую кнопку енкодера) и сделаны пара событий:
— нажатие 3 секунды (планирую включать веб)
— нажатие 10 секунд (сбрасываем всю конфигурацию)
Инициализацию работы с NVC тоже уже сделал.
Далее - включение девайса в режиме
captive portal
🔥2👍1
Доковырялся с отправкой сообщений в телегу.
И вроде даже память не утекает 😎
Полезная фича для пользовательских девайсов чтобы не заморачиваться с mqtt.
Собрал на основе примера
https://github.com/espressif/esp-idf/tree/master/examples/protocols/esp_http_client
И вроде даже память не утекает 😎
Полезная фича для пользовательских девайсов чтобы не заморачиваться с mqtt.
Собрал на основе примера
https://github.com/espressif/esp-idf/tree/master/examples/protocols/esp_http_client
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Написал большинство инициализации на основе
- NVS(key-value store) и settings
- DIO
- ADC
- i2c
- wifi
- mqtt (только подключение)
—
Далее буду подписываться на типовые топики, слать сообщения о инпутах, переключать аутпуты на входящие команды. Звучит все не сложно, но задача оказалась весьма обёмной.
На видосе видно как LED сигнализирует о статусе подключения:
- сначала выкл
- горим если старт wifi
- 3 раза моргаем и гаснем если подключились к вайфай
- горим если старт mqtt
- гаснем если подключились.
Хочу ещё на каждую входящую команду моргать.
Kconfig
с описанием того что происходит в консоль.- NVS(key-value store) и settings
- DIO
- ADC
- i2c
- wifi
- mqtt (только подключение)
—
Далее буду подписываться на типовые топики, слать сообщения о инпутах, переключать аутпуты на входящие команды. Звучит все не сложно, но задача оказалась весьма обёмной.
На видосе видно как LED сигнализирует о статусе подключения:
- сначала выкл
- горим если старт wifi
- 3 раза моргаем и гаснем если подключились к вайфай
- горим если старт mqtt
- гаснем если подключились.
Хочу ещё на каждую входящую команду моргать.
🔥3🤩1
https://www.youtube.com/watch?v=5cnErZne5ak&list=PLiu4O2eIDAdUz50gTS33a2qozzDSFMouI
Вот тут ежедневно выходят новые серии курса по FreeRTOS.
Очень круто и понятно Владимир затрагивает всякие тонкости работы с системой. Спасибо ему за это!
Вот тут ежедневно выходят новые серии курса по FreeRTOS.
Очень круто и понятно Владимир затрагивает всякие тонкости работы с системой. Спасибо ему за это!
YouTube
Операционная система FreeRTOS. Самый полный курс на русском языке. Вводное слово.
Полный курс по операционной системе FreeRTOS. Вводное слово о том, для кого и о чем этот учебный курс. В конце курса будут стримы с ответами на вопросы. Новые ролики будут выходить по мере возможности.
По вопросам сотрудничества - [email protected]
Канал…
По вопросам сотрудничества - [email protected]
Канал…
🔥2
Не понимаю как писать сюда что-либо про разработку.
Мне кажется это достаточно специфичная информация и она мало кому будет интересна.
Тем более большинство действий которые я сейчас делаю скорее про рефакторинг и перекладывание кода из одного места в другое. Скукотищааа)
Предыдущую "обвязку" вокруг MQTT делал когда моё понимание C/C++ и архитектуры фриртоса было совсем никаким.
Сейчас переписываю тот-же самое только с чуть-большим пониманием.
Вроде я допёр в каком случае нужно метить переменные внутри функций как
Мне кажется это достаточно специфичная информация и она мало кому будет интересна.
Тем более большинство действий которые я сейчас делаю скорее про рефакторинг и перекладывание кода из одного места в другое. Скукотищааа)
Предыдущую "обвязку" вокруг MQTT делал когда моё понимание C/C++ и архитектуры фриртоса было совсем никаким.
Сейчас переписываю тот-же самое только с чуть-большим пониманием.
Вроде я допёр в каком случае нужно метить переменные внутри функций как
static
=) и это уже достижение которое позволяет избежать кучи внезапных багов.🤔3👍2
ESP-ха уже подписывается на нужные топики.
Отправляет регулярно информацию о доступности:
Переподключается с задержкой к WiFi и Mqtt если отрубилось.
Это делается с помощью фриртос-таймеров.
Кроме этого при первом подключении отправляет информацию о количестве рестартов.
Сейчас у меня
Информация о количестве рестартов храниться в энергонезависимой памяти (NVS) там-же где хранится конфигурация.
Очень прикольная фишка)
Отправляет регулярно информацию о доступности:
availability
и ip
Переподключается с задержкой к WiFi и Mqtt если отрубилось.
Это делается с помощью фриртос-таймеров.
Кроме этого при первом подключении отправляет информацию о количестве рестартов.
Сейчас у меня
301
рестарт - столько раз я перепрошил процессор с момента реализации этой фишки.Информация о количестве рестартов храниться в энергонезависимой памяти (NVS) там-же где хранится конфигурация.
Очень прикольная фишка)
👍1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Гидропонная установка готова :)
Пока помотается в холостую.
С помощью такой релюхи думаю для начала запускать периодически.
Сейчас не нравится шум воды которая вливается. Блок питания я выкрутил на минималку (10v) но всё равно слишком мощно.
Пока помотается в холостую.
С помощью такой релюхи думаю для начала запускать периодически.
Сейчас не нравится шум воды которая вливается. Блок питания я выкрутил на минималку (10v) но всё равно слишком мощно.
https://www.printables.com/model?o=download_count&period=year
Удобный сайт с 3D-модельками на замену не удобному https://www.thingiverse.com/
Удобный сайт с 3D-модельками на замену не удобному https://www.thingiverse.com/
Printables.com
3D models database | Printables.com
Discover a library of high-quality models for 3D printing. Download STL files of the best designs and entire 3D printed projects for free.
👍3🔥1