Как подключить blackmagic к компьютеру

Обновлено: 05.07.2024

Уже давно у меня стоял вопрос по поводу онлайн-трансляции. Основная проблема заключалась в том, то что для проведения мероприятий больших масштабов, а в данном случае проведение спектаклей. Является сложной технической задачей проведения коммутации и ее реализации. Так как, чтобы провести от 100 м кабеля без потери качества и скорости видеосигнала и при этом иметь минимальную задержку на выходе, скажу я вам задача не из легких (учитывая ограниченный бюджет). Всегда приходилось работать через "костыль". Подключать камеру через выход Hdmi потом подключать к передатчику который будет преобразовать на выход витой пары 100 метров UTP и только потом сигнал приходит на приемник в низком разрешении и с низким фреймрейтом (FPS). Еще основным нюансом было, то что постоянно горели комплекты передатчиков и не важно какой марки и модели ты берешь, если комплект передатчиков имеет активное питание, малейший скачок или статическое напряжение и все, можно искать замену. Конечно были очень дорогие модели карт захвата, которые были специализированы для онлайн-трансляций. Но важным критерием в этой истории являлось соотношении цены, качества и самое главное работать на длинную дистанцию без использования дополнительных ресиверов и потери качества изображения. Долго и упорно я искал решение данной задачи, пока не наткнулся на плату видео захвата от компании Blackmagic. Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E)

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 1

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 2

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 3

Самой главной фишкой этой карты является SDI вход, который позволяет выводить изображение в SD, HD, Full HD и даже в 4K. С максимальной скоростью 6G/с, что является очень хорошим показателем. Но так же есть и порт HDMI, который подойдет больше для стриминговых сервисов. Если вы являетесь блогером или геймером, для вас эта незаменимая вещь!

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 4

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

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 5

1. Disk Speed Test в данной утилите вы можете проверить скорость записи и чтения свой SSD диск, HDD диск, SD card. Что не маловажным является при пост обработке

2.Blackmagic desktop video setup - здесь вы можете выбрать вход порта HDMI или SDI и указать разрешение

3. Blackmagic media express - для записи, систематизации и управление медиафайлами.

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 6

Итак! Самое главное, как же он в работе! При запуске трансляции в разрешении Full HD 60p, изображение работает в стабильных 60 кадров в секунду. "Подвисаний" и просадок не наблюдается, отклик картинки практически моментальный! Систему, а в частности Resolume Arena 6 грузит минимально, что позволяет работать с множественными слоями и эффектов, масок.

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 7

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 8

Обзор на Плата видеозахвата Blackmagic Design DeckLink Mini Recorder 4K (6G-SDI+HDMI, PCI-E) - изображение 9

По итогу, что хотелось бы сказать! Аппарат очень достойный в своей ценовой категории. Работает отлично, абсолютно бесшумный. Искажений и каких то других дефектов не наблюдается, единственное то что нельзя одновременно использовать два входа. Либо ты работаешь с портом HDMI либо с SDI!

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

Для работы Blackmagic eGPU и Blackmagic eGPU Pro требуется компьютер Mac с процессором Intel.


Процессоры Blackmagic eGPU и Blackmagic eGPU Pro, совместно разработанные компаниями Blackmagic Design и Apple, ускоряют работу профессиональных приложений, делают игры более плавными и позволяют создавать реалистичное содержимое на основе технологии виртуальной реальности на компьютере Mac.


Технические характеристики

Процессор Blackmagic eGPU оснащен графическим процессором Radeon Pro 580 и 8 ГБ памяти DDR5, что обеспечивает графическую производительность ноутбука Mac на уровне компьютера iMac 27 дюймов.

Процессор Blackmagic eGPU Pro оснащен графическим процессором Radeon RX Vega 56 и 8 ГБ памяти HBM2. Это дает подключенному компьютеру Mac графическую производительность на уровне компьютера iMac Pro.

Помимо улучшения графической производительности, оба процессора Blackmagic eGPU также предоставляют 85 Вт зарядной мощности для MacBook Pro и MacBook Air.

Для подключения дисплеев и аксессуаров виртуальной реальности процессор Blackmagic eGPU имеет:

  • два порта Thunderbolt 3 (USB-C);
  • четыре порта USB 3.0;
  • один порт HDMI 2.0.

