Обновить
182
0.4

Инженер, тестировщик, радиоинженер

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

HackRF + GNU Radio = WBFM Transmitter

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

Продолжаю цикл статей посвященных легендарному HackRF. В этом материале я хотел бы разобрать изнанку GNU Radio и описать широкими мазками то, каким образом оно устроено под капотом и сделать какой-нибудь минимально интересный проект с его использованием. Для себя я выбрал простую передачу аудиосигнала с микрофона с одного HackRF на другой через коаксиальный кабель с использованием WBFM-модуляции. Посмотрим на спектр, принимаемый сигнал и оценим возможности такого лабораторного сетапа.

Добро пожаловать под кат, будет интересно! 🙂

Читать далее

Обзор HackRF Portapack

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

Буквально неделю назад один из моих читателей оказал мне доверие и предоставил устройство для обзора - HackRF Portapack. Это по сути портативная версия HackRF не требующая ПК для решения радиоинженерных задач. Получив это устройство оно показалось мне достаточно интересным и много о чем можно было бы рассказать, в продолжение темы про HackRF. Я обзорно расскажу о том, из чего это устройство состоит, какие прошивки предлагаются для устройства (их оказалось несколько), что предлагает это устройство для инженеров и радиолюбителей и рассмотрим спектр возможных применений. И в присущей мне манере и с исчерпывающем повествованием я поделюсь с вами своим опытом использования данным устройством. 

Всем интересующимся - добро пожаловать под кат!

Читать далее

Pytest. Гайд для тех, кто ни разу про него не слышал

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

Недавно на работе передо мной возникла задача максимально быстро погрузиться в автоматизированное тестирование с ранее мной не использовавшимся фреймворком pytest. Почитав порядка десяти статей на Хабре я понял, что в каждой из статей есть много всего интересного, а чтобы системно погрузиться — необходимо идти читать документацию. Я решил, в привычной мне манере, разобраться и систематизировать самый сок для того, чтобы быстро въехать в суть и важные тонкости положив основу для дальнейшего использования. 

Всем интересующимся — добро пожаловать под кат!

Читать далее

Стратегия внедрения и развития QA в рамках разработки hardware-продуктов

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

Я давно носил мысль о том, чтобы изложить на бумаге свое видение о том, каким образом, какими инструментами и по каким шагам можно было бы организовать внедрение полноценного QA в процесс разработки аппаратного обеспечения. И вот относительно недавно, в рамках тестового задания при собеседовании, мне довелось составить подобного рода документ описывающий весь процесс от аудита до практически полной автоматизации процесса тестирования. Для того, чтобы получить на него всестороннюю обратную связь и услышать мнения на этот счет - я решил написать статью об этом. 

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

Всем интересующимся - добро пожаловать под кат!

Читать далее

Cisco TRex. Сетевое тестирование в Stateless и Stateful сценариях

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

Продолжаем разбираться в OpenSource генераторе трафика от Cisco - TRex. При разработке и внедрении сетевого оборудования критически важно проводить его тщательное тестирование. Маршрутизаторы и коммутаторы должны выдерживать заявленную нагрузку, правильно обрабатывать трафик на разных уровнях.

Стандартизированные методики (например, RFC 2544) определяют, как измерять пропускную способность устройства без потерь и другие метрики. Ранее для таких испытаний широко применялись дорогостоящие аппаратные генераторы трафика (Ixia, Spirent и т. д.). Однако в условиях ограниченной доступности коммерческих решений всё более актуальными становятся открытые альтернативы.

Одной из наиболее доступных и при этом мощных опций является бесплатный Open Source генератор трафика Cisco TRex. В продолжение предыдущей статьи рассмотрим, как с помощью Cisco TRex 3.06 провести комплексное тестирование производительности и функциональности сетевых устройств.

Читать далее

HackRF One. Начало работы и варианты применения

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

Продолжаю свой рассказ о SDR‑трансивере HackRF One. На этот раз хотелось бы рассказать о том, что делать с устройством, когда оно оказалось у вас в руках. Какие проекты и способы использования доступны для обычного пользователя и радиолюбителя. Я постарался обобщить в статье всё, что удалось найти и то, что меня заинтересовало больше всего. Начну с процесса настройки, а потом попробуем железку в деле!

Всем заинтересованным — добро пожаловать под кат!

Читать далее

HackRF One. Доступный SDR трансивер для каждого

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

В очередной раз перебирая залежи своей электроники мне на глаза попался старый добрый товарищ - SDR-трансивер HackRF от Great Scott Gadgets. И я вспомнил, что у меня когда-то давно были планы написать несколько статей о том, как им пользоваться, что он может, да и зачем он вообще нужен. По всему Интернету я нагуглил огромное количество самого разнообразного разрозненного материала насчёт HackRF, утилит, прошивок, дополнительных модулей и прочего. И я решил подсобрать все это в своём материале сделав хороший вводный обзор.

Для всех, кому интересна тема радио и SDR — добро пожаловать под кат!

