I fear that there is no usb hid library, yet. Do anyone know good alternatives, which can be used together with ruby (e.g. jruby)?
问问题
1242 次
3 回答
0
libusb 库的 ruby 包装器不符合要求吗?
此外,这篇博文:Working ruby HID listener example有一些与 USB 接口的代码示例
于 2012-10-08T19:18:51.593 回答
0
如果您准备坚持使用 JRuby,您可以尝试包装javahidapi。它使用 JNI 执行对HIDAPI库的调用。
于 2012-10-10T12:02:40.587 回答
0
我知道这是一个老问题,但我写了一个 gem 用于在 Linux 上读取 Ruby 中的 HID 控制器(它直接与 Linux 内核驱动程序一起工作)。
https://rubygems.org/gems/ruby_hid
它现在也是相当实验性的,但它确实有效。
使用它,您可以在按钮或控制轴上设置观察者,它们在单独的线程上运行,由start_listening
. 这可以在共享对象中设置一个值,您可以在代码中使用该值。
这是示例之一,它仅报告按钮按下:
require 'rubygems'
require 'ruby_hid'
device = RubyHid::Device.new(
RubyHid::Device.list[0]
)
buttons = RubyHid::Button::EVENTS
buttons.each do |code, name|
button = RubyHid::Button.find_by_name(name)
button.add_event(
eval "lambda { |val| puts \"#{name} pushed: \#{val}\" }"
)
end
device.start_watching
loop do
sleep 1
end
于 2016-03-24T18:27:41.683 回答