Top.Mail.Ru
Уведомления
Очистить все

Custom HID прошивка для платы STM32F411CEU6

(@ivanmnstr)
Level 1

Добрый день обитатели форума, я новенький в этом деле, поэтому нужна помощь.

Приобрел плату STM32F411CEU6, суть в том чтобы сделать в ней кастомный HID интерфейс и по сути она стала мышкой для системы (подключение через родной Type-C к Type-A компа). Управляться она должна посредством IN репортов которые будут отсылаться из Python скрипта посредством hidapi. В моем примере передаю 2 байта с dx и dy.

На данный момент Windows определяет как HID устройство, в скрипте питона отсылаются оффсеты, но курсор не передвигается и получаю ошибку. Так как ST-Link у меня нет, то не могу задебажить. Буду очень благодарен за помощь, так же при успешном фиксе готов отблагодарить =)

Прикрепил архивы с фолдерами и .ioc проекта.

 

Цитата
Создатель темы Размещено : 17.01.2025 18:35
Aveal
(@aveal)
Top level Admin

Добрый день!

Хмм, интересная связка 🤔 Я правильно понял - скрипт шлет команду на STM32, STM32 отдает в систему новое положение мыши? А если из скрипта напрямую перемещать курсор, без прослойки?

ОтветитьЦитата
Размещено : 17.01.2025 18:49
(@ivanmnstr)
Level 1

@aveal Да, все верно. Грубо говоря простым языком - вместо использования win32api для программного перемещения мыши в рамках моей задачи нужно использовать нашу плату и стучаться к ней через hidapi или любую другую библиотеку для hid подключения к устройству и общением командами. Сама плата только в роли слушателя (но для ПК - физическая мышь) и при поступлении команды выдергивает оттуда оффсеты перемещения курсора и применяет их. 
В коде я все реализовал, но проблема в том что не могу понять почему мои команды не исполняются и после запуска скрипта в лучшем случае пару комманд отправит и потом рушится с ошибкой.

ОтветитьЦитата
Создатель темы Размещено : 17.01.2025 18:56
Aveal
(@aveal)
Top level Admin

@ivanmnstr блин, сообщение пропустил...

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

ОтветитьЦитата
Размещено : 20.01.2025 14:41
(@ivanmnstr)
Level 1

@aveal Я уже сам смог сделать, все работает отлично) Полное управление мышкой на всех 1000гц

ОтветитьЦитата
Создатель темы Размещено : 20.01.2025 20:58
Aveal
(@aveal)
Top level Admin

@ivanmnstr Отлично! 😊 👍

ОтветитьЦитата
Размещено : 20.01.2025 21:12
Поделиться: