Обновить
99
0
Владислав Рябчевский@VRyabchevsky

DevOps, радиолюбитель, робототехник, программист

Отправить сообщение

Обзор отечественных компьютерных модулей формата SMARC

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

В статье кратко описан стандарт встраиваемых компьютерных модулей SMARC. Приведен краткий обзор отечественных производителей и модулей выполненных в данном стандартен.

Компьютерные модули, называемые также компьютерами на модуле (Computer-on-Module) или системами на модуле (System-on-Module), представляют собой компактный вычислитель, содержащий центральный процессор, память, контроллеры периферии и вторичные источники питания. Все периферийные интерфейсы выведены на разъемы в соответствии с той или иной общепринятой спецификацией.

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

Описание преимуществ и наиболее популярных среди разработчиков и пользователей встраиваемых систем стандартов компьютерных модулей: ETX, QSeven, SMARC, СOM Express и COM-HPC представлено в статье «Компьютерные модули. Описание преимуществ применения и обзор популярных стандартов».

Далее будет приведено описание одного из самых молодых стандартов: SMARC и краткое описание отечественных разработчиков и модулей в данном стандарте.

Читать далее

Разработка сложных процессорных систем на примере модуля SMARC

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

Приветствую, Хабр! Долго не мог решиться, стоит ли писать статью по разработке устройств на процессорах. Материала и опыта по этой теме очень много, а если описывать все этапы проектирования, то нужно делать целый цикл статей. Но по факту это все равно не будет инструкцией к действию, так как в процессе разработки возникает множество нюансов. И каждый раз они индивидуальны.

Я решил описать некий шаблон (скорее один из), который, возможно, кому-то поможет в проектировании многослойных плат. Если мы говорим конкретно о разработке, то она включает в себя несколько этапов. Я буду писать об одном цикле — от получения технического задания, до передачи герберов на производство печатных плат. Затрону подготовку задания на согласование импедансов, так как это важно с самого начала трассировки. Сознательно не буду говорить о выборе компонентов, выгрузке конструкторской документации, поиске и исправлении ошибок после сборки плат и т. д.

Статья получилась большая, но, как говорится, из песни слова не выкинешь. Если вам все еще не страшно — добро пожаловать под кат!
Читать дальше →

Домашняя векторная БД + RAG

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

Часто приходится искать в огромной куче документов какую нибудь частную, специфичную вещь. На данный момент, только лично у меня более 2Gb различных pdf файлов. Зачастую разбросанных не системно. И хотя обычно представляешь где искать, но это отнимает время. Захотелось иметь инструмент ускоряющий поиск.

Читать далее

GenBook RK3588: уникальный модульный Linux-ноутбук с ARM-процессором с возможностью апгрейда. И кое-что еще

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

GenBook RK3588 — ноутбук с 14,1-дюймовым дисплеем разрешением 1920x1080 пикселей, оснащенный восьмиядерным процессором Rockchip RK3588, поддержкой до 32 ГБ оперативной памяти и возможностью работы с Debian, Ubuntu и другими дистрибутивами GNU/Linux. Особенность модели не только в ее ARM-чипе, но и в модульной конструкции, которая позволяет заменять процессорный модуль. Подробности под катом!
Читать дальше →

Я купил игровую консоль и написал для неё… BIOS

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

Осторожно: статья написана максимально простым языком. Так что если вы гик, но не умеете программировать — вам всё равно будет интересно!

Недавно я наткнулся на DIY-игровую консоль за 1.500 рублей — Waveshare GamePi13. Когда гаджет приехал ко мне, я запустил примеры игр от производителя... и оторопел от 5 FPS в Pong — это ж как плохо нужно код писать!

Не желая мириться с этим, я открыл схему устройства, даташит на RP2040 и принялся писать свой собственный BIOS. Если вам интересно узнать, как работают DIY-консоли «изнутри», можно ли запускать внешние программы на микроконтроллерах из RAM, как реализованы различные подсистемы BIOS, а в конце даже написать «Змейку» - добро пожаловать под кат!

