我正在研究一个小的Arduino项目,为我的Ubuntu盒子创建一个蓝牙N64操纵杆.
我设法找到一个草图,通过串行输出控制器状态,它工作得很好.还发送TX和RX到小CSR蓝牙模块我工作正常.
当我与设备配对时,我必须使用“rfcomm bind”来查看我的dev目录中的设备,并且’cat’ing输出显示所有数据也将通过.
我的问题是,我的下一步是让Linux将这个设备识别为操纵杆 – 即/ dev / js0.如果我知道我需要做些什么来实现这一点,我可以阅读必要的步骤,但目前我完全不知道从哪里开始 – 过去没有做过这样的事情.我应该考虑创建内核模块吗?
任何正确方向的信息或捅都会非常感激 – 即使它只是一个观察.
解决方法:
编写自定义内核代码绝对不是这里的方法.
为了使您的项目在Linux中显示为操纵杆设备,您需要使用Bluetooth HID profile来呈现它.有了这一点,一切都应该在客户端“正常工作”,您将在/ dev中看到一个条目. HID配置文件非常全面,并且被大多数蓝牙接口设备使用 – 键盘,鼠标,游戏控制器等.蓝牙部分实际上只是围绕USB HID协议的薄包装.
根据您的设备目前没有使用该配置文件宣传自己的声音.