如何在Android手機(jī)上使用BleuIO USB加密狗作為串行通信設(shè)備
掃描二維碼
隨時(shí)隨地手機(jī)看文章
本項(xiàng)目演示了如何通過(guò)OTG (on - go) USB在Android設(shè)備上使用BleuIO USB加密狗作為串行端口。使用電容器6和@adeunis/電容器-串行插件,我們建立串行連接,發(fā)送AT命令,并實(shí)時(shí)讀取響應(yīng)。該項(xiàng)目適用于BleuIO和BleuIO Pro。
本教程提供了在Android上設(shè)置與BleuIO串行通信的分步指南。該項(xiàng)目通過(guò)串口連接到BleuIO,發(fā)送基本的ATI命令,并在屏幕上顯示接收到的響應(yīng)。本示例可作為創(chuàng)建、測(cè)試和調(diào)試藍(lán)牙低功耗(BLE)應(yīng)用程序的起點(diǎn)。它可以擴(kuò)展以支持基于特定需求的其他命令和功能。完整的源代碼可用于定制和進(jìn)一步開(kāi)發(fā)。
用例
BleuIO USB加密狗可用于各種需要在Android上進(jìn)行串行通信的應(yīng)用程序。最常見(jiàn)的應(yīng)用之一是低功耗藍(lán)牙(BLE)開(kāi)發(fā),開(kāi)發(fā)人員需要通過(guò)發(fā)送和接收AT命令來(lái)配置和測(cè)試BLE模塊。本項(xiàng)目允許移動(dòng)調(diào)試和實(shí)時(shí)配置BLE設(shè)備,而無(wú)需PC機(jī)。
此外,這種設(shè)置對(duì)于物聯(lián)網(wǎng)和嵌入式系統(tǒng)很有價(jià)值,其中設(shè)備通過(guò)串行連接進(jìn)行通信。使用Android手機(jī)作為串行終端,工程師和開(kāi)發(fā)人員可以在現(xiàn)場(chǎng)測(cè)試、監(jiān)控和調(diào)試硬件組件,而不需要筆記本電腦。另一個(gè)重要的用例是usb到串行調(diào)試,嵌入式系統(tǒng)工程師需要使用OTG直接從Android設(shè)備發(fā)送命令和接收日志。
對(duì)于那些使用傳感器模塊、微控制器或定制嵌入式系統(tǒng)的人來(lái)說(shuō),該項(xiàng)目簡(jiǎn)化了直接從移動(dòng)設(shè)備發(fā)送命令和讀取響應(yīng)的過(guò)程。對(duì)于開(kāi)發(fā)需要通過(guò)Capacitor進(jìn)行串行通信的Android應(yīng)用程序,它也是一個(gè)很好的起點(diǎn)。
我們?yōu)槭裁葱枰@個(gè)?
Android設(shè)備本身不支持USB-to-serial通信。與內(nèi)置串行驅(qū)動(dòng)程序和終端軟件的計(jì)算機(jī)不同,Android不提供通過(guò)USB與串行設(shè)備通信的直接方式。這使得開(kāi)發(fā)人員,工程師和嵌入式系統(tǒng)設(shè)計(jì)人員難以與BLE模塊,傳感器和微控制器進(jìn)行交互。
通過(guò)使用電容器6和@adeunis/電容器-串行插件,我們可以彌合這一差距,并允許Android設(shè)備作為串行終端。這在使用BleuIO等設(shè)備時(shí)特別有用,因?yàn)閷?shí)時(shí)通信對(duì)于配置、測(cè)試和調(diào)試藍(lán)牙應(yīng)用程序至關(guān)重要。
該項(xiàng)目消除了對(duì)外部適配器或復(fù)雜的Android開(kāi)發(fā)的需求,利用了Capacitor基于web的方法。它提供了一種簡(jiǎn)單且可擴(kuò)展的方式將串行通信集成到移動(dòng)應(yīng)用程序中,而無(wú)需深入了解Android的USB api或本地開(kāi)發(fā)工具。
需求
要使用這個(gè)項(xiàng)目,您需要幾個(gè)基本組件來(lái)在Android設(shè)備和BleuIO之間建立串行通信。
BleuIO或BleuIO Pro -用于藍(lán)牙低功耗(BLE)通信的USB加密狗。該項(xiàng)目旨在通過(guò)USB串行連接與BleuIO進(jìn)行交互。
Android設(shè)備-支持USB OTG (on - go)的智能手機(jī)或平板電腦,允許其作為USB主機(jī)并與外部設(shè)備通信。
OTG電纜或適配器-需要將BleuIO連接到Android設(shè)備。由于大多數(shù)智能手機(jī)都有USB-C或Micro-USB接口,因此需要OTG適配器與BleuIO的USB-A連接器接口。
安裝與設(shè)置
安裝Node.js和Capacitor 6
Install Android Platform
創(chuàng)建一個(gè)電容器項(xiàng)目
安裝Android平臺(tái)
安裝串口通信插件
確?!癑DK 17”已安裝
電容器6需要JDK 17。通過(guò)以下方式安裝:
驗(yàn)證安裝:
它應(yīng)該輸出如下內(nèi)容:
Android上的OTG權(quán)限
為什么我們需要OTG權(quán)限?
Android設(shè)備本身不支持串行USB通信。
OTG權(quán)限允許USB主機(jī)模式,因此Android可以與外部串行設(shè)備通信。
如何開(kāi)啟OTG權(quán)限?
修改AndroidManifest.xml:
然后,在android/app/src/main/res/xml/中創(chuàng)建device_filter.xml:
這些值匹配BleuIO供應(yīng)商ID和產(chǎn)品ID,允許系統(tǒng)識(shí)別它。
項(xiàng)目代碼說(shuō)明
index . html
該文件提供了連接BleuIO和發(fā)送AT命令的按鈕。
index.js
這個(gè)文件:
?請(qǐng)求USB權(quán)限
?打開(kāi)串行連接
?發(fā)送和讀取AT命令
?處理來(lái)自BleuIO的連續(xù)數(shù)據(jù)流
運(yùn)行應(yīng)用程序
同步和構(gòu)建
打開(kāi)App
?通過(guò)OTG將BleuIO連接到Android。
?點(diǎn)擊“Connect to BleuIO”→出現(xiàn)權(quán)限提示。
?點(diǎn)擊“發(fā)送ATI命令”→出現(xiàn)“響應(yīng)”。
最終結(jié)果
運(yùn)行后,您應(yīng)該看到如下輸出:
輸出
源代碼
本項(xiàng)目演示了如何在Android手機(jī)上使用BleuIO USB加密狗作為串行通信設(shè)備。通過(guò)利用Capacitor 6和@adeunis/ Capacitor -serial插件,我們成功地建立了串行連接,發(fā)送AT命令,并通過(guò)USB OTG接收響應(yīng)。
隨著移動(dòng)優(yōu)先開(kāi)發(fā)和通過(guò)智能手機(jī)進(jìn)行硬件交互的需求不斷增長(zhǎng),該項(xiàng)目為進(jìn)一步擴(kuò)展Android上的串行通信功能提供了堅(jiān)實(shí)的基礎(chǔ)。
本文編譯自hackster.io