Читать далее

Генератор трафика Cisco TRex. Обзор

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

Учитывая сложившееся положение на рынке и снижение доступности готовых решений для осуществления сетевых тестирований - актуальным становится рассмотрение любых доступных альтернатив. Один из самых доступных и достойных вариантов - Open Source решение TRex от компании Cisco. Данный трафик-генератор я использую в своей текущей работе и поделиться своим опытом его использования. Его особенности, возможности и как им пользоваться - я бы хотел рассмотреть в этой статье.

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

Приглашаю всех заинтересованных под кат!

Читать далее

Изучаем RISC-V с платой Sipeed M1S

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

Наконец-то появилось время и желание пощупать и опробовать в деле давно купленную отладку от Sipeed на базе RISC-V SoC BL808. Попутно я решил собрать материал по теме и поделиться с читателями своим опытом использования этого SoC в разных сценариях. Помимо обзора отладки и SoC я подробно расскажу, что предоставляет производитель для энтузиастов, состав SDK,  как собрать Linux-ядро, примеры ее использования. Всем кому интересна данная тема — добро пожаловать под кат! =)

Читать далее

Zynq 7000. HDMI для платы Zynq Mini для baremetal

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

Я давно носил идею проверки HDMI на платах Zynq, и вот наконец-то дошли руки до этого интересного топика. В этой статье я покажу, что вывод изображения через HDMI достаточно прост, но ограничусь только рассмотрением вывода изображения из baremetal-приложений, а вопросы про Linux оставлю для следующей статьи. В первую очередь изучим возможность простого вывода изображения в HDMI из генератора тестовых изображений с использованием Test Pattern Generator в PL-логике, а затем коснёмся применения AXI Video DMA.

Всем интересующимся добро пожаловать под кат!

Читать далее

Zynq 7000. Загрузка Embedded Linux на SoC через JTAG с помощью XSCT

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

Учитывая, что я очень давно занимаюсь отладкой и запуском самых разнообразных проектов связанных с Zynq 7000 — со временем количество итераций перезапуска при проведении отладки увеличивалось пропорционально сложности проекта. Когда я только начинал осваивать разработку под Zynq, то каждый раз закидывал новый образ на microSD карту. Это было очень медленным процессом и требовало от меня постоянно подключать/отключать карту. После этого я освоил сетевую загрузку через Ethernet и TFTP, заменяя файлы по сети и проверяя результат после перезагрузки.

Впоследствии, изучив вопрос связанный с типами загрузки, я обнаружил, что есть альтернативный способ загрузки платы через интерфейс JTAG, который впрочем может оказаться единственным доступным, если на плате нет microSD и Ethernet.  

Вот как раз вопросы связанные с тем, как произвести загрузку по JTAG я бы хотел осветить в этой статье. Всем кому интересно — добро пожаловать под кат. 

Читать далее

Тестирование NAND и eMMC

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

Когда я плотно занимался аппаратным тестированием, в рамках разработки embedded-устройств, часто бывало так, что инженеры-разработчики и я оказывались в условиях жесткого ограничения в выборе возможных компонентов NAND или eMMC. И в этой связи очень часто возникала необходимость дополнительных проверок каждого из компонентов на долговечность и качество работы. Очень часто приходилось проверять чипы-кандидаты на общий ресурс записи/чтения, скорости операций и т. п. И мне пришла идея, почему бы не поделиться своим опытом с другими специалистами, перед которыми стоят аналогичные задачи. Я хотел бы рассказать в данной статье, что такое Flash-память, почему они выходят из строя и как я организовал тестирование, как через тестирование минимизировать риски при выборе устройства хранения для разрабатываемого устройства. 

Всем, кому интересна данная тема — приглашаю под кат.

Читать далее

Обзор отладочной платы ALINX AXU15EGB

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели5.6K
Давненько ко мне в руки не попадалось ничего интересного, но ситуация поменялась 🙂. Попутным ветром принесло тут платку, и я решил, мол, а почему бы мне не сделать на неё небольшой обзорчик? Итак, отладочная плата с Zynq MPSoC от небезызвестной компании Alinx, которая торгует всяким интересным на Aliexpress.

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

Кому интересно – добро пожаловать под кат!



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

STM32. Процесс компиляции и сборки прошивки

Уровень сложностиПростой
Время на прочтение30 мин
Охват и читатели56K
Многие из начинающих разработчиков софта для микроконтроллеров реализуют свои проекты исключительно в средствах разработки, которые предоставляются производителем. Многое скрыто от пользователя и очень хорошо скрыто, из-за чего некоторые воспринимают эти процессы сродни настоящей магии. Я, в свою очередь, как человек в пытливым умом и природной любознательностью, решил попробовать собрать проект без использования IDE и различного рода автоматизаций.

Так родилась идея для этой статьи: не используя ничего, кроме текстового редактора и командной строки, собрать проект мигания светодиодом на отладочной плате STM32F0-Discovery. Поскольку я не до конца понимал, как происходит процесс компиляции и сборки проекта, мне пришлось восполнять пробелы в знаниях. Разобравшись с этим вопросом, я подумал — а почему бы не рассказать другим об этом?

Всем кому интересно — добро пожаловать под кат! 🙂

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

STM32. Подготавливаем среду разработки в Linux

Уровень сложностиПростой
Время на прочтение21 мин
Охват и читатели60K
В недавнем времени получилось так, что у меня появилась пара интересных проектов, где одна из составных частей — микроконтроллер STM32. И каждый раз при смене ноутбука или ОС на домашнем компе приходится настраивать окружение для разработки как в первый раз. Плюсом, последние проекты, которые я делал для STM32 — выполнял в Windows, в демо-версии Keil uVision. Но поскольку я давно переехал в Linux — возникла необходимость основательно разобраться и изложить процесс настройки окружения для будущих применений.

Всем, кому интересно — добро пожаловать под кат.

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

Создаем I2C Master Controller на Verilog. Проверим работу на реальном железе

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели9.5K
После того, как Я реализовал битовый контроллер I2C Master — уж очень чесались руки опробовать его в реальной задаче. Теперь можно начинать строить уровни абстракции от манипуляции отдельными битами и уже формировать полноценные транзакции, которые приводят к какому-либо действию с подчиненным устройством. Я подумал, что было бы классно сделать такую проверку своего автомата во взаимодействии с простейшей I2C 2K-bit EEPROM.

Идея простая — читаем и записываем данные по нажатию клавиш на одной из отладок с Cyclone IV, которые я рассматривал в одном из своих обзоров.

Если материал вам кажется интересным — добро пожаловать, с удовольствием и в свойственной мне манере расскажу, чего мне удалось добиться, а чего не удалось. 🙂

image


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

Создаем I2C Master Controller на Verilog. Пишем HDL код

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели12K
Закончив в предыдущей статье описание того, как должны осуществляться атомарные операции и каким образом осуществляется выполнение команд я бодро перешел к написанию HDL-кода. Пришлось разобраться с тем, как организовать FSM, как организовать считывание и выставление данных на шине.  

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

Всем интересующимся — добро пожаловать под кат! =)

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

Создаем I2C Master Controller на Verilog. FSM, Clock, Output Logic, etc

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели8K
После длительного перерыва я продолжил разработку I2C Master Controller на Verilog. В прошлых статьях я рассмотрел основной теоретический материал, необходимый для реализации изначальной задумки. В этом материале переходим к более интересному содержанию: я последовательно расскажу про процесс проектирования конечного автомата I2C, расскажу про тактирование и как организована логика выходных сигналов и многое другое.

Всем, кому интересно — добро пожаловать под кат!

image


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

Создаем I2C Master Controller на Verilog. Логический уровень

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели12K
Продолжаю описание процесса изучения того, что такое I2C и с чем его едят. В этой статье я перейду от описания физических процессов, происходящих на шине к описанию того, как интерфейс функционирует на уровне логики, пакетов, какие служебные сигналы есть и для чего они используются при обмене данными.

Делаю я это для того, чтобы изучить то, как функционирует этот интерфейс на всех уровнях и чтобы заложить основу для разработки I2C Master Controller на Verilog, с помощью которого будет будет организован обмен данными с дисплеем SSD1306 и Zynq.

Всем, кому интересно — приглашаю ознакомиться с материалом под катом! =)

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

Создаем I2C Master Controller на Verilog. Идея и физический уровень

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели17K
В рамках изучения Verilog я выбрал для себя интересную и полезную задачу, которую изначально планировал решить в рамках цикла статей по Xilinx Zynq. На отладочной плате, на которую я делал обзор в предыдущих статьях, есть OLED дисплей SSD1306 который управляется по I2C. Я решил, что было бы круто вывести на него какую-нибудь информацию из Linux, например температуру или загрузку CPU. Но чтобы это сделать — полезной информации нужно пройти путь от Userspace до I2C Master Controller который управляет SSD1306. И вот реализацию этого самого контроллера из этой связки я хотел бы описать в этом цикле статей.

И немного поразмыслив — я подумал, что на этапе разработки этого модуля быстрее было бы его реализовать плате с ПЛИС Altera. Уж очень долго собирается bitstream-файл под Zynq. А в качестве тестового подчиненного устройства — буду использовать EEPROM и по мере готовности задачи — потом просто перенесу модуль в Vivado.

В как раз о том, что такое I2C, как я реализовывал Master Controller для работы с подчиненным устройством, чем руководствовался и что получилось — я опишу для вас в этой и последующих статьях.

Традиционно, кому интересно — добро пожаловать под кат! =)

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

Информация

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

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

Quality Assurance Engineer, Hardware QA/QC Lead Engineer
Lead
Git
Python
Shell
MySQL
Embedded Linux
FPGA
STM32
Electronics Development
Arm Architecture