Обновить
256K+

DIY или Сделай сам

Для тех, у кого руки растут из нужного места

755,21
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Переделка квадроцикла в ходовую для мобильной робототехники

Время на прочтение7 мин
Охват и читатели3.9K

Взял дешёвый б/у квадроцикл и попытался сделать из него автономного ровер. Получилось не всё: рулевое управление оказалось одним из самых сложных узлов для самоделки.

Читать далее

Новости

В 2026-м — из желудей и спичек: измерительный комплекс для Musical Fidelity M1

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели4.1K

Редкий Musical Fidelity M1 с тонармом SME M2-9 находится в 3000 километрах, а покупать его только на слух и по фотографии не хочется. Из игровой Sound Blaster G3, старого Sony и ноутбука собираю измерительный комплекс: WFGUI, тон 3150 Гц, советские тестовые пластинки и собственный DAT Viewer. Сам M1 пока не измерен — статья о подготовке комплекса, контрольных опытах и ограничениях метода.

Читать далее

У нас есть MCP дома

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели4.1K

Всем привет! Меня зовут Петрович и я работаю техлидом java команды в небольшом международном финтехе. В прошлый раз я рассказывал, как мы меняли Redis на Hazelcast, а сегодня расскажу как мы делали свой MCP-сервер для Jira, Confluence и GitLab (все self-hosted). От пустого репозитория до прода прошло две недели, а сейчас у сервера уже почти 100 инструментов. Расскажу, почему не взяли готовое с GitHub, как все устроено внутри и на какие грабли мы наступили (спойлер: почти все грабли назывались null).

Читать далее

Собираю робота на Raspberry Pi 5 для дочери. Но говорящей колонкой тут не отделаться! Вызов принят, погнали. (Часть 2)

Уровень сложностиПростой
Время на прочтение18 мин
Охват и читатели4.9K

В первой части Лягушка научилась смотреть на человека, говорить и поворачивать голову. Теперь добавляю знакомые лица, память о разговорах, вопросы по фотографии, объяснения на экране и помощь со стихами. По дороге робот пропускает собственные команды, узнаёт своего «Создателя» и отправляет рисунок в принтер. А ещё выяснилось, что сильнее всего тормозило Лягушку…

Читать далее

Как мы строим хижину Postgres Pro

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели11K

Хижину на высоте 3 930 метров в Кыргызстане пришлось сделать шире, чем в чертежах. Причина простая: матрасы оказались на несколько сантиметров больше, чем рассчитывали. К этому моменту материалы уже лежали на леднике: их привёз вертолёт, а недостающее мы дотаскивали в рюкзаках. Я работаю в Postgres Professional и около двадцати лет хожу в горы. Сейчас вместе с друзьями строю здесь новую хижину для альпинистов. Пока мы утепляем стены и собираем электрику, на ней уже ночуют люди, а по ночам заглядывают куницы. Для них мы закрыли все щели, но куницы всё равно нашли путь.

Читать далее

Нафиг NVIDIA! Я запустил Qwen на FPGA за $50 — а свой TPU назвал бы «КЕДР». Часть 1

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели18K

Я хотел разработать собственный AI-процессор, нашёл openTPU, купил FPGA за $50 с 4ГБ памяти, подключил её к обычному мини-ПК и запустил на ней языковую модель.

Читать далее

SecurePair — безопасное сопряжение плат ESP32

Уровень сложностиСредний
Время на прочтение20 мин
Охват и читатели9.2K

Статья посвящена криптографически защищённому сопряжению и взаимодействию двух плат ESP32 через обычный светодиод по протоколу LX.25 или через ESP-NOW и LoRa.

Согласование ключей происходит с использованием протокола Диффи-Хеллмана на эллиптических кривых (X25519), а сообщения шифруются с помощью алгоритма AES-256-GCM. Библиотека SecurePair поддерживает любые средства передачи. Она работает через ESP-NOW, LoRa и любой другой канал связи, способный пересылать пакеты. А с помощью PacketLED можно реализовать обмен сообщениями даже через обычные светодиоды.

Читать далее

Реализация интерфейса HDA Link на RP2040

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели8K

В статье описано, как реализовать многоканальный звук на RP2040 с использованием HD аудиокодека ALC889. Будет краткий разбор интерфейса HDA link и ссылки на пару рабочих демо-проектов с описанием их работы.

Читать далее

К истории радиоламп. Ранние приборы с внешними электродами

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K

Как и любая другая эволюция, развитие приёмно-усилительных электровакуумных приборов (ЭВП) имело и тупиковые ветви, образцы, из которых сейчас выглядят престранно и чужеродно. Одна из таких ветвей — внешние электроды. Взглянем же на некоторые примеры этих технических курьёзов, попытаемся понять причину их появления и исчезновения, полюбуемся своеобразной «тёплой ламповой» эстетикой, присутствующей даже в таких нежизнеспособных уродцах.

Читать далее

Как заставить ваше растение работать на вас: аналоговый биосопроцессор своими руками

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели9.2K

Привет Хабр! Кремний и видеокарты дорожают, а квантовые компьютеры не поместятся в квартире. Поэтому я решил собрать биопроцессор своими руками из денежного дерева на подоконнике…

Читать далее

На пути борьбы с шумом домашнего ЧПУ: тесты обработки печатной платы под слоем жидкого мыла и не только

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели14K

В прошлой статье я выдвинул интересную идею, которую никогда до этого не встречал в интернете — гашение вибраций и гашение звука на домашних компактных фрезерных станках, например, известного и широко распространённого типа 3018.

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

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

В ходе размышления над этой проблемой мне пришла в голову довольно интересная мысль: «А что, если обработку производить под толстым слоем жидкости, в частности воды или жидкого, гелеобразного мыла?!»

Как я писал в прошлой статье, я весьма плотно искал хоть какой-нибудь прецедент, чтобы пытались гасить звук таким образом, и не нашёл!

Да, льют СОЖ (смазывающе-охлаждающую жидкость) в зону резания относительно тонким слоем — но в основном только для постоянного вымывания продуктов обработки (проще говоря, стружки и пыли) и смазки/охлаждения инструмента во время работы.

Но покрывать деталь толстым слоем жидкости именно для гашения вибраций и звука (грубо говоря, залить её толстым слоем жидкости и вести обработку прямо под ней) — похоже, что не додумался вообще никто (не факт, но есть такое подозрение ;-) )!

Ввиду того, что у меня уже есть цельнометаллический ЧПУ-станок серии 3018, про который я писал вот тут, мне показалось совершенно непростительным, если бы эта интереснейшая мысль по поводу глушения жидкостью осталась в виде непроверенной теории!

Я никак не мог этого допустить, и работа закипела… :-)

Читать далее

Потолок на 800 Вт и окна по расписанию: как устроена умная квартира на 175 м²

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели9.5K

Окна открываются по расписанию, ночная подсветка загорается на 10% яркости, а настенные клавиши работают даже при выключенном контроллере. В квартире площадью около 175 м² интегратор объединил проводную автоматику и беспроводные устройства, а владельцу оставил возможность самому менять сценарии. Заглянем в щит, разберем световой потолок на 800 Вт и посмотрим, какие задачи решает автоматика после переезда — и что еще предстоит настроить.

Читать далее

Когерентная демодуляция CPFSK на микроконтроллерах семейства ARM Cotex M (STM32F103 — STM32H750)

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели11K

Доброго времени суток, уважаемые посетители Habr!
Данная статья будет короткой, но полезной.

В одной из предыдущих статей, уже описывал вычисление sin(x)/cos(x) с применением разложения в ряд Фурье с фиксированной точкой. Вычисление тригонометрических функций, в моем случае занимало порядка 125-130 тактов на пару (sin+cos) на процессорном ядре Cortex M7 (STM32H750). При этом, код компилировался для архитектуры Cortex M3. Точность sin/cos просчитанного таким образом составила менее 1.5LSB. Google посчитал ее как 1.2-1.3LSB, с минимальной дисперсией. Это уже дало динамический диапазон ~183dB. Для сравнения, полный динамический диапазон человеческого уха 120dB от болевого порога до шелеста листвы. А динамически диапазон звука который человек слышит одновременно порядка 40-60dB. Несколько позже поясню для чего приведено сравнение.

В общем и целом такого динамического диапазона и скорости уже достаточно чтобы производить операцию квадратурной свертки сигнала с частотой дискретизации до 450-500KHz. Кстати, на STM32F103C8T6, это заняло бы ~1.8uS на квадратурный отсчет. Т.е. с отключенными прерываниями процессор бы успел выполнить расчет одного бина честного преобразования Фурье в реальном времени. Это эквивалентно квадратурной демодуляцию на одной произвольной поднесущей до частоты 250КГц (хотя лучше брать Fsample/4 ), что позволяет работать с полосой до 125КГц, на простом контроллере в реальном времени.

Однако, этого мало для полноценной обработки сигналов. И тут я задумался. Как можно значительно повысить скорость работы и почти не потерять в точности? Первое что сделал,- разбил преобразование на блоки, фаза которых непрерывна. Это позволило работать с блоками отсчетов, которые, затем можно суммировать скользящим окном со сложностью O(1). Это привело к эффекту квадратурной демодуляции сигнала и без повышения сложности позволяло работать с малыми временными сдвигами. Фактически пришел к поблочной корреляция. Нечто вроде временного Rack-приема.

Читать далее

Ближайшие события

За час собрал монитор бензина и заправился без очереди: делюсь инструментом на GitHub

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели10K

Я несколько раз попал в длинные очереди за бензином, конкретно за АИ‑95. В конце августа четыре часа простоял в очереди на московской заправке, чтобы заправиться за минуту. В другой раз два часа ждал в Моршанске, хотя это город с населением меньше 50 тысяч человек. Очереди меня жутко выбешивали, поэтому решил навайбкодить монитор бензина. Он должен был сообщать, когда бензин появляется на нужной заправке и туда можно ехать. И у меня это получилось, хотя самостоятельно я до этого ничего не разрабатывал.

На связи Игорь, менеджер продуктов Outlines Tech. В статье покажу, как ставил задачу ChatGPT, что приходилось уточнять и как проверил инструмент в деле. В конце оставлю ссылку на код на GitHub, чтобы вы могли попробовать его у себя. Бесплатно, разумеется.

Читать далее

STM32: Работа с SD-картами через SDIO

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели14K

Когда устройству нужна относительно большая энергонезависимая память с возможностью быстрой замены, SD или microSD-карта — один из самых удобных и доступных вариантов.

Компактность, простое подключение, поддержка микроконтроллерами и низкая цена при большом объёме делают SD-карту стандартом для логирования, хранения конфигураций и обновления прошивок.

Многие считают работу с SD-картой чем-то сложным и низкоуровневым. На практике, если использовать SDIO + FatFS, бо́льшая часть сложности уже спрятана библиотеками и аппаратными модулями микроконтроллера.

В этой статье я покажу, как добавить поддержку SD-карт в проекты на STM32: что лежит в основе, и как она настраивается.

Читать далее

Later, Bender: когда чат закончился, а проект нет

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели12K

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

Мне это надоело. С этого, собственно, и начался Later, Bender. Название появилось позже. Сначала был гораздо менее романтичный вопрос: как сделать так, чтобы полезное состояние работы переживало чат и не требовало от человека каждый раз заново пересказывать машине, что вообще происходит?

Читать далее

Как мы делали BLE-систему аур для ролевой игры

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели8.6K

Всё началось с желания сделать ролевую игру по мотивам компьютерной игры Arcanum, в мире которой одновременно сосуществуют магия и технология, причём эти две силы принципиально конфликтуют друг с другом.

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

Но нам хотелось, чтобы это было не просто условностью, которую игроки отыгрывают на словах. Хотелось дать этому конфликту какое-то физическое проявление в реальном мире: чтобы игрок действительно мог подойти к работающему механизму — и тот перестал работать. Или чтобы маг попытался сотворить заклинание рядом с достаточно сильным источником технологии — и обнаружил, что магия ему больше не подчиняется.

То есть игровой мир должен был сам реагировать на присутствие персонажей.

Читать далее

Про дела сырные

Время на прочтение7 мин
Охват и читатели8.7K

Если я шутя спрошу вас: «что мы любим на завтрак? Что мы любим на ужин?» — думается, что ответы будут очень разными, но, наиболее очевидным ответом наверняка будет то, что, хотя бы изредка, мы позволяем откусить себе, что утром, что вечером — маленький, ароматный кусочек килограмма на полтора душистого сыра!

Читать далее

Сервер на смартфоне полгода спустя: OnePlus 6, Mobian, 26 контейнеров и одна проблема

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели15K

В апреле 2026 года я решил ради эксперимента установить на старый смартфон OnePlus 6 Linux (Mobian) и использовать его в качестве сервера. Через некоторое время пришлось немного повозиться, чтобы правильно настроить режим зарядки, чтобы аккумулятор жил в наиболее безопасном и комфортном режиме.

Полгода спустя на нём работают 26 Docker-контейнеров. Рассказываю, что там крутится, как устроены мониторинг, CI/CD, Caddy и Nginx.

Читать далее

Игровая консоль в корпусе нормирующего преобразователя: raycast на ESP8266

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели8.4K

Подарок сыну и списанный прибор

Не так давно мой сын, которому тогда было 5 лет, попросил игровую консоль. Я немного подумал, и решил, что до полноценной консоли ему бы ещё подрасти… и решил сделать её сам. Проведя ревизию полезного «железа» я нашёл 2.4“” TFT SPI дисплей, шилд джойстика и ESP8266. Сначала был написан в Arduino IDE код, затем найден корпус… но я начну от обратного. Поиск подходящего корпуса начался с Авито. Куплена нерабочая китайская консоль, но сразу после получения успешно отремонтирована подключением шлейфа дисплея и поиск продолжился… На работе был присмотрен списанный нормирующий преобразователь интерфейсов, замерен, и… признан пригодным к адаптации в качестве корпуса.

Читать далее
1
23 ...