99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣通過(guò)藍(lán)牙僅使用Android手機(jī)為樹(shù)莓派配置Wi-Fi網(wǎng)絡(luò)

454398 ? 來(lái)源:工程師吳畏 ? 2019-07-26 15:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果你已經(jīng)使用Raspberry Pi一段時(shí)間了,你可能會(huì)遇到幾個(gè)您需要連接并重新連接Pi的Wi-Fi網(wǎng)絡(luò)的情況。這樣做可能需要您將Pi連接到顯示器,鍵盤和整個(gè)設(shè)備,或者使用其他設(shè)備直接在存儲(chǔ)卡上進(jìn)行配置。

在本教程中,我想向您展示一種通過(guò)藍(lán)牙僅使用Android手機(jī)為Raspberry Pi配置Wi-Fi網(wǎng)絡(luò)的簡(jiǎn)便方法。

使用此技術(shù),您不再需要擔(dān)心在無(wú)頭Raspberry Pi上切換Wi-Fi網(wǎng)絡(luò)。

必備材料

首先,您需要:

Raspberry Pi 3

Raspbian加載到microSD

Android手機(jī)

APK文件和Python運(yùn)行腳本

在Raspbian上安裝Bluez

在Raspbian終端中逐步輸入以下命令,從安裝Bluez(Python藍(lán)牙庫(kù))開(kāi)始:

$ sudo apt-get install python-bluez

怎樣通過(guò)藍(lán)牙僅使用Android手機(jī)為樹(shù)莓派配置Wi-Fi網(wǎng)絡(luò)

啟動(dòng)藍(lán)牙守護(hù)程序兼容模式,編輯/etc/systemd/system/dbus-org.bluez.service ,輸入以下命令:

$ sudo nano /etc/systemd/system/dbus-org.bluez.service

并修改ExecStart參數(shù)

ExecStart =/usr/lib/bluetooth/bluetoothd -C

加載串口配置文件:

$ sudo sdptool add SP

重新啟動(dòng)你的Pi:

$ sudo reboot

將Pi的藍(lán)牙與Android配對(duì)

重啟后,將Pi的藍(lán)牙與Android手機(jī)配對(duì)。

配對(duì)藍(lán)牙:

打開(kāi)手機(jī)的藍(lán)牙,將手機(jī)與Raspberry Pi配對(duì)。接下來(lái),在您的Pi上輸入:

$ bluetoothctl

power on

discoverable on

scan on

您的手機(jī)將顯示在可用設(shè)備列表中。記下您手機(jī)的地址。

信任

對(duì)

要退出藍(lán)牙ctl,請(qǐng)輸入退出命令:

退出

您也可以跳過(guò)以上設(shè)置如果您發(fā)現(xiàn)可以使用Raspbian的UI輕松設(shè)置藍(lán)牙。

在配對(duì)藍(lán)牙后,通過(guò)輸入nano命令并復(fù)制/粘貼源代碼,將Python腳本直接添加到Raspbian中:

$ sudo python run.py

你也可以在這里直接復(fù)制run.py文件。

接下來(lái),您可以運(yùn)行該腳本。但首先使腳本可執(zhí)行:

$ chmod +x run.py

運(yùn)行:

$ sudo 。/run.py

執(zhí)行此操作后,現(xiàn)在需要打開(kāi)Android應(yīng)用程序。為此,請(qǐng)使用此處的.apk文件下載并安裝應(yīng)用程序。

在藍(lán)牙配對(duì)設(shè)備中選擇Raspberry Pi。輸入SSID,PSK并點(diǎn)擊開(kāi)始配置按鈕。在幾秒鐘內(nèi),您的Raspberry Pi的Wi-Fi應(yīng)該連接,如下圖所示。

要在啟動(dòng)時(shí)運(yùn)行此腳本,請(qǐng)編輯/etc/rc.local 并添加:

(睡10;/path/to/script/。/run.py)&

源代碼(run.py)

#!/usr/bin/env python

import os

from bluetooth import *

from wifi import Cell, Scheme

import subprocess

import time

wpa_supplicant_conf = “/etc/wpa_supplicant/wpa_supplicant.conf”

sudo_mode = “sudo ”

def wifi_connect(ssid, psk):

# write wifi config to file

