我有一个RFID USB设备,注册为HID设备(A USB键盘或多或少).

我正在寻找一种方法来捕获此输入,并在它碰到普通键盘事件处理程序(并将10位数的RFID代码输出到控制台)之前对其进行阻塞/过滤.

我当然必须专门捕获这个设备,并且将真正的键盘输入单独留下(或传递给它).

我最初的想法是在UDEV中阻止设备(所以usbhid / event / kbd内核模块没有绑定到它),并为这个设备编写自己的基本驱动程序 – 但是我不知道从哪里开始,甚至会工作

什么是伟大的(我不知道这样的事情可以做到) – 是如果我写一个事件过滤器模块,可以与事件驱动程序保持一致,并捕获(然后过滤)适当的输入从RFID单元,但让其他一切通过.我想象这样一个模块不需要太多的代码,这将是最实际的.

帮帮我?

[编辑:我应该补充说,Xorg没有安装 – 仅控制台]

cat /proc/bus/input:

I: Bus=0003 Vendor=0419 Product=0912 Version=0100

N: Name="NewRoad Sem. NewRoad System PS2 Interface"

P: Phys=usb-0000:00:1d.3-2/input0

S: Sysfs=/devices/pci0000:00/0000:00:1d.3/usb5/5-2/5-2:1.0/input/input20

U: Uniq=

H: Handlers=sysrq kbd mouse0 event3

B: PROP=0

B: EV=120017

B: KEY=70000 0 0 e080ffdf01cfffff fffffffffffffffe

B: REL=103

B: MSC=10

B: LED=1f

更多信息:

lsusb -d 0419:0912 -v

Bus 005 Device 019: ID 0419:0912 Samsung Info. Systems America, Inc.

Device Descriptor:

bLength 18

bDescriptorType 1

bcdUSB 1.00

bDeviceClass 0 (Defined at Interface level)

bDeviceSubClass 0

bDeviceProtocol 0

bMaxPacketSize0 8

idVendor 0x0419 Samsung Info. Systems America, Inc.

idProduct 0x0912

bcdDevice 0.01

iManufacturer 1 NewRoad Sem.

iProduct 2 NewRoad System PS2 Interface

iSerial 0

bNumConfigurations 1

Configuration Descriptor:

bLength 9

bDescriptorType 2

wTotalLength 34

bNumInterfaces 1

bConfigurationValue 1

iConfiguration 4

bmAttributes 0xa0

(Bus Powered)

Remote Wakeup

MaxPower 100mA

Interface Descriptor:

bLength 9

bDescriptorType 4

bInterfaceNumber 0

bAlternateSetting 0

bNumEndpoints 1

bInterfaceClass 3 Human Interface Device

bInterfaceSubClass 1 Boot Interface Subclass

bInterfaceProtocol 1 Keyboard

iInterface 5

HID Device Descriptor:

bLength 9

bDescriptorType 33

bcdHID 1.00

bCountryCode 0 Not supported

bNumDescriptors 1

bDescriptorType 34 Report

wDescriptorLength 119

Report Descriptors:

** UNAVAILABLE **

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x81 EP 1 IN

bmAttributes 3

Transfer Type Interrupt

Synch Type None

Usage Type Data

wMaxPacketSize 0x0008 1x 8 bytes

bInterval 10

Device Status: 0x0000

(Bus Powered)

linux 键盘过滤,linux – 需要拦截HID Keyboard事件(然后阻止它们)相关推荐

  1. linux 键盘过滤,键盘过滤驱动程序不responsing

    我写了一个简单的键盘过滤驱动程序(MyKbdFilter),其注册注册表,并添加到HLM \系统\ CurrentControlSet \控制\ {类4D36E96B-E325-11CE-BFC1-0 ...

  2. linux键盘修复,linux和macos_如何在macOS和Linux上修复Corsair鼠标和键盘问题

    linux和macos_如何在macOS和Linux上修复Corsair鼠标和键盘问题 linux和macos_如何在macOS和Linux上修复Corsair鼠标和键盘问题 linux和macos ...

  3. linux键盘模拟程序,linux下模拟键盘的几种方法

    1.使用GTK中的GdkEvent GdkEvent *event; event = gdk_event_new (GDK_KEY_PRESS);              //按键按下 event- ...

  4. linux 键盘记录,Linux键盘记录sh2log keylogger notes

    make linux make freebsd make openbsd make cygwin make sunos make irix make hpux make aix make osf 如下 ...

  5. linux 键盘 数值,键盘数值对照表

    键盘数值对照表 按键 数值 描述 DOM_VK_CANCEL 3 Cancel key DOM_VK_HELP 6 Help key DOM_VK_BACK_SPACE 8 退格键 DOM_VK_TA ...

  6. Java中使用JNA实现全局监听Linux键盘事件

    title: Java中使用JNA实现全局监听Linux键盘事件 date: 2019-05-03 19:08:00 Java中使用JNA实现全局监听Linux键盘事件 用JNA实现的键盘监听,在Wi ...

  7. 在Linux 2.6环境下读写HID设备(USB Key)

    Linux 2.6内核中包含了HID驱动,能够自动把USB Key等HID外设识别成"/dev/hiddev0"之类的设备.但是该驱动没有实现write接口,因此无法象Window ...

  8. 过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件

    过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件 find ./ -type f -size +1G| xargs rm 在清理系统日志文件 ...

  9. linux open dev/tty0 receive_buf,书写基于内核的linux键盘纪录器(p9-0e)(3)

    书写基于内核的linux键盘纪录器(p9-0e)(3) 2008-04-09 04:00:06来源:互联网 阅读 () 底层tty驱动调用receive_buf()这个函数用来发送硬件设备接收处理的字 ...

最新文章

  1. html5虚线绘制的函数,HTML5 Canvas绘制圆点虚线实例
  2. 成功解决VS编译环境下C++语言出现的异常提示:烫烫烫烫烫烫烫烫烫烫
  3. 2020 我的C++的学习之路 第八章函数
  4. Python字符串逐字符或逐词反转方法
  5. ubuntu16.04 nginx安装
  6. java web 之间通信,【Java】Web发展中通信的方式有哪些呢?
  7. python -m xxx.py和python xxx.py的区别
  8. python pdb调试基本命令整理
  9. 初学Phreeze 3
  10. 推荐模块︱apple.Turicreate个性化推荐recommender(五)
  11. 如何解决电脑触控板不能使用的问题 (双指上下滑动翻页)
  12. Newtonsoft动态解析Json数据
  13. t-SNE可视化-Python实现
  14. 商务统计分析(第3章 数据描述)
  15. SAP PO750 Process Orchestration 安装及初始化(刘欣)
  16. 在SQL server 2008 R2进行数据查询操作时提示 “对象名无效”的问题
  17. 网吧登陆steam启动gta5一直启动不了
  18. 【算法-1】输出网格图形
  19. redis查看某一个key的大小_redis查询key的内存大小
  20. WDF开发USB设备驱动教程(1)

热门文章

  1. 质数——python代码赏析
  2. Matplotlib - 箱线图、箱型图 boxplot () 所有用法详解
  3. react 遍历对象_React 源码系列 | React Children 详解
  4. 史上最全阿里Java面试题目大汇总!强烈建议收藏~
  5. 论文浅尝 | 用增强学习进行推理:问答与知识库完善(KBC)
  6. Linux-Centos 安装Anaconda(2021)
  7. 配置opencv cmake
  8. excel保存超过15位数据不变科学计数法的方法
  9. linux提权辅助工具(二):linux-exploit-suggester-2.pl
  10. QMap与QHash