Читать далее

Книга: «Kotlin Multiplatform на практике»

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

Привет, Хаброжители! Хотите писать код один раз и запускать его на Android и iOS, сохранив нативное качество и производительность?

В этой книге вы освоите все шаги разработки полнофункциональных кросс-платформенных приложений с помощью Kotlin Multiplatform SDK — от создания проекта с нуля до миграции существующих нативных решений. Подробные инструкции, архитектурные подходы и реальные примеры помогут уверенно работать с общими модулями, многопоточностью, сетевым слоем, хранением данных и Compose Multiplatform для iOS.

Особое внимание уделено использованию нативного и общего кода в кросс-платформенном приложении, применению expect/actual, тестированию с Kotest, оптимизации разработки с помощью KSP, плагинов компилятора и ИИ-ассистентов. Вы узнаете, как создавать и публиковать собственные KMP-библиотеки, а также получите краткий справочник по Kotlin и Swift, чтобы уверенно ориентироваться в обеих экосистемах.

Читать далее

Здоровое питание для стенда. Концепция открытого источника питания для тестирования электроники

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

Как гарантировать, что тысячи устройств будут работать безупречно как в лабе, так и у конечного пользователя? Конечно, с помощью тестов на всех этапах. Чем запитать DUT (тестируемое устройство)? С одной стороны — дешевый китаец (проблемно непредсказуемый или предсказуемо проблемный), с другой — лабораторный монстр (пугающе дорогой, 90% наворотов — мусор). Мы устали делать этот выбор, и решили сделать свой источник: надёжный с первой до последней секунды теста, компактный, умный и послушный.

Вот что мы придумали:

Пайка плат, заказанных на JLCPCB, в домашних условиях

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

Всем привет!

Это моя первая заметка на Хабре и в интернете вообще. Поэтому сразу хочу извиниться за некоторую косность изложения и незрелость оформления текста.

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

Схемы и платы из EDA редактора я здесь приводить не буду, т.к. проект еще находится в стадии отладки, поиска ошибок и внедрения новых решений. Расскажу лишь вкратце суть и причины разработки, а затем хочу сделать акцент именно на процессе пайки деталей на PCB.

Итак, у одного моего бывшего коллеги и старого приятеля в ремонте появился преобразователь постоянного напряжения от аккумуляторов в переменное 230В. Хочу сразу сказать, что само устройство целиком я никогда вживую не видел. Как мне пояснил мой друг, частой причиной поломки таких преобразователей является выход из строя микроконтроллера управления основной ШИМ преобразователя — SG3525. Микроконтроллер измеряет входное напряжение с батареи, температуру каких‑то силовых элементов, и при превышении, либо просадке входного напряжения, а также превышении температуры выключает SG3525 и включает вентилятор и играет звуковой сигнал тревоги. Здесь все достаточно просто. Единственный минус — ног у микроконтроллера всего 8, из них две — Vdd и Vss(GND).

Микроконтроллер имеет шлифованную верхнюю поверхность без маркировки. Но по распайке некоторых компонентов в нем отчетливо угадывается PIC12F675.
Ещё одна проблема, что из‑за недостатка свободных ног мне недоступен аппаратный дебаг. ICSP пины, как раз задействованы для измерения входного напряжения и температуры. Разве, что можно попробовать использовать один из пинов МК под программный UART‑TX и передавать данные по нему.

В общем достаточно убогий и старый микроконтроллер — он уже больше 20 лет присутствует на рынке. Есть более современные аналоги pin-to-pin. Думаю, поработать с ними позже.

Читать далее

Главный элемент информационной безопасности

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

ак вы думаете, какой элемент вашей IT инфраструктуры самый главный? Межсетевой экран, сертифицированный ФСТЭК? VPN шлюз с российской криптографией? Сервер на базе процессора 1891ВМ038 Эльбрус-16С или Байкале BE-S1000?

Нет! Главный элемент информационной безопасности — это ваша клавиатура! Ведь именно клавиатура первой узнает ваш новый пароль, знает какие сайты вы посещаете и что вы пишете в мессенджерах. Вы уверены, что это вы стучите по клавишам, а не ваша клавиатура «стучит» куда-то на вас? Особенно, если эту клавиатуру вам подарили.

Читать далее

Ретрогейминг без ностальгии. Как, зачем и для кого я сделал авторскую игровую консоль

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

Консоль я спроектировал для маленьких детей от 6ти лет, чтобы их система мотивации — «каннабиноидно-дофаминистическая мезо-корико-лимбическая система безусловного подкрепления», она же, система вознаграждения, формировалась без аддиктивного влияния современной мобильной индустрии. Это не рекламный пост, поскольку оболочка ОС открыта и выложена на гите. Наоборот, я буду рад энтузиастам присоединившимся к проекту. 

Читать далее

Почему необходимо помнить об «устаревшей» эстетике игровых консолей

Время на прочтение4 мин
Охват и читатели6.1K
imageВ октябре 2018 года компания Google запустила проект «Stream», позволяющий поиграть в новейший «Assassin’s Creed» прямо в браузере. Не нужна никакая игровая консоль, даже файл скачивать не нужно.

По многим отзывам, сервис получился очень удачным. Google – не единственная компания, пытающаяся закрепиться в нише потоковых игр. Компания Microsoft также анонсировала проект xCloud, в рамках которого ставятся аналогичные цели. Кажется, что все больше технологических компаний пытаются организовать доступ к компьютерным играм как к потоковому контенту, усматривая в этом большие перспективы – поскольку пользователям не придется покупать дорогие консоли, которые все равно устареют.
Читать дальше →

Видеокарта VGA для микроконтроллера

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

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

В то же время есть огромный парк старых ЖК мониторов. Модели с диагональю 15-19 дюймов можно приобрести в рабочем состоянии за 200 – 500 руб. Особенно это касается моделей с немодным сейчас соотношением сторон 4:3. Эти модели достаточно надежные. Лампы CCFL, используемые для подсветки, конечно, теряют яркость за годы эксплуатации и их спектр свечения уходит в неприятный красноватый оттенок, но благодаря большому количеству таких мониторов всегда есть возможность выбрать более-менее живой экземпляр. Кроме того, лампы CCFL относительно несложно заменить обычной светодиодной лентой, подключив ее напрямую к источнику питания 12 В монитора. Однако при этом обычно необходимо заблокировать цепи обратной связи от микросхемы управления подсветкой к контроллеру самого монитора, иначе монитор будет думать что подсветка неисправна и просто выключится. Также придется пожертвовать функцией регулировки яркости. Однако, этой функцией мало кто пользуется. Обычно яркость монитора настраивается один раз в жизни, сразу после его покупки и потом никогда не меняется.
Читать дальше →

«Yet Another» против «Not Yet Another»: Почему ИИ-стартапы застряли в копировании

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

В мире технологий есть одна устойчивая тенденция: копировать проще, чем создавать. Новый стартап, новый чат-бот, новый алгоритм аналитики данных — звучит знакомо? Рынок ИИ переполнен продуктами, которые, несмотря на громкие заявления, часто оказываются лишь вариациями уже существующих решений. Это явление получило название "yet another" — еще один такой же. Но почему так происходит, и есть ли выход из этого замкнутого круга?

Читать далее

Ещё 10 ошибок авторов Хабра

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

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

Читать далее

Когда ты больше не просто пишешь код. Ты управляешь энергией

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

Привет, Хабр!

Когда-то я писал веб-приложения. Решал задачи бизнеса, деплой в прод, REST, тесты, метрики, кубики. Всё было нормально. Но в какой-то момент мне стало… скучно.