cmd = ‘wpa_passphrase {ssid} {psk} | sudo tee -a {conf} 》 /dev/null’.format(

ssid=str(ssid).replace(‘!’, ‘\!’),

psk=str(psk).replace(‘!’, ‘\!’),

conf=wpa_supplicant_conf

cmd_result = “”

cmd_result = os.system(cmd)

print cmd + “ - ” + str(cmd_result)

# reconfigure wifi

cmd = sudo_mode + ‘wpa_cli -i wlan0 reconfigure’

cmd_result = os.system(cmd)

print cmd + “ - ” + str(cmd_result)

time.sleep(10)

cmd = ‘iwconfig wlan0’

cmd_result = os.system(cmd)

print cmd + “ - ” + str(cmd_result)

cmd = ‘ifconfig wlan0’

cmd_result = os.system(cmd)

print cmd + “ - ” + str(cmd_result)

p = subprocess.Popen([‘hostname’, ‘-I’], stdout=subprocess.PIPE,

stderr=subprocess.PIPE)

out, err = p.communicate()

if out:

ip_address = out

else:

ip_address = “”

return ip_address

def ssid_discovered():

Cells = Cell.all(‘wlan0’)

wifi_info = ‘Found ssid : ’

for current in range(len(Cells)):

wifi_info += Cells[current].ssid + “ ”

wifi_info+=“!”

print wifi_info

return wifi_info

def handle_client(client_sock) :

# get ssid

client_sock.send(ssid_discovered())

print “Waiting for SSID.。.”

ssid = client_sock.recv(1024)

if ssid == ‘’ :

return

print “ssid received”

print ssid

# get psk

client_sock.send(“waiting-psk!”)

print “Waiting for PSK.。.”

psk = client_sock.recv(1024)

if psk == ‘’ :

return

print “psk received”

print psk

ip_address = wifi_connect(ssid, psk)

print “ip address: ” + ip_address

client_sock.send(“ip-address:” + ip_address + “!”)

return

try:

while True:

server_sock=BluetoothSocket( RFCOMM )

server_sock.bind((“”,PORT_ANY))

server_sock.listen(1)

port = server_sock.getsockname()[1]

uuid = “815425a5-bfac-47bf-9321-c5ff980b5e11”

advertise_service( server_sock, “RPi Wifi config”,

service_id = uuid,

service_classes = [ uuid, SERIAL_PORT_CLASS ],

profiles = [ SERIAL_PORT_PROFILE ])

print “Waiting for connection on RFCOMM channel %d” % port

client_sock, client_info = server_sock.accept()

print “Accepted connection from ”, client_info

handle_client(client_sock)

client_sock.close()

server_sock.close()

# finished config

print ‘Finished configuration ’

except (KeyboardInterrupt, SystemExit):

print ‘ Exiting ’

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    3973

    瀏覽量

    130239
  • 藍(lán)牙
    +關(guān)注

    關(guān)注

    116

    文章

    6078

    瀏覽量

    174012
  • wi-fi
    +關(guān)注

    關(guān)注

    14

    文章

    2259

    瀏覽量

    126992
  • 樹(shù)莓派
    +關(guān)注

    關(guān)注

    121

    文章

    2007

    瀏覽量

    107467
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Wi-Fi 8:開(kāi)啟極高可靠性 (UHR) 連接的新紀(jì)元——2

    Aggregation)。由于所有操作均可跨頻段與頻道進(jìn)行,因此顯著提升了整個(gè)網(wǎng)絡(luò)系統(tǒng)的數(shù)據(jù)傳輸速度,并有效降低了多用戶同時(shí)在線傳輸時(shí)所產(chǎn)生的延遲問(wèn)題。圖3展示了Wi-Fi 7中 MLO技術(shù)如何通過(guò)不同頻段實(shí)現(xiàn)同時(shí)傳輸
    發(fā)表于 06-13 11:15

    DA16600MOD超低功耗Wi-Fi低功耗藍(lán)牙組合模塊數(shù)據(jù)手冊(cè)

    SoC 集成在單個(gè)模塊上。 二者合二一,方便快捷,可實(shí)現(xiàn)較長(zhǎng)的電池壽命和較低的功耗。作為單一集成系統(tǒng),Wi-Fi/Bluetooth LE 共存以及通過(guò)藍(lán)牙 LE 連接
    的頭像 發(fā)表于 05-25 16:10 ?288次閱讀
    DA16600MOD超低功耗<b class='flag-5'>Wi-Fi</b>低功耗<b class='flag-5'>藍(lán)牙</b>組合模塊數(shù)據(jù)手冊(cè)

    搭建樹(shù)莓網(wǎng)絡(luò)監(jiān)控系統(tǒng):頂級(jí)工具與技術(shù)終極指南!

    安全。安裝樹(shù)莓網(wǎng)絡(luò)監(jiān)控系統(tǒng)有諸多益處。樹(shù)莓具備以太網(wǎng)接口,還內(nèi)置了Wi-Fi功能,擁有足夠的
    的頭像 發(fā)表于 05-14 15:32 ?692次閱讀
    搭建<b class='flag-5'>樹(shù)莓</b><b class='flag-5'>派</b><b class='flag-5'>網(wǎng)絡(luò)</b>監(jiān)控系統(tǒng):頂級(jí)工具與技術(shù)終極指南!

    基于 Wi-Fi 的定位服務(wù)

    以下捕獲使用 location_wifi_get 函數(shù)請(qǐng)求 Wi-Fi 定位服務(wù)。該事件的總功耗 125.85mC,日志顯示精確度 30.0m。 Got location: method
    發(fā)表于 04-17 15:16

    nRF Cloud Wi-Fi 定位服務(wù)

    、Predictive-GPS、Single-Cell、Multi-Cell 和 Wi-Fi 定位。通過(guò)利用 nRF Cloud 的優(yōu)化定位算法,基于 Nordic SoC 和 模組的產(chǎn)品可在定位用例
    發(fā)表于 04-17 15:07

    Wi-Fi 定位服務(wù)

    Wi-Fi 是一種著名的無(wú)線網(wǎng)絡(luò)技術(shù),用于設(shè)備的局域網(wǎng)和互聯(lián)網(wǎng)接入。Wi-Fi 通過(guò) Wi-Fi 網(wǎng)絡(luò)
    發(fā)表于 04-17 15:01

    推出了期待已久的 nRF7002 低功耗Wi-Fi 6

    支持長(zhǎng)壽命的電池供電Wi-Fi操作。 借助 Wi-Fi 6,我們將支持用于 Matter 的所有無(wú)線協(xié)議、用于調(diào)試的藍(lán)牙 LE、用于低功耗mesh網(wǎng)絡(luò)的 Thread 以及用于高吞吐量
    發(fā)表于 03-26 11:00

    nRF7002是我們獨(dú)特的Wi-Fi產(chǎn)品組合中的第一款設(shè)備

    ,包括進(jìn)一步提高效率,以支持長(zhǎng)壽命的電池供電Wi-Fi操作。 借助 Wi-Fi 6,我們將支持用于 Matter 的所有無(wú)線協(xié)議、用于調(diào)試的藍(lán)牙 LE、用于低功耗mesh網(wǎng)絡(luò)的 Thr
    發(fā)表于 03-10 15:42

    2025,國(guó)產(chǎn)手機(jī)Wi-Fi FEM元年

    轉(zhuǎn)載自鐘林談芯 Wi-Fi FEM的故事我講過(guò)很多,新的一年,新的故事。 2025年,將迎來(lái)國(guó)產(chǎn)手機(jī)Wi-Fi FEM元年,Wi-Fi FEM將煥發(fā)出新的生機(jī)活力。唯捷創(chuàng)芯、康希通信、
    的頭像 發(fā)表于 01-09 16:48 ?798次閱讀
    2025,國(guó)產(chǎn)<b class='flag-5'>手機(jī)</b><b class='flag-5'>Wi-Fi</b> FEM元年

    華為海思正式進(jìn)入Wi-Fi FEM賽道?

    大家都知道了,2018年11 月離開(kāi)銳迪科(RDA),前往福建晉江創(chuàng)立三伍微,專注于Wi-Fi射頻前端芯片,從路由器Wi-Fi FEM,到手機(jī)Wi-Fi FEM,再到IoT FEM全覆
    發(fā)表于 12-11 17:42

    Wi-Fi 4到Wi-Fi 7:網(wǎng)速飆升40倍的無(wú)線革命

    1 Wi-Fi技術(shù)的快速發(fā)展 每一代新的Wi-Fi協(xié)議發(fā)布,都會(huì)帶來(lái)更高的無(wú)線速率。 ? 從Wi-Fi 4到Wi-Fi 7:無(wú)線網(wǎng)絡(luò)技術(shù)顯著
    的頭像 發(fā)表于 12-09 10:10 ?1056次閱讀
    從<b class='flag-5'>Wi-Fi</b> 4到<b class='flag-5'>Wi-Fi</b> 7:網(wǎng)速飆升40倍的無(wú)線革命

    Wi-Fi藍(lán)牙的波特率對(duì)比分析

    Wi-Fi藍(lán)牙是兩種不同的無(wú)線通信技術(shù),它們?cè)诓ㄌ芈剩ɑ蚍Q數(shù)據(jù)傳輸速率)方面存在顯著的差異。以下是對(duì)Wi-Fi藍(lán)牙波特率的對(duì)比分析: 一、Wi-
    的頭像 發(fā)表于 11-22 09:54 ?1837次閱讀

    Wi-Fi 7與Wi-Fi 6E有什么區(qū)別

    也許很多人還在考慮是否要將使用的Wi-Fi設(shè)備升級(jí)到Wi-Fi 6或Wi-Fi 6E,而這些標(biāo)準(zhǔn)的繼任者卻已經(jīng)開(kāi)始“登堂入室”了。Wi-Fi 7是新一代
    的頭像 發(fā)表于 11-07 11:38 ?3474次閱讀

    IR900 Wi-Fi聯(lián)網(wǎng)的配置過(guò)程

    例如上圖,IR900 通過(guò)Wi-Fi接口連接公司辦公無(wú)線網(wǎng)絡(luò) inhand-office (SSID無(wú)線網(wǎng)絡(luò)的名稱) 首先將
    發(fā)表于 07-25 06:09

    AT 0.60.0.0看不到我的Wi-Fi網(wǎng)絡(luò),為什么?

    我對(duì) AT 0.60.0.0 有一點(diǎn)問(wèn)題。當(dāng)我通過(guò) AT CWLAP 顯示所有網(wǎng)絡(luò)時(shí),我看不到我的路由器 AP 網(wǎng)絡(luò),但我可以連接到它。當(dāng)我在智能手機(jī)中打開(kāi)
    發(fā)表于 07-18 08:31