Raspberry Pi 3B+ 蓝牙连接八位堂8Bitdo ZERO游戏手柄

原文地址

先上两张照片

八位堂出品的ZERO游戏手柄,只有一个钥匙扣大小,携带非常方便,颜值也是非常高


Raspberry Pi 3B+ 蓝牙连接八位堂8Bitdo ZERO游戏手柄_第1张图片
8Bitdo.jpg

树莓派3B+,内置蓝牙模块单元,卡片式电脑


Raspberry Pi 3B+ 蓝牙连接八位堂8Bitdo ZERO游戏手柄_第2张图片
Raspberry pi 3B+.jpg

1. 更新树莓派软件列表和软件

$sudo apt-get update && apt-get upgrade -y

2. 树莓派蓝牙连接

(也可以从桌面软件打开,此处不在介绍,有关此命令的详细使用方法,也请自行搜索)
在Raspbian中,基本的蓝牙操作可以通过bluez中的bluetoothctl命令进行。该命令运行后,将进入到一个新的Shell,可以看到,命令提示符由$变成了#:

$sudo bluetoothctl

查看命令帮助信息

#help

显示树莓派上可用的蓝牙模块

#list

打开power

#power on
Changing power on succeed

设置agent

#agent on
Agent registered

设置default agent

#default-agent
Default agent request successful

开始扫描

#scan on
Discovery started

当查看到自己要配对的蓝牙设备后,停止扫描

#scan off
Discovery stopped

蓝牙配对(换成自己的蓝牙设备地址Mac)

#pair XX:XX:XX:XX:XX:XX
Pairing successful

连接蓝牙(换成自己的蓝牙设备地址Mac)

#connect XX:XX:XX:XX:XX:XX
Connection successful  

退出蓝牙配置shell

#quit
Agent unregistrted

3. 验证RPi和手柄之间的通信

$ls /dev/input
event0 js0 mice

输入一下命令(X填写自己设备的实际值),按下手柄上的任意一个按钮,此时界面上应该跟随自己的按键输出一些乱码,先不管它,Ctrl+C退出。

$cat /dev/input/eventX

4.使用EVDEV库测试与开发树莓派与游戏手柄之间的蓝牙通信

安装python开发环境以及evdev库

$sudo apt-get install python-dev

$sudo apt-get install python-pip

$sudo pip install evdev
Installing collected packages: evdev
Successfully installed evdev-1.1.2

运行测试程序,根据提示选择自己的设备,然后按下不同的按键,查看输出,然后可以根据time、type、code、value值解析出对应的按键和对应的动作,so easy,马上用你的小手柄去控制其它的外部设备吧,Enjoy it!

$python /usr/local/lib/python2.7/dist-packages/evdev/evtest.py
time 1552112983.06    --------- SYN_REPORT --------
time 1552112983.2     type 3 (EV_ABS), code 1    (ABS_Y), value 127
time 1552112983.2     --------- SYN_REPORT --------
time 1552112983.35    type 3 (EV_ABS), code 1    (ABS_Y), value 0
time 1552112983.35    --------- SYN_REPORT --------
time 1552112983.44    type 3 (EV_ABS), code 1    (ABS_Y), value 127
time 1552112983.44    --------- SYN_REPORT --------
time 1552112983.59    type 3 (EV_ABS), code 1    (ABS_Y), value 0
time 1552112983.59    --------- SYN_REPORT --------
time 1552112983.65    type 3 (EV_ABS), code 1    (ABS_Y), value 127
time 1552112983.65    --------- SYN_REPORT --------
time 1552112983.96    type 3 (EV_ABS), code 1    (ABS_Y), value 255
time 1552112983.96    --------- SYN_REPORT --------
time 1552112984.07    type 3 (EV_ABS), code 1    (ABS_Y), value 127

你可能感兴趣的:(Raspberry Pi 3B+ 蓝牙连接八位堂8Bitdo ZERO游戏手柄)