2016-06-09 131 views
0

由於藍牙2.0我無法使用簡單配對模式(僅適用於藍牙2.1+),因此我在USB端口中配備了藍牙2.0加密狗的Raspberry Pi Zero。我想將我的電腦與Raspberry Pi配對,但計算機要求我輸入PIN碼,而我不想與Raspberry進行交互。與Raspberry Pi Zero配對使用藍牙2.0加密狗無頭

由於簡單配對模式不可用我想過使用一個固定的PIN(如0000),以便當計算機要求輸入PIN碼時,我可以輸入0000,它將配對設備。但是,我還沒有找到設置固定PIN的方法。

我在互聯網上搜索過,但我只能找到藍牙2.1+或使用Bluez4(我使用Bluez 5.23-2 + rpi2)的解決方案。

我嘗試下載simple-agent編輯RequestPinCode返回「0000」因爲我讀的地方,它的工作,但後來我與運行代碼:

python agent.py

我得到一個錯誤:

Illegal instruction

我也試圖與:

sudo python agent.py

在這種情況下,我不會收到任何錯誤,我不會得到任何輸出,程序就存在。

我不確定簡單代理的工作原理,但我很確定它應該等待一個無限循環。

我不知道我在做什麼錯。我只需要爲Raspberry PI設置一個固定的PIN(0000),以便每當新設備想通過藍牙連接到Raspberry PI時就可以引入該PIN。只要它有效,我並不在意它是如何完成的。

更新#1:我已經試過了答案this question所以我想我被執行腳本錯誤的方式,所以我想這:

./simple-agent -c NoInputNoOutput

就像回答說,但它給錯誤:

sudo ./simple-agent -c NoInputNoOutput

-bash: ./simple-agent: Permission denied

我試過

但隨後說:

sudo: ./simple-agent: command not found

更新#2:給予執行權限簡單的代理文件,現在我得到這個錯誤後:

-bash: ./simple-agent: /usr/bin/python^M: bad interpreter: No such file or directory
其實,^ M字符只是一個Windows角色,我跑了dos2unix,現在該文件應該沒有怪異的字符,我再次測試它,即使給它執行權限後,它也會給我和以前一樣的錯誤(非法指令)。

+0

該[問題](http://stackoverflow.com/questions/30233442/automate-bluetooth-pairing-trusting-in-bluez5)是簡單的配對,這是不相關的你。相反,您需要修改'simple-agent'中的'RequestPasskey'函數。不能運行'simple-agent'的問題似乎是一個不同的問題。你檢查文件的權限? – kaylum

+0

我給它執行權限,但現在它給了我這個錯誤:'-bash:./simple-agent:/ usr/bin/python^M:糟糕的解釋器:沒有這樣的文件或目錄',我檢查和Python存在目錄/ usr/bin,而且,simple-agent文件包含第一個文件'#!/ usr/bin/python',但是沒有任何^ M,我不確定是否有任何奇怪的字符或什麼的,我使用nano在樹莓派中直接編輯文件。 – raulsntos

+0

我的不好,顯然^ M字符是Windows新行字符的一部分,我運行dos2unix刪除所有這些字符,現在文件再次發出錯誤「非法指令」。 – raulsntos

回答

0

我決定單獨詢問有關Illegal instruction問題在計算器上:

Python Illegal instruction on Raspberry Pi Zero

所以我解決了這個錯誤,它是由這樣我重新安裝了一切與apt-get被編譯爲一個不同的體系結構,安裝的軟件包造成現在腳本起作用了。

接下來要做的是確保我可以將設備與PIN 0000配對,這是我創建此問題的主要原因。所以我跑了腳本,然後我試圖將它與我的電腦配對,它要求輸入PIN碼,我引入了0000並且它工作正常!

相關問題