Как стать автором
Поиск
Написать публикацию
Обновить
51
0.9

Embedded HW & SW. Больше HW.

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

FreeRTOS для самых маленьких на примере ESP-IDF

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

Все мы знаем, что FreeRTOS — это операционная система для проектов, где каждой задаче установлены строгие рамки времени, чтобы любое действие было гарантированно обработано. На этом познания об этой системе у большинства айтишников заканчиваются, по той простой причине, что 99% из нас не собираются никогда в жизни разрабатывать ничего наподобие софта тормозной системы автомобиля или медицинского оборудования. Но я бы хотел сегодня немного рассказать об этой системе, потому как она вполне может пригодиться многим из нас по другим причинам. Ведь FreeRTOS вполне может оказаться отличным следующим шагом для саморазвития после Arduino, потому как поддерживает невероятное количество процессоров и при разрастании проекта немногим сложнее «Hello World» её использование будет проще для написания кода за счёт своей продуманной архитектуры. Её можно использовать на микроконтроллерах, с которыми многие уже привыкли работать в своих проектах выходного дня и которые обходятся в смешные деньги, например AVR, ESP32 и STM32. Сегодня я покажу, насколько просто использовать преимущества FreeRTOS на примере контроллера ESP32 и фреймворка от производителя Espressif — ESP-IDF, для своей линейки микроконтроллеров.
Читать дальше →

Германская танковая проблема: торжество статистики и один из первых примеров военного OSINT'a

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

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

Решением этой проблемы стал нетрадиционный подход, основанный на применении статистического анализа к, казалось бы, незначительным деталям — маркировке на захваченном немецком оборудовании. Этот метод, известный как «Германская танковая проблема», позволил получить удивительно точные оценки производства немецких танков, превосходящие по точности данные, полученные традиционной разведкой. История германской танковой проблемы демонстрирует, как статистические методы способны превратить, казалось бы, хаотичную информацию в ценные разведывательные данные, играя решающую роль в стратегическом планировании и ведении боевых действий. Однако, статистическим анализом производства танков всё не ограничивалось.

Читать далее

Как взломать Harley Davidson. Часть 1

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

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

Читать далее

Умный принт-сервер: печать и скан без драйверов на старых принтерах + финансирование опенсорса

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

TL;DR: из-за отсутствия «умных» принт-серверов на рынке сделал собственное устройство, позволяющее печатать и сканировать на старых USB-принтерах через Wi-Fi и Ethernet, с любого смартфона и компьютера под любой ОС, без установки драйверов (AirPrint/Mopria). Девайс включает не только распространённые открытые драйверы, но и проприетарные, в режиме эмуляции x86-кода, plug&play.

Особенностью проекта является со-финансирование открытого ПО: разработчики сервера печати CUPS и сканирования SANE/AirSane получают по $2 с каждого проданного устройства, а оставшиеся деньги формируются в пул, для улучшения существующих открытых драйверов и написания новых.

Читать далее

Электроника в вопросах и ответах

Время на прочтение13 мин
Количество просмотров15K

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

Не всё из предложенного в той статье оказалось реализуемо, но, в общем, на мой субъективный взгляд, эксперимент оказался весьма любопытным :)

Ответить на вопросы смежников

Обходимся почти без мышки: Некоторые настройки Linux и Xorg для комфортной работы на старом железе

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров3.3K

Статья описывает настройки в консоли linux и графическом окружении для организации быстрой работы с минимальным применением мыши. Описаны настройки systemctl для автозапуска беспроводного интернета, Xorg (раскладка клавиатуры, клавиатурные сокращения). Горячие клавиши работают во всех трёх проверенных автором средах рабочего стола: Openbox с панелью tint2, xfce4 и lxde.

Читать далее

Анализ проприетарного протокола K-линии на примере блока SRS Honda CR-V 3

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.6K

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

Читать далее

Обновление прошивки Toshiba NAS HDD под Linux

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

Я произвёл реверс-инжиниринг модуля обновления прошивки своего HDD Toshiba, чтобы иметь возможность обновлять её под Linux. Приведённые ниже команды должны работать, но используйте их на свой страх и риск:

