DIY и C++ в системе охлаждения кур

Расскажу о проблеме, которая возникла после запуска системы охлаждения куриных тушек, и как проблема была решена.

Учимся программировать микроконтроллеры

Расскажу о проблеме, которая возникла после запуска системы охлаждения куриных тушек, и как проблема была решена.

ESP01 и ESP12 кажутся идеальными кирпичиками для самодельной автоматизации: стоят копейки, занимают минимум места, умеют Wi‑Fi и позволяют собрать полезное устройство буквально из нескольких модулей. Но стоит перейти от макетной платы к реальному корпусу, питанию, реле, датчикам и установке «на место», как начинается настоящая инженерная проза: пины внезапно мешают загрузке, реле щёлкает не тогда, питание проседает, корпус не герметичен, а вентилятор оказывается умнее, чем хотелось бы.
В этой статье я собрал свой практический путь — от выбора между ESP01 и ESP12 до проектирования платы, корпуса, прошивки и отладки устройства для управления вентиляцией в санузле. Здесь будет не только «как надо», но и честный список ошибок, тупиков и переделок: почему правило «семь раз проверь» для ESP особенно актуально, какие пины лучше не трогать, зачем тестировать питание заранее и почему иногда самое ценное в проекте — это не схема, а возможность спокойно обновить прошивку по воздуху и наконец-то лечь спать.

Ни для кого не секрет, что IoT‑устройства собирают огромное количество информации, в том числе личные данные пользователей и фиксируют их местоположение. А также они жёстко привязаны к конкретному производителю, т.е. пользователь зависим от конкретного производителя или бренда. Гаджеты совместимы с парой основных систем, но кроссплатформенность отсутствует. Устройства разных производителей часто не могут взаимодействовать друг с другом без дополнительных шлюзов. Универсального протокола связи устройств тоже нет. Из стандартов: Zigbee, Matter, Z‑Wave, Bluetooth, Wi-Fi — как следствие умные устройства плохо дружат между собой.

Раз уж я начал учить школьников как собирать на макетной плате цифровые схемы (в рамках подготовки демонстраций к мероприятию торговой палаты города Маунтин-Вью, Калифорния), то возникла необходимость написать для них инструкции. У меня тут же ожидаемо спросили, почему мне не подходят существующие инструкции от Make и других источников. Объясняю:
1. Все эти туториалы последние 55 лет переписывают друг от друга как использовать: 1) резисторы при светодиодах и 2) подтягивающие резисторы. У меня этого нет, потому что я использую LED толерантные к пяти вольтам, кнопки со встроенными подтягивающими резисторами, а также блок питания от USB которые генерит стабильные 5V вместо 9-вольтовой батарейки "Крона". То есть я удалил как кучу лишних резисторов на плате, так и необходимость объяснять законы Ома и Кирхгофа.
2. Эти туториалы часто описывают как строить генератор тактового сигнала из микросхемы 555, конденсатоов и резисторов. У меня этого нет, посколько я используют уже собранные генераторы тактового сигнала с AlExpress. Сборка такого блока самому не дает ничего полезного для обучения цифровому проектированию по направлении к микроархитектуре.
3. В мейкерских туториалах есть куча вещей, которые никогда не возникают в работе проектировщика современного чипа (JK-триггеры, SR-защелки), но нет того, что используется ежедневно (FIFO - микросхема CMOS 40105, приоритетный энкодер - CMOS 4532 итд).
Короче вот первые четыре страницы и фотки школьников с последней сессии:

В этой статье пойдет речь о первом поколении микроконтроллеров от Raspberry Pi Foundation — RP2040 на основе двух ядер ARM Cortex‑M0+, и о плате, которая базируется на этом чипе — Raspberry Pi Pico. Статья призвана облегчить понимание некоторых принципов работы RP2040 и микроконтроллеров в целом.

Пришла моя долгожданная плата EC для клавиатуры Agar Mini. Собрал, начал пользоваться, но вот что-то слишком много опечаток. Думал, повожусь с настройками, да не тут-то было — приключение растянулось на 7 часов.
В статье о том, что такое EC, как отдебажить проблему и внести фикс в прошивку. Не обошлось и без реверс-инжиниринга.
Все опечатки неслучайны.

Как оживить старый ВЛИ (VFD) без родной электроники? В этой статье разберем подключение неизвестного дисплея, управление сетками и сегментами, работу с высоким напряжением и создание собственного драйвера на Arduino Nano, который позволит управлять индикатором через Serial‑порт.

В одной из своих статей я уже рассказывал, как из Raspberry Pi Pico сделать USB CD-ROM. Так как размер флеш-памяти Pico ограничен, поместить что-то серьёзное в образ, который будет находиться во флеш-памяти невозможно. Можно попробовать разместить образ на флеш-карте и использовать модуль для неё, но я нашёл более интересное с точки зрения используемых технологий решение. Эмулировать образ, который находится в интернете. Образа многих дистрибутивов Linux доступны для загрузки с сайта.

MIK32 Амур (К1948ВК018) — первый российский 32-битный микроконтроллер на ядре RISC-V от АО «Микрон». Для работы с ним разработчики предлагают связку VS Code + PlatformIO. Казалось бы, всё просто — но на практике сталкиваешься с множеством неочевидных шагов, которые нигде не собраны в одном месте. В этой статье я пошагово покажу, как развернуть полноценную среду разработки для MIK32 Амур на Windows.

Копилка практических кейсов применения RISC-V в серийных изделиях российских производителей электроники пополнилась еще одним примером. Калужская компания Pandora EV, известная с 2004 года как разработчик высокотехнологичной автомобильной электроники вывела в свет универсальный контроллер зарядных станций постоянного тока Pandora EV UCCS, в котором применен российский микроконтроллер К1921ВГ015 производства АО "НИИЭТ" (входит в ГК "Элемент").
Зарядная станция постоянного тока - это не только силовые модули, кабель и корпус с экраном. Внутри есть управляющий контур, который связывает логику станции, энергетические подсистемы, счетчики, цифровые измерительные устройства, промышленную периферию, зарядные протоколы и обмен с вышестоящими системами управления.
В этом кейсе архитектура RISC-V интересна, в первую очередь, как основа российского микроконтроллера, который дошел до промышленного устройства для зарядной инфраструктуры. И в этом материале мы разберем, какую роль выполняет Pandora EV UCCS и что дает применение К1921ВГ015 в контроллере ЗСПТ.
Подробности - под катом! =)

В 2026 году ИИ-помощников для написания кода пруд пруди. Разные модели по-разному подходят к решению задач: тот же ИИ, способный за пару минут состряпать безупречный сайт, может намертво зависнуть на сложных кодинг-проектах. Но для небольших любительских схем на микроконтроллерах такие модели подходят идеально – тут они могут показать себя во всей красе.
Поэтому автор обзора, Ядулла Абиди, устроил очную ставку Claude Code, Codex и Antigravity в реальном хардверном проекте. Задача – собрать простенькую информационную панель на базе ESP32 с OLED-дисплеем и датчиком температуры, которая умеет выполнять несколько параллельных задач. И хотя все три ассистента способны выдать рабочий прототип, выбирать помощника не глядя точно не стоит.

В этом тексте я покажу, как на основе микроконтроллера, аудиокодека и SD карты запрограммировать самый настоящий диктофон.
Перечислены особенности разработки звукозаписывающей аппаратуры и типичные трудности разработки диктофонов.

Типичная история при работе с промышленными датчиками выглядит примерно так. Есть RS485- датчик, нашли документацию с картой регистров. Написали Python-скрипт, который раз в 10 секунд опрашивает Modbus, парсит регистры и пишет строчку в CSV. Через неделю скрипт падает — оказывается, что порт занят другим процессом, или systemd не поднял его после перезагрузки, или датчик не ответил три раза подряд и скрипт завис в ожидании. Чиним, причесываем, добавляем watchdog. Потом понимаем, что CSV — плохая идея и надо куда-то писать данные нормально. Этот путь знаком многим в промышленной инженерии, но есть и другой.

Идея этого проекта появилась после обсуждения с коллегой устройств, которые могли бы автоматически регулировать яркость мониторов по окружающему свету. Картина была довольно унылая: встроенные решения обычно встречаются в дорогих моделях мониторов, отдельных внешних устройств на рынке почти нет, а то, что есть, либо стоит слишком дорого, либо недоступно, либо просто выглядит не очень.
После этого разговора я решила сделать такое устройство для себя из подручных средств — у меня была простая плата esp32c3 и фоторезистор ky018. Я хотела получить быстрое и простое решение, потому что сама задача довольно тривиальна, а для меня она при этом решала вполне реальную проблему: постоянное напряжение глаз из‑за изменения освещения в течение дня.

Мне всегда было лень доставать телефон ради TOTP-кода, а вручную вводить длинные сложные пароли — удовольствие тоже сомнительное. С паролями эту проблему часто решают плохо: делают пароль попроще и покороче, чтобы его было удобно набирать. Но с TOTP так не получится — код живёт отдельно, его всё равно нужно открыть, посмотреть и перепечатать.
Поэтому я решил сделать маленький «вписыватель паролей»: USB-устройство, которое притворяется клавиатурой и само вводит TOTP-код или сохранённый пароль.

Как я встретил ESP-Claw? Очень просто: не на Хабре, не в Google, а в одном дружном чатике, куда ссылку запостил коллега по несчастью. Не могу сказать, что именно меня зацепило, но я решил - почему бы и нет. Если в двух словах, то оно того стоило: попутно я освоил подключение к LLM по API-ключу, разобрался с OpenRouter, позаботился об экзотической лягушке, убедил ИИ написать Arduino-скетч для управления Tuya-совместимыми выключателями и розетками и заодно взгромоздил на десктоп Open WebUI - чтобы у меня был собственный ИИ-чатбот, с блекджеком и без облака. Это - описание опыта, а не выверенное до последней запятой руководство.

Продолжаем хроники занятий со школьниками на Verilog Meetup в Hacker Dojo. Цель занятий - собрать за месяц несколько демонстраций и показать их на городском мероприятии Technology Showcase в Mountain View. Для тех кто не в курсе, Маунтин-Вью - это такой город, в котором я однажды увидел на улице Сергея Брина, выходящего из-за угла с озабоченным лицом.
Как я уже писал, на первое занятие, на которое я ожидал придет человека три - пришло двадцать, и их не было никакой возможности обслужить. На второе занятие пришло десять: трое русских мальчиков с предыдущего занятия, трое новых русских мальчиков и девочка, китайский мальчик и их родители. Также зашел соратник Виктор и один товарищ на пять минут посмотреть. Под конец зашел американец, который советуется со мной по поводу FPGA. Он раньше работал в NASA JPL в Пасадене и похвастался мне что снимки его трансляций с Марса до сих лежат на сайте Института космических исследований Российской академии наук.
В процессе дискуссии возникли три возможных проекта:

Третьего, как говорится, дня случилось страшное. Любимый комп в процессе работы начал жутко тормозить, а после перезагрузки отказался включаться. Довольно быстро выяснилось, что приказала долго жить одна из парного набора 16Gb DDR5 планка памяти. Учитывая текущие цены на ОЗУ это было больно. Утерев слёзы ушанкой и взяв себя в руки решил что рано констатировать смерть и надо попробовать память реанимировать хотя бы на очевидном и самом простом для реализации уровне: проверить содержимое SPD чипа, и в случае подозрений на проблемы записать эталонную, считанную с рабочей.
Для этих целей группой инициативных ремонтников был разработан и собран вот такой девайс, который позволяет читать и писать микрокод в SPD простым перетаскиванием файла в "проводнике Windows".

В этом тексте я показал как можно разработать прототип музыкального проигрывателя на основе микроконтроллера STM32F407VG и аудио кодека WM8731. Показал как спроектировать прошивку проигрывателя wav файлов на основе I2C, I2S, DMA, SDIO и FatFs.

Привет, Хабр.
Некоторое время назад я публиковал ElectroKit - Браузерный расчётчик электрики, полностью работающий в одном HTML-файле. Благодаря вашим комментариям удалось исправить множество неточностей и значительно улучшить проект, но я всё ещё работаю над ним
Появилась идея сделать похожую вещь для PID-регуляторов. Опять же неудобно - онлайн калькуляторы,где-то посчитать коэффициенты, отдельно переходный процесс, искать очередную реализацию PID и захотелось чтобы всё это было в одном месте как в ElectroKit и так появился PID Toolkit. И как всегда, любимая мне идея - локально, без установки, регистрации, смс и подключения к Интернету.(хотя про интернет это уже не так важно).
Почему вообще появился этот проект
Всё, что удалось найти это PID-калькуляторы которые умеют лишь вычислять коэффициенты по одному выбранному методу и потом всё равно приходится
1 - сравнивать разные методы настройки
2 - моделировать переходный процесс
3 - оценивать устойчивость системы
4 - писать код PID-регулятора под свою платформу
5 - помнить про derivative kick, anti-windup и многое другое
Теперь к самому инструменту.
В основе лежит модель FOPDT (First Order Plus Dead Time). Пользователь задаёт три параметра объекта коэффициент усиления K,постоянную времени T,время запаздывания L.
После этого инструмент сразу рассчитывает настройки несколькими методами:
Ziegler–Nichols (Open Loop); Ziegler–Nichols (Closed Loop); CHR (0% Overshoot); CHR (20% Overshoot); ITAE Servo; ITAE Regulator; Lambda / IMC.
Все результаты отображаются в одной таблице, которую можно сортировать по Kp, Ki, Kd