91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

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

454398 ? 來源:工程師吳畏 ? 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)行配置。

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

使用此技術(shù),您不再需要擔(dān)心在無頭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)牙庫)開始:

$ sudo apt-get install python-bluez

怎樣通過藍(lán)牙僅使用Android手機(jī)為樹莓派配置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)牙:

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

$ bluetoothctl

power on

discoverable on

scan on

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

信任

對(duì)

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

退出

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

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

$ sudo python run.py

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

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

$ chmod +x run.py

運(yùn)行:

$ sudo 。/run.py

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

在藍(lán)牙配對(duì)設(shè)備中選擇Raspberry Pi。輸入SSID,PSK并點(diǎn)擊開始配置按鈕。在幾秒鐘內(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ī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    4026

    瀏覽量

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

    關(guān)注

    119

    文章

    6315

    瀏覽量

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

    關(guān)注

    15

    文章

    2425

    瀏覽量

    129597
  • 樹莓派
    +關(guān)注

    關(guān)注

    122

    文章

    2079

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    技術(shù)資訊 I Wi-Fi 模塊設(shè)計(jì)

    本文要點(diǎn)Wi-Fi模塊設(shè)計(jì)旨在打造一套緊湊且高效的硬件和軟件解決方案,使設(shè)備能夠通過Wi-Fi網(wǎng)絡(luò)實(shí)現(xiàn)通信。Wi-Fi模塊設(shè)計(jì)是一個(gè)復(fù)雜的過
    的頭像 發(fā)表于 02-27 17:12 ?604次閱讀
    技術(shù)資訊 I <b class='flag-5'>Wi-Fi</b> 模塊設(shè)計(jì)

    ESP32 Wi-Fi 控制 LED 燈的原理

    在智能家居、物聯(lián)網(wǎng)設(shè)備中,用手機(jī)通過Wi-Fi控制燈光、風(fēng)扇或插座,已經(jīng)非常普遍。而在嵌入式開發(fā)中,ESP32是最常用的Wi-Fi模塊之一。本文將帶你系統(tǒng)理解:ESP32是如何
    的頭像 發(fā)表于 01-09 19:04 ?303次閱讀
    ESP32 <b class='flag-5'>Wi-Fi</b> 控制 LED 燈的原理

    Wi-Fi:無線連接的全球通用語

    一、什么是Wi-Fi?Wi-FiWi-Fi聯(lián)盟制造商的商標(biāo)認(rèn)證,是基于IEEE 802.11標(biāo)準(zhǔn)的無線局域網(wǎng)技術(shù)。它允許電子設(shè)備在特定范圍內(nèi)無線接入網(wǎng)絡(luò),實(shí)現(xiàn)高速數(shù)據(jù)交換與互聯(lián)網(wǎng)訪問
    發(fā)表于 01-07 09:49

    賦予白色家電新智能!增添Wi-Fi 6、低功耗藍(lán)牙和Matter連接

    Wi-Fi助力實(shí)現(xiàn)高帶寬和對(duì)時(shí)間敏感的云端交互,而低功耗藍(lán)牙提供低功耗、短距離的本地通信,用于簡(jiǎn)化設(shè)備入網(wǎng)和控制。在單一設(shè)備中同時(shí)集成Wi-Fi和低功耗藍(lán)牙,
    的頭像 發(fā)表于 11-12 15:55 ?483次閱讀
    賦予白色家電新智能!增添<b class='flag-5'>Wi-Fi</b> 6、低功耗<b class='flag-5'>藍(lán)牙</b>和Matter連接

    淺談Wi-Fi 6E與Wi-Fi 7的關(guān)鍵器件——BAW濾波器新技術(shù)

    ,美國(guó)聯(lián)邦通信委員會(huì)(FCC)投票通過將6GHz頻譜劃為免許可頻段供Wi-Fi使用,這標(biāo)志著Wi-Fi正式進(jìn)入“三頻”時(shí)代——除Wi-Fi 6及前代技術(shù)使用的2.4GHz和5GHz頻段
    發(fā)表于 09-19 18:29 ?2164次閱讀
    淺談<b class='flag-5'>Wi-Fi</b> 6E與<b class='flag-5'>Wi-Fi</b> 7的關(guān)鍵器件——BAW濾波器新技術(shù)

    基于 SSID 的 Wi-Fi 定位:與其他定位服務(wù)的性能比較

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

    銳捷網(wǎng)絡(luò)Wi-Fi 7加速演進(jìn),2025年進(jìn)入快速爬坡期

    隨著4K/8K、VR/AR、遠(yuǎn)程醫(yī)療、工業(yè)物聯(lián)網(wǎng)等新型應(yīng)用的不斷涌現(xiàn),家庭、企業(yè)和工業(yè)環(huán)境對(duì)Wi-Fi網(wǎng)絡(luò)提出了更高要求。在此驅(qū)動(dòng)下,行業(yè)正向Wi-Fi 7加速演進(jìn),而2025年成
    的頭像 發(fā)表于 08-01 10:29 ?1176次閱讀
    銳捷<b class='flag-5'>網(wǎng)絡(luò)</b>:<b class='flag-5'>Wi-Fi</b> 7加速演進(jìn),2025年進(jìn)入快速爬坡期

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

    Aggregation)。由于所有操作均可跨頻段與頻道進(jìn)行,因此顯著提升了整個(gè)網(wǎng)絡(luò)系統(tǒng)的數(shù)據(jù)傳輸速度,并有效降低了多用戶同時(shí)在線傳輸時(shí)所產(chǎn)生的延遲問題。圖3展示了Wi-Fi 7中 MLO技術(shù)如何通過不同頻段實(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 共存以及通過藍(lán)牙 LE 連接
    的頭像 發(fā)表于 05-25 16:10 ?1011次閱讀
    DA16600MOD超低功耗<b class='flag-5'>Wi-Fi</b>低功耗<b class='flag-5'>藍(lán)牙</b>組合模塊數(shù)據(jù)手冊(cè)

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

    安全。安裝樹莓網(wǎng)絡(luò)監(jiān)控系統(tǒng)有諸多益處。樹莓具備以太網(wǎng)接口,還內(nèi)置了Wi-Fi功能,擁有足夠的
    的頭像 發(fā)表于 05-14 15:32 ?1412次閱讀
    搭建<b class='flag-5'>樹莓</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 定位。通過利用 nRF Cloud 的優(yōu)化定位算法,基于 Nordic SoC 和 模組的產(chǎn)品可在定位用例
    發(fā)表于 04-17 15:07

    Wi-Fi 定位服務(wù)

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

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

    支持長(zhǎng)壽命的電池供電Wi-Fi操作。 借助 Wi-Fi 6,我們將支持用于 Matter 的所有無線協(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 的所有無線協(xié)議、用于調(diào)試的藍(lán)牙 LE、用于低功耗mesh網(wǎng)絡(luò)的 Thr
    發(fā)表于 03-10 15:42