$ wget https://www.canvio.jp/en/support/download/hdd/ot_ihdd/fw/ISFw.dat
$ grep -C2 MODELNAME ISFw.dat
 # ^
 # |___ здесь определяем нужное имя файла
$ wget https://www.canvio.jp/en/support/download/hdd/ot_ihdd/fw/sk060202.ftd
# hdparm --fwdownload-mode3 sk060202.ftd /dev/sdX

Предыстория


Недавно я приобрёл для своего NAS диск Toshiba HDWG480 HDD. Вот вывод команды hdparm -I /dev/XXX:

ATA device, with non-removable media
        Model Number:       TOSHIBA HDWG480
        Serial Number:      3430A00RFR0H
        Firmware Revision:  0601
        Transport:          Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
        Used: unknown (minor revision code 0x006d)
        Supported: 10 9 8 7 6 5
        Likely used: 10
[...]

Как обычно, я хотел проверить, есть ли для него доступные обновления прошивки. На сайте Toshiba для моей модели приводится версия 0602.

К сожалению, и вполне ожидаемо, для пользователей Linux возможности обновления нет. Производитель предоставляет лишь «Internal Storage Firmware Update Utility» для Windows.

Сами файлы обновления также отсутствуют.
Читать дальше →

Использование Cortex-M3 hard core processor в ПЛИС GOWIN

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров3.2K

В статье описывается опыт использования ARM ядра, встроенного в ПЛИС GOWIN GW1NSR-4C, в качестве процессора общего назначения для формирования PSK31 сигнала. Сигнал формируется с помощью генератора синуса, который был описан в предыдущей статье. Используются отладочная плата LilyGO T-FPGA, в составе которой ПЛИС GW1NSR-LV4CQN48PC6/I5, ЦАП на основе DAC904, ide GOWIN FPGA Designer и образовательная версия GMD.

Читать далее

Делаем домашний сервер из: X88mini13

Время на прочтение10 мин
Количество просмотров17K

Предыдущие железяки: MXQ 4K и сетевой видеорегистратор

А вот была еще такая интересная штука: ТВ-бокс X88mini13
Для ее прошивки пришлось немного повозиться.

Читать далее

Работа с RISC-V контроллерами на примере GD32VF103 и CH32V303. Часть 3: прерывания

Время на прочтение19 мин
Количество просмотров5.1K

Макетная плата GD32VF103


Часть 1. Введение


Часть 2. Память и UART


Часть 3. Прерывания


Часть 4. Си и таймеры


Часть 5. DMA


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

Читать дальше →

Делаем домашний сервер из: старый регистратор

Время на прочтение6 мин
Количество просмотров16K

Сделать мини‑сервер из TV‑бокса можно, но вот проблема: встроенная память там никакая, всего‑то 8 гигабайт.
Можно, конечно, воткнуть в него SD‑карту.
Можно подключить USB‑диск, хоть механику, хоть SSD через адаптер.

А можно подключить диск через ISCSI: в ОС появляется устройство, которое может быть смонтировано как раздел файловой системы, точно так же как если бы это был обычный диск.

При этом внешне к «коробке‑серверу» ничего не подключено, все работает через сеть. Никаких дополнительных соплей ниоткуда не висит, только маленькая черная коробочка, сеть и питание.

В случае какого‑то форс‑мажора, связанного с уничтожением самого сервера (вандализм, пожар, кража) вся информация останется на физическом диске где была, в каком‑то другом месте. Для эстетов — можно сделать и так, что кража диска тоже ничего не даст, если диск зашифрован.
Единственный минус — скорость чтения/записи ограничена.

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

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

Читать далее

Вакуумное магнетронное напыление на дому

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров18K

Привет, Хабр! Последнее время здесь появились очень интересные статьи по вакуумному и стеклодувному делу, вызывающие неподдельный интерес у публики. Как насчет двинуться дальше, и начать серию статей про изготовление микросхем на дому? Многолетнюю, разумеется. Я по другому не умею :)

Тут вам и легирование кремния, и фотолитография, и вакуумное магнетронное и термическое напыление металлов и оксидов на подложку.

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

Подробности подкатом

Укрощение строптивого прибора или python в помощь инженеру

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

Здравствуйте товарищи!

В данной статье хочу поделиться с вами своим опытом по применению стандартных команд для программируемых инструментов (SCPI).

Читать далее

От авторемонта до телевизоров: история московского завода «Рубин»

Время на прочтение4 мин
Количество просмотров3.4K

Привет всем! Это Виктор Сергеев, автор команды спецпроектов МТС Диджитал. Недавно я рассказывал о высотном складе ЗИЛ, сегодня — очередь еще одного гиганта. Московский завод «Рубин» прошел путь от авторемонтного предприятия до одного из ведущих производителей телевизоров в СССР. Подозреваю, многие из вас знакомы с телевизорами от «Рубина» — раньше они были почти в каждом доме. Сейчас, к сожалению, завода уже нет, но память о нем жива.

Читать далее

Разработка на Go, верификация, DevOps и программирование микроконтроллеров на RISC-V: выбирай бесплатный курс

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

Новость для тех, кто хочет сделать начало следующего года особенным для своего развития. Второй год мы запускаем бесплатные практические курсы по востребованным инженерным направлениям. К уже классическим трекам по верификации, DevOps и Go-разработке добавился новый: «Программирование микроконтроллеров RISC-V: от основ работы с открытой архитектурой до создания собственного устройства». Регистрируйтесь на курсы до 16 января 2025 года, чтобы изучить современные подходы к разработке, создать проекты для портфолио и поработать под руководством опытных инженеров.

Читать далее

HFSS student. бесплатная версия

Время на прочтение3 мин
Количество просмотров4.9K

Всем здравствуйте! Полагаю, что софт для разработки антенн и электродинамической симуляции - HFSS Design не нуждается в подробном представлении. С момента своего появления за почти тридцатилетнюю историю, летом 2021 года появилась его бесплатная студенческая версия. Она имеет ограничение на размер рассчитываемых моделей, однако для болшей части учебных задач он подходит. Здесь я бы хотел рассказать где скачать этот софт и как создать что-то типа "Hello World'a" с созданием тестовой модели в пару кликов.

Читать далее

Прошивки OpenWrt: атака на цепочку поставок

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

Несколько дней назад я обновлял сеть своей домашней лаборатории и решил обновить OpenWrt роутера 1. Подключившись к LuCI (веб-интерфейсу OpenWrt), я заметил раздел Attended Sysupgrade и попробовал обновить прошивку с его помощью.

В описании говорилось, что он собирает новую прошивку при помощи онлайн-сервиса.


Мне стало любопытно, как это работает, так что я приступил к исследованиям.
Читать дальше →

Делаем домашний сервер из: MXQ pro 4K

Время на прочтение5 мин
Количество просмотров13K

К вопросу о том, «что за дом без серверной стойки для души и экспериментов»:
серверная в подвале, с круглосуточно гудящими аппаратами — теперь в прошлом. Для серьезных вещей удобнее купить VDS на хостинге, а для несерьезных...

Ну вот, например, попалась смарт‑приставка для TV MXQ pro 4K.
По описанию на маркетплейсе — там и 64Gb, и тут же одновременно 512Gb (интересно, что именно они имели ввиду?) при цене, скажем так, пакета апельсинов.
Ну, чтож, надо глянуть, чего там внутри.

Ну, софт особо не интересует — Андроид, стандартные для таких приставок приложения типа онлайн‑кинотеатров, ничего необычного.

Коробка по нынешним временам просто огромная, при том что внутри половина места занята пустотой. Что там предполагалось создателями — теперь сказать сложно, т.к. такой дизайн платы известен уже много лет, и наверное когда‑то в этом был глубокий смысл.

Читать далее

Тестирование и отладка встраиваемых систем STM32 с использованием QEMU эмулятора и Docker

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

Статья будет полезна разработчикам встраиваемых систем, которые хотят автоматизировать процесс тестирования своих проектов. Отдельный блок посвещен отладке gdb в эмуляторе QEMU. В качестве примера используется библиотека логирования (GitHub, Habr)

Читать далее

Информация

В рейтинге
2 790-й
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Инженер встраиваемых систем, Инженер электронных устройств