Процессор Blackmagic eGPU Pro оснащен следующими портами:

  • два порта Thunderbolt 3 (USB-C);
  • четыре порта USB 3.0;
  • один порт HDMI 2.0;
  • один порт DisplayPort 1.4.


Требования к системе

Если используется компьютер Mac mini (2018 г.) или Mac Pro (2019 г.) с включенным шифрованием FileVault, при запуске обязательно подключите основной дисплей напрямую к компьютеру. После входа в систему и появления рабочего стола macOS можно отключить дисплей от компьютера и подключить его к процессору Blackmagic eGPU.

Для подключения монитора Apple Pro Display XDR к процессору Blackmagic eGPU или Blackmagic eGPU Pro убедитесь, что компьютер Mac работает под управлением macOS Catalina 10.15.2, а на процессоре eGPU установлена последняя версия прошивки.

Порядок обновления прошивки процессора eGPU:

  1. Перейдите на веб-сайт Blackmagic.
  2. Выберите семейство продуктов DaVinci Resolve, Fusion и BlackMagic eGPU.
  3. Загрузите и установите последнюю версию прошивки для процессора eGPU.


Подключение и использование процессора Blackmagic eGPU

Если подключить процессор Blackmagic eGPU или Blackmagic eGPU Pro к компьютеру Mac с помощью кабеля Thunderbolt 3 (USB-C), в строке меню отобразится элемент eGPU . Это означает, что процессор eGPU готов к использованию.

Процессор Blackmagic eGPU автоматически ускоряет графическую производительность приложений на основе интерфейса Metal на внешних дисплеях и устройствах, подключенных к процессору eGPU. Проверить, используется ли процессор eGPU, можно с помощью приложения «Мониторинг системы».

  1. Она находится в папке «Утилиты» раздела «Программы».
  2. Выберите меню «Окно» > «История графического процессора». Появится график активности внутреннего графического процессора и процессора Blackmagic eGPU.

Прежде чем отсоединить кабель процессора Blackmagic eGPU от компьютера Mac, выполните безопасное отключение с помощью элемента в строке меню.


Использование параметра «Предпочтительно использовать внешний GPU»

В macOS Mojave 10.14 и более поздних версий можно включить параметр «Предпочтительно использовать внешний GPU» на панели «Свойства» определенного приложения в Finder. Этот параметр позволяет процессорам Blackmagic eGPU и Blackmagic eGPU Pro ускорять работу приложений на любом дисплее, подключенном к Mac, включая встроенные дисплеи.

  1. Если приложение открыто, завершите его работу.
  2. Выберите приложение в Finder. Большинство приложений находятся в папке «Программы». Если вы открываете приложение, используя псевдоним или панель запуска, щелкните значок приложения, удерживая нажатой клавишу Control, и выберите «Показать оригинал» во всплывающем меню. Затем выберите оригинальное приложение.
  3. Нажмите клавиши Command-I, чтобы отобразить окно со сведениями о приложении.
  4. Установите флажок «Предпочтительно использовать внешний GPU».
  5. Откройте приложение, чтобы задействовать для него процессор eGPU.


Дополнительная информация

На данный момент macOS не поддерживает процессоры eGPU в ОС Windows с Boot Camp, а также в режиме восстановления macOS на компьютере Mac, при входе в FileVault или во время установки системных обновлений.

Информация о продуктах, произведенных не компанией Apple, или о независимых веб-сайтах, неподконтрольных и не тестируемых компанией Apple, не носит рекомендательного или одобрительного характера. Компания Apple не несет никакой ответственности за выбор, функциональность и использование веб-сайтов или продукции сторонних производителей. Компания Apple также не несет ответственности за точность или достоверность данных, размещенных на веб-сайтах сторонних производителей. Обратитесь к поставщику за дополнительной информацией.

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

Вот краткое содержание предыдущих выпусков:

Подключение камеры к компьютеру

Как захватить сигнал с камеры на компьютер? Для этого есть несколько вариантов. Десять лет назад все было проще — большинство видеокамер имели интерфейс Firefire и многие компьютеры и ноутбуки были с Firewire на борту, либо можно было приобрести недорогой tv-тюнер и захватить сигнал без каких-либо проблем.

камера firewire выход

Интерфейс Firewire на видеокамере и ноутбуке