Да, задачи были интересными. Команда — отличной. Но где-то внутри появилась пустота. Хотелось делать что-то настоящее. Осязаемое. Что-то, где за твоим кодом — больше, чем UI и API. Хотелось влиять на реальный мир.

Так я попал в мир электропривода.

Читать далее

Записываем PNG без мам, пап и внешних библиотек

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

Я решал очередную техническую задачу и столкнулся с проблемой: нужно сохранять изображения, а у меня нет сериализаторов и я не могу использовать готовые библиотеки. Ситуацию ухудшает, что из доступных форматов только PNG, JPEG и WebP. Выбор пал на PNG.

Формат изображения PNG известен с 1996 года, а на Хабре опубликовано несколько статей о декодировании этого формата. И ни одной — о кодировании. Я расскажу, как сохранить PNG своими руками на случай, если вам тоже придется это делать. Например, в академических целях.

Под катом вас ждет подробный разбор каждого байта на множестве иллюстраций.
Читать дальше →

Как перенести Linux Device Drivers на современные ядра

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

Наверное, каждый разработчик рано или поздно задумывается о том, что же происходит в операционной системе на уровне ядра. Для ОС на базе ядра Linux относительно простой точкой входа является написание своих модулей. Модули по своей сути — это драйверы устройств (символьные char device, блочные block device, сетевые network device и другие).

В книге Linux Device Drivers (LDD) подробно описано, как создать свой модуль ядра для интересующего класса устройств. Однако эта книга очень устарела, поскольку в ней рассматриваются случаи, справедливые для ядра версии 2.X.X. А в 2025 году третьему изданию Linux Device Drivers исполняется 20 лет!

На сегодняшний день большинство устройств используют ядра 5.X.X или 6.X.X, в которых многое изменилось. Так и появилась идея этой статьи — адаптировать информацию из LDD под современные ядра.

Под катом рассмотрим следующие классы устройств: char device, block device и network device.

Читать далее

Открытая IDE для российских разработчиков

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

Компания Haulmont совместно с Группой Астра и Axiom JDK создает некоммерческое партнерство для развития открытой российской среды разработки – OpenIDE.

Все три компании имеют огромный опыт в создании популярных продуктов для разработчиков и мы верим, что сможем сделать качественный продукт. Мы не планируем изобретать велосипед и будем использовать в качестве основы популярную среду с открытым кодом IntelliJ IDEA Community Edition.

Почему это хорошая новость для российских разработчиков? Чем это отличается от самой IntelliJ IDEA CE или уже существующей российской GigaIDE? Какие языки будут поддерживаться? Что со Spring? Когда релиз? Читайте под катом.

Читать далее

Разбираемся со сканерами в Linux: получение информации об устройстве и поиск подходящего драйвера

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

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

В первой части коснемся вопроса сбора информации об устройстве при помощи системных утилит, входящих в состав ОС, а также программ от разработчиков SANE. Расскажем, как физическое устройство (например, МФУ) представляется в ОС сразу и принтером, и сканером, и много ещё чем. Обязательно затронем тему дескрипторов и детально рассмотрим значение каждого из них. База, так сказать. Заглянем в типовой пакет проприетарного драйвера и на примерах покажем, как он должен выглядеть в идеальном современном мире. Глазами разработчиков SANE, конечно. Мы не будем с ними спорить.

Подключайте свои сканеры

Проект Смотритель — удаленно управляемый робот на ESP32-CAM

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

Разрабатываем робота с нуля - от ИИ-дизайна до полного проектирования и реализации всех компонентов устройства.

Зачем? Ради фана, конечно - этот проект практически квинтессенция моих увлечений - электроника, 3d-печать, программирование микроконтроллеров, ИИ и в целом все, что можно включить в сферу DIY.

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

Поехали

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность