Рубрика «HID»

Разбираемся с Bluetooth Low Energy на примере превращения USB-клавиатуры в беспроводную - 1

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

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

Не имея навыков пайки, вы сможете создать полезное Bluetooth-устройство, а ваше понимание Bluetooth и Linux уже не будет прежним, если вы, конечно, не являетесь экспертом в этих областях.

Данная статья ставит целью на примере разработки собственной Bluetooth-клавиатуры помочь разобраться в базовых понятиях Bluetooth, так как чтение скучных спецификаций и статей с введением в технологию даёт мало пользы.Читать полностью »

STM32 Modular USB Composite device - 1

Проект является логическим продолжением другого проекта на Хабре - CDC+MSC USB Composite Device на STM32 HAL и рассказыват как на STM32 создать проект с несколькими USB устройствами, с читаемой структурой и используя типовые модули. Конкретно рассмотрен пример комбинации HID + CDC UART + CDC, а также рассказано как этот проект возможно расширить другими интерфейсами.

Мотивация

Читать полностью »

Речь в данной статье пойдет про проектирование оборудования, которое упрощает работу за компьютером. Предыстория моего небольшого проекта связана, совершенно неожиданно, со спектрумами, apple 2 и прочей ретрокомпьютерной техникой. Есть увлечение такое — ковыряться во всяком старье. Плюс делать это в прямом эфире на YouTube. Коллективный разум помогает чинить. После одного из стримов обратился подписчик с весьма необычной просьбой. Зовут его Александр и у него ДЦП. Соответственно, ему трудно работать на компьютере. А желание работать имеется, что не может не радовать.

Читать полностью »

Реверс-инжениринг протокола китайского USB ИК трансивера - 1
Попался мне китайский MicroUSB ИК трансивер, и возникло желание подключить его к компу с Windows. Трансивер представляет собой весьма компактный девайс с разъемом Micro USB. Единственный «официальный» вариант работы с ним — через Android приложение под названием ZaZaRemote.

При подключении к компу через переходник девайс определился как HID-совместимое устройство USBVID_10C4&PID_8468. Гугление по этому ID не дало никаких результатов, и пришлось заняться реверсингом протокола.
Читать полностью »

image

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

Вместо вступления

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

Как подключить кучу старого RS232 оборудования по USB без регистрации и sms (STM32 + USB-HID) - 1
Читать полностью »

Без Стива Джобса Apple стала часто идти на компромиссы. И вот что случается, когда из компании уходит человек, который способен говорить «Нет» не до конца проработанным решениям:

Гайдлайны Apple для iOS-приложений устарели - 1

Но сегодня я хочу обратить внимание на UI/UX проблему iPhone 6 и 6 Plus, которая существует уже более 2-х лет и которую большинство UI/UX дизайнеров игнорируют.
Читать полностью »

Подключаем авиамодельный пульт к компьютеру с помощью STM32 CubeMX, или PPM-to-USB адаптер на STM32F3-Discovery - 1

В этой статье я расскажу, как:

  • Создать проект в STM32CubeMX и настроить таймеры для захвата внешних сигналов.
  • Декодировать PPM-сигнал с авиамодельного пульта.
  • Сделать Human Interface Device на STM32 и написать свой HID Report Descriptor.
  • Полетать в симуляторе на гоночном квадрокоптере. :)

Читать полностью »

Только что пришла мне в голову мысль — можно ли подключить ноутбук по Bluetooth к телефону/планшету/etc, чтобы можно было печатать текст на компьютере, а передавались нажатия клавиш на мобильное устройство.

Оказывается, это уже реализовано в виде готовой программы, которую получилось достаточно быстро нагуглить по запросу linux emulate bluetooth mouse.

Называется она hidclient. Работает на Linux-компьютерах с Bluetooth.

Теоретически, передавать таким образом события с клавиатуры или мышки можно на любое устройство, которое поддерживает подключение HID-устройств по Bluetooth. На практике я попробовал это с iPod — прекрасно работает.
Читать полностью »

Иллюстрированная проекция модели сетевого взаимодействия OSI на универсальную последовательную шину.

Три «замечательных» уровня стека USB

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

Не сильно полезный стек USB

Разбираем и собираем обратно стек USB

Уровень шины, логический, функциональный… Это, конечно, замечательные абстракции, но они скорее для тех, кто собирается делать драйвер или прикладной софт для хоста. На стороне же микроконтроллера я ожидаю шаблонный конечный автомат, в узлы которого мы обычно встраиваем свой полезный код, и он сперва будет по всем законам жанра глючить. Или же глючить будет софт на хосте. Или драйвер. В любом случае кто-то будет глючить. В библиотеках МК тоже с наскока не разобраться. И вот я смотрю на трафик по шине USB анализатором, где происходящие события на незнакомом языке с тремя замечательными уровнями вообще не вяжутся. Интересно, это у меня от гриппозной лихорадки в голове такой диссонанс?

Если у читателя бывали сходные ощущения, предлагаю альтернативное, явившееся мне неожиданно ясно в перегретом мозгу видение стека USB, по мотивам любимой 7-уровневой модели OSI. Я ограничился пятью уровнями:

Разбираем и собираем обратно стек USB

Я не хочу сказать, что весь софт и библиотеки уже сделаны или должны проектироваться, исходя из этой модели. Из инженерных соображений код c уровнями будет сильно перемешан. Но я хочу помочь тем, кто начинает своё знакомство с шиной USB, кто хочет понять протоколы обмена устройств и терминологию предметной области, подобраться поближе к готовым примерам, библиотекам и лучше ориентироваться в них. Эта модель не для загрузки в МК, но в ваши блестящие умы, дорогие друзья. А ваши золотые руки потом всё сами сделают, я не сомневаюсь:)
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js