Вообще Firewire был практически бабушкой всех современных интерфейсов (он был разработан Apple Computer в далеком 1995 году) и имел скорость передачи данных от 0.4 до 3.2 Gbit/sec, ниже можно посмотреть скорость передачи данных на интерфейсах начиная от Firewire до Thunderbolt 3, который популярен в наши дни.

Эволюция интерфейсов подключения. От Firewire до USB 3.0 и Thunderbolt 3.0

Эволюция интерфейсов подключения: от Firewire до USB 3.0 и Thunderbolt 3.0

Большинство видеокамер имеют выход USB, но он используется только для копирования отснятого материала на компьютер, для прямой трансляции он не подходит и требуется приобрести карту захвата для видео. Схема коммутации на самом простом варианте показана ниже.

карта захвата видео

Подключение камеры к компьютеру через карту захвата

С одной стороны подключаем в выход hdmi out, далее в карту захвата и порт USB на компьютере или ноутбуке. Конечно, еще есть web-камеры, которые можно подключать напрямую через USB, но это совершенно другая история и не подходит для более-менее серьезных трансляций, максимум — для вебинара. Подробнее о видах камер у нас есть отдельная статья, переходите по ссылке и изучайте.

Внешние и внутренние карты захвата видео

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

Внешняя и внутренняя карта захвата видео

Слева — внутренняя карта захвата, справа — внешняя, которая подключается через USB.

Подключение Blackmagic decklink к материнской плате

Внутреняя карта захвата подключается к материнской плате через слот PCI Express

Карта захвата подключается к компьютеру, камера подключается через нее. Схема максимально простая.


Новейшие карты захвата способны захватывать не один, а даже до 8 сигналов Full HD одновременно. Это означает, что с помощью программного обеспечения, такого как vMix или Wirecast, вы можете превратить ваш компьютер в многоканальный профессиональный видеомикшер.

Самым популярным семейством карт захвата видео является Blackmagic decklink.

Blackmagic decklink карты захвата

Семейство карт для захвата видео от Blackmagic

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

Внешняя карта захвата

Пример подключения внешней карты захвата к ноутбуку

На рынке много внешних карт захвата, но, на мой взгляд, стоит купить только несколько. Хорошие внешние карты стоят от 12 000 до 30 000 рублей, и я не рекомендую покупать более дешевые.

Например, несколько лет назад USB Black Intensity был популярным решением среди тех, кто занимается прямыми трансляциями. Устройство предлагает множество функций, например, захват не только HDMI, но и аналогового сигнала с камер.

Intensity Shuttle USB 3.0

Intensity Shuttle USB 3.0

У этих карт было много проблем во время работы, и многие стримеры жаловались на стабильность.

Отзывы о Intensity Shuttle

Отзывы о Intensity Shuttle

Если у вас Macbook с входом thunderbolt — есть отличное решение от Blackmagic, устройство называется Mini recorder, с помощью можно подключить видеокамеру с HDMI или SDI выходом.

Blackmagic mini recorder Thunderbolt

Blackmagic mini recorder с выходом Thunderbolt

Если у вас есть обычный компьютер или iMac и вы ищете именно внешнюю карту захвата с подключением через USB, то можем порекомендовать Mgewell xi100dusb, они крайне надежные в работе и никогда не подводят, но по стоимости начинаются от 20 000 рублей и сложно найти в России, придется ждать доставки из-за рубежа.

Карта захвата Magewell XI100DUSB

Карта захвата Magewell XI100DUSB с SDI и HDMI

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

В продолжении рассказа про Magewell xi100dusb вам требуется только подключить ее к USB 3.0 и все заработает автоматически, не требуется даже установка драйверов. Легко определяется любым программным обеспечением для трансляции, в том числе скайпом и другими решениями для общения в интернете. Есть версии Magewell xi100dusb для HDMI камер и SDI.

Если нужна карта дешевле, то можем аккуратно порекомендовать модель Avermedia ExtremeCap BU111, мы пару раз использовали во время трансляций и можем сказать, что она дает сильную нагрузку на процессор и теряет кадры. Для каких-то базовых историй и первой трансляции вполне себе подойдет, но лучше купить более дорогую модель от производителя Magewell.

Заключение

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

У нас часто спрашивают, какую карту захвата видео выбрать для трансляции на 1 камеру: например, последний раз нам написала девушка, которая хочет транслировать занятия по йоге на постоянной основе и они выбирают комплект для такой задачи. У них был своей беззеркальный фотоаппарат Sony a6400 с hdmi выходом. Соответственно, я порекомендовал им приобрести карту захвата Avermedia или Magewell и быть готовым к тому, что это в первую очередь фотоаппарат — далеко не самое лучшее решение для трансляции видео.

