Raspberry Pi 3B+ 藍牙連接八位堂8Bitdo ZERO游戲手柄

原文地址

先上兩張照片

八位堂出品的ZERO游戲手柄,只有一個鑰匙扣大小,攜帶非常方便,顏值也是非常高


8Bitdo.jpg

樹莓派3B+,內置藍牙模塊單元,卡片式電腦


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庫測試與開發(fā)樹莓派與游戲手柄之間的藍牙通信

安裝python開發(fā)環(huán)境以及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

運行測試程序,根據(jù)提示選擇自己的設備,然后按下不同的按鍵,查看輸出,然后可以根據(jù)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
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容