В идеале конечно иметь камеру с SDI выходом и приобретать внутренние карты захвата Blackmagic decklink, самая простая модель называется Mini Recorder (не путать с внешней картой) и стоит от 12 000 рублей новая и можно легко найти на авито от 5000 рублей.

Blackmagic Decklink mini recorder

Blackmagic Decklink mini recorder

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

Если есть какие-либо вопросы — пишите нам на почту, с радостью поможем начинающим. Также у нас можно арендовать необходимое оборудование для трансляции, в том числе и мощный ноутбук с картой захвата Magewell.

обзор видеомикшера ATEM mini

Если вы ведёте стримы на Twitch или YouTube, то уже поняли, что вам нужна не просто вебка, а полноценная видеокамера. И уже могли задумываться о приобретении мультикамерного микшера для подключения нескольких камер. Проблема в том, что устройства, работающие с режимом «картинка в картинке» и прочими эффектами, стоят в районе $1000. Впрочем, ATEM Mini от Blackmagic Design предлагает «картинку в картинке», эффекты перехода, профессиональный уровень управления звуком и много чего ещё всего за $295.

Как видеомонтажёр, я заинтригован. У Blackmagic Design есть другие видеомикшеры под маркой ATEM с ценой в десять раз больше, а новинка обещает примерно то же самое в недорогом и компактном исполнении. Звучит слишком хорошо, чтобы быть правдой, так что я решил сам всё проверить, имитируя стрим с несколькими камерами.

Устройство

ATEM Mini представляет собой консоль с габаритами 24×10×2,5 см, то есть её без труда можно разместить на столе. Корпус довольно крепкий, но пользоваться микшером за пределами помещения, пожалуй, будет рискованно. Все 59 кнопок оснащены цветной подсветкой, приятны на ощупь и тугие как раз настолько, насколько нужно.

На задней панели расположены четыре HDMI-входа для подключения компьютеров и камер, а также 2 разъёма 3,5 мм для микрофонов. HDMI-выход позволяет подключить карту захвата и монитор, а управлять ATEM Mini можно с компьютера через USB-C. Порт USB-C работает и как выход веб-камеры, так что вы можете стримить видеопоток напрямую в OBS Studio или подобное приложение. ATEM Mini выводит видео вплоть до 1080p60, но не 4K, что, впрочем, не будет проблемой для большинства стримеров.

порты подключения ATEM mini

Чтобы подчеркнуть важность устройства в стримерском процессе, кабель питания оснастили штекером с винтовым креплением, так что случайно выдернуть его не получится. Также через разъём Ethernet доступно дистанционное управление.

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

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

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

Кнопок на микшере немало, однако для реализации всего потенциала ATEM Mini необходимо установить приложение ATEM Software Control. Оно позволяет настроить под себя режим «картинка в картинке», кеинг и звук.

софт для нескольких камер на трансляции

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

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

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

Подготовка

Отдельного упоминания в ATEM Mini достойна универсальность видеовходов. Вы можете подключить камеру с видео 1080p/30 к/с, ещё одну с 720p/50 к/с и ноутбук с 1080p/60 к/с. Благодаря встроенным транскодерам, изображение на выходе можно получить в максимальном качестве (в данном случае 1080p/60 к/с). При необходимости ATEM Mini справится даже с источником 10-битного видео.

Для своего эксперимента я подключал в первый канал камеру Panasonic GH5s, во второй Sony RX100 IV, в третий игровой ноутбук и рабочий ноутбук в четвёртый. Затем я воткнул выходной кабель USB-C в рабочий ноутбук, куда я записывал поток через OBS Studio. Это же приложение позволяет запускать прямую трансляцию в прямом эфире на YouTube или Twitch.

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

Рабочий процесс

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

Базовые переходы производятся схожим образом: выбираете нужное вытеснение или растворение, нажимаете кнопку Auto и переключаетесь на другой источник. После этого видео с камеры сменится экраном игры или чем-то ещё. «Картинка в картинке» настраивается аналогично, так что вы легко сможете поместить изображение с камеры в угол экрана на фоне игры.

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

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

Учитывая цену ATEM Mini, я был по-настоящему впечатлён возможностями работы со звуком. Вы можете настраивать громкость каждого из шести потоков (четыре HDMI и два микрофона без фантомного питания) как на самом микшере, так и программно. Это само по себе уже очень удобно, когда нужно отрегулировать свой голос на фоне музыки и звуков игры, к примеру.

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

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

альтернатива видеопульту roland v-1hd

Заключение

За свои $295 Blackmagic ATEM Mini, по большому счёту, вне конкуренции.

  • Ближайшим соперником будет, наверное, Elgato Stream Deck XL за $250, однако, у него нет такого количества входов и функционал работы со звуком поскромнее;
  • Roland V-1HD схож по возможностям, но и стоит $1000.

В целом, на данный момент ATEM Mini – самый доступный видеомикшер с четырьмя входами.

Учитывая, что устройство берёт на себя всю обработку и кеинг, не нагружая этим компьютер, даже без использования нескольких камер оно стоит своих денег. ATEM Mini работает и как видеоконвертер, и как аудиомикшер, и как HDMI-адаптер для веб-камеры. Если хотите идеально выглядеть в Skype, подключайте к микшеру свою беззеркалку, соединяйте его с ноутбуком и готово.

ATEM Mini не назовёшь бескомпромиссным видеокомбайном, хотя бы из-за отсутствия четырёхсекционного предпросмотра и фантомного питания для микрофонов, но для поднятия качества стримов на Twitch и YouTube это очень и очень привлекательное предложение.

Prev

Плата Black Magic Probe Mini V2.1 (BMPM2) разработана 1BitSquared в сотрудничестве с Black Sphere Technologies, является адаптером JTAG и SWD, предназначена для программирования и отладки микроконтроллеров ARM Cortex-M и ARM Cortex-A. Можно добавить поддержку других процессоров. Описание процесса добавления можно найти по ссылке. Стоит также отметить, что любой процессор с поддержкой ADIv5 (ARM Debug Interface v5) будет определяться платой.

На рисунках приведены процессоры семейств ARM Cortex-M и ARM Cortex-A, поддерживаемые платой Black Magic Probe Mini V2.1.

Процессоры семейства Cortex-M, поддерживаемые платой Black Magic Probe Mini V2.1

Процессоры семейства Cortex-A, поддерживаемые платой Black Magic Probe Mini V2.1

В процессе тестирования Black Magic Probe было выявлено, что поддерживаемые процессоры не ограничиваются списком, предоставленным производителем. Официально не поддерживаемые процессоры с ARM Debug Interface v5 определяются, например, как "Cortex-M0" или “Cortex-A7”. При этом, не гарантируется полная функциональность, но все же произвести минимальные действия по отладке получится.

Что можно делать с использованием платы Black Magic Probe:

  • прерывать процесс исполнения программы;
  • наблюдать за изменениями регистров и переменных;
  • устанавливать точки останова (можно установить точку останова в коде, которая заставит программу остановиться, как только эта точка будет достигнута);
  • просматривать стек вызовов (список функций и их параметров, которые привели нас к текущей точке и состоянию программы);
  • дизассемблирование (возможность просмотреть машинный код и узнать, что именно делает программа);
  • дамп памяти (сохранение ОЗУ и/или флэш-контента в файл).

Функции Black Magic Probe, которые могут быть полезны при исследовании информационной безопасности устройств:

  • разработка встроенного программного обеспечения и устройств для проведения атак;
  • реверс-инжиниринг IoT;
  • поиск уязвимостей;
  • динамический анализ с помощью IDA и других инструментов, совместимых с серверами gdb.

BMPM2 обладает двумя основными особенностями. Первая заключается в том, что на самом устройстве запускается gdbсервер, открывающий виртуальный порт, к которому можно напрямую подключиться через клиент gdb на своем хост-компьютере (рекомендуется набор инструментов gcc-arm-embedded), поэтому не нужно настраивать конфигурации OpenOCD или STLink. Сравнение схем подключения отладочного интерфейса при помощи OpenOCD/STLink и BMPM2 можно увидеть ниже. Как видно, вариант с подключением через BMPM2 проще.

Сравнение алгоритмов работы при отладке без платы Black Magic Probe Mini V2.1 и с ней

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

Для изучения возможностей работы были взяты четыре платы: TM32F103C8, STM32vldiscovery, STM32F429I-disc1 и предлагаемая разработчиками 1Bitsy V1.0.

Более подробно будет рассмотрена работа с 1Bitsy и STM32F429I-disc1. Первая была выбрана по рекомендации самих разработчиков, а у второй есть сенсорный экран, что делает процесс исследования более наглядным.

Познаем мир отладки с Black Magic Probe

Изучение работы Black Magic Probe V2.1 удобно начать с отладки 1Bitsy. Эта плата была создана специально для работы с BMPM2, поэтому не должно возникнуть никаких затруднений.
Соединим Black Magic Probe и 1Bitsy между собой кабелем JTAG и подключим их к компьютеру.
Ниже будет описана работа в среде GNU/Linux, руководство по работе в ОС Windows и MacOS легко найти по ссылке.

После подключения BMPM2 к ПК и к разъему JTAG, на 1Bitsy выполним три команды в gdb для начала отладки. Важно, чтобы пользователь был добавлен в группу dialout командой "sudo adduser $USER dialout", иначе ничего не заработает. Первой командой “target extended-remote /dev/ttyACMx” подключаемся к BMPM2, где x — номер серийного порта, далее сканируем все подключенные к Black Magic Probe устройства с помощью команды “monitor jtag_scan”. Если все хорошо, то будет выведен список найденных устройств и командой “attach 1” мы подключимся к 1Bitsy.

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

В наличии была плата на основе микроконтроллера STM32 — STM32F429I-disc1, ей и воспользуемся, заодно зальем на нее какую-нибудь интересную прошивку. Главным отличием в работе с этой платой от работы с 1Bitsy является соединение по интерфейсу SWD, а не JTAG.

Перед началом работы соединяем платы через JTAG/SWD адаптер по следующей схеме:
на интерфейсе SWD (если считать с крайнего сверху выхода):

STM32F429I-disc1 и Black Magic Probe

Для демонстрации работоспособности процесса отладки была использована прошивка, содержащая несколько программных модулей. Один из них — игра Reversi, её будет отлаживать интереснее всего.

Заливаем прошивку на плату и в gdb вводим почти те же команды, что и для 1Bitsy, с той лишь разницей, что плата подключена по SWD, поэтому потребуется использовать команду swdp_scan.

К огромной печали, нам ни разу не удалось выиграть, поэтому захотелось что-нибудь в ней поломать. Для начала, мы посмотрели исходники. В них была найдена переменная Board, предположительно, обозначающая адрес первой ячейки доски. Рядом есть строки "Reversi — Player 1" и "Reversi — Player 2".

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

Далее, решили воспользоваться gdb для того, чтобы посмотреть, что находится по этому адресу.

Вывод GDB

Начало игры

Все верно. Если внимательно изучить данную таблицу и расположение фишек в начале игры, то можно заметить, что 001 означает красную фишку, а 002 — синюю. Можно попробовать изменить значение одной из ячеек. Для этого мы воспользовались командой:

set *(char *) 0x2002CAF4 = 1

Вывод GDB

Состояние ячеек после ввода команды

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

Результат выполнения скрипта:

Результат выполнения скрипта

Состояние ячеек после выполнения скрипта

Скрипт успешно отработал, нам удалось победить в игре, а это значит, что с помощью платы Black Magic Probe Mini V2.1 через gdb можно успешно отлаживать и "ломать" прошивки.
А теперь немного скучных примеров с моргающими лампочками.

STM32F103C8

Плату STM32F103C8 подсоединим к Black Magic Probe V2.1 через интерфейс JTAG.

Интерфейс JTAG

Исходники для прошивки платы можно взять тут.

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

STM32vldiscovery

Плату STM32vldiscovery подсоединим к Black Magic Probe V2.1 через интерфейс SWD, а именно:

  1. 3V3 — tVref
  2. PA13 — SWDIO
  3. PA14 — SWCLK
  4. GND — GND

Исходники для прошивки платы можно взять тут.

Здесь все аналогично предыдущей плате, также меняем интервалы времени в исходниках и смотрим на лампочку.

Выводы

Плата Black Magic Probe Mini V2.1 — простая в использовании и имеет набор инструментов и библиотек с открытым исходным кодом, это является ее основными плюсами.
Минусом платы является отсутствие поддержки архитектуры процессоров arm64 и процессоров Texas Instruments.

Читайте также: