通過EMP來設(shè)置MicroPython開機WIFI連接和WebREPL

出品: 1ZLAB 1zlab.com

EMP

EMP (Easy MicroPython) is a upy module to make things Easy on MicroPython.

當(dāng)前版本為0.1.11, 包含以下幾個模塊:

  • emp_boot.py 一句代碼用于設(shè)置MicroPython的boot啟動模式
  • emp_wifi.py 一句代碼搞定WIFI連接
  • emp_utils.py 工具模塊,包含了emp_boot.py 和emp_wifi.py模塊的一些依賴
  • emp_dev.py 原microide.py,封裝了一些文件操作的接口,供microide所調(diào)用的,現(xiàn)在已放置當(dāng)前項目維護

當(dāng)前版本主要包含的功能是為用戶提供便捷的WIFI連接,通過emp_wifi.py

通過EMP來設(shè)置MicroPython開機WIFI連接和WebREPL

第一步,讓你的MicroPython設(shè)備連接到網(wǎng)絡(luò)

(如果已經(jīng)連接請忽略,直接執(zhí)行第二步)

連接wifi的代碼如下:

>>> import network
>>> wifi = network.WLAN(network.STA_IF)  
>>> wifi.active(True) 
>>> wifi.connect('<essid>', '<password>') #essid為WIFI名
>>> I (62825) wifi: n:1 1, o:1 0, ap:255 255, sta:1 1, prof:1
I (63395) wifi: state: init -> auth (b0)
I (63405) wifi: state: auth -> assoc (0)
I (63465) wifi: state: assoc -> run (10)
I (63515) wifi: connected with 你的WIFI名字, channel 1
I (63515) wifi: pm start, type: 1

I (63515) network: CONNECTED
I (64385) event: sta ip: 192.168.0.115, mask: 255.255.255.0, gw: 192.168.0.1
I (64385) network: GOT_IP
# 至此,可能你需要回車一下,才能出現(xiàn)下一 提示符 >>>
>>>

第二步,安裝emp-1zlab

>>> import upip
I (240305) modsocket: Initializing
>>> upip.install('emp-1zlab')
Installing to: /lib/
Warning: pypi.org SSL certificate is not validated
Installing emp-1zlab 0.1.11 from https://files.pythonhosted.org/packages/59/95/b9e425d00c195c9beb2e77c0b02020676115c42762a32d61047650e3884b/emp-1zlab-0.1.11.tar.gz
>>> 

第三步,設(shè)置啟動模式

>>> from emp_boot import set_boot_mode
>>> set_boot_mode()
[0]   Boot with nothing
      attention: this option will clear up boot.py, careful!
[1]   Boot with wifi startup
      this mode will auto start wifi connect program.
[2]   Easy to develop
      this mode is for developers.In this mode you can develop much easier via EMP-IDE(emp.1zlab.com)
Please input your choice [0-2]: 


簡單說明以下,第0項為啟動腳本為空,這個會清除boot.py中的所有內(nèi)容

第1項為開機時啟動WIFI連接

第2項為開機啟動WIFI連接的同時啟動WebRepl,配合我們的IDE一起使用

第四步,按照提示進行開機引導(dǎo)

在此我們以第二項 Easy to develop為例:當(dāng)你按下2回車后,你的設(shè)備將會重啟:

# 以上省略若干行日志,以下會羅列出 你當(dāng)前的可用WIFI
created config/wifi_cfg.json # 初次運行會創(chuàng)建配置文件
I (3675) network: event 1
[0]    How_Router_Home                          -79     dBm
[1]    CMCC-iEPD                                -83     dBm
No record available # 如果你有已經(jīng)登陸過的wifi,那么將會嘗試自動連接
scaning networks...
I (6205) network: event 1
[0]    How_Router_Home                          -80     dBm
[1]    CMCC-iEPD                                -84     dBm
Which one do you want to access? [0-1]

在此選擇你想要連接的WIFI,我的WIFI是第0個:

scaning networks...
I (6205) network: event 1
[0]    How_Router_Home                          -80     dBm
[1]    CMCC-iEPD                                -84     dBm
Which one do you want to access? [0-1]0
Password for How_Router_Home: # 輸入你的WIFI密碼,回車

初次運行設(shè)置WebRepl

# 省略若干行日志
I (369455) network: CONNECTED
I (370225) event: sta ip: 192.168.0.115, mask: 255.255.255.0, gw: 192.168.0.1
I (370225) network: GOT_IP
You are connected to How_Router_Home
IP: 192.168.0.115     # 你的內(nèi)網(wǎng) IP
Netmask: 255.255.255.0 # 掩碼
Gateway: 192.168.0.1 # 網(wǎng)關(guān)
Added record: How_Router_Home
WebREPL daemon auto-start status: enabled

Would you like to (E)nable or (D)isable it running on boot?
(Empty line to quit)
> E                # E 為開啟
To enable WebREPL, you must set password for it
New password (4-9 chars): 1zlab # 輸入你的密碼
Confirm password: 1zlab # 再次輸入
No further action required


至此已成功的設(shè)置完成 你的MicroPython啟動模式至 Easy develop模式,請訪問我們的 網(wǎng)站emp.1zlab.com進行webrepl的高效開發(fā)吧!

可能你有如下的疑問:

  • 自動連接wifi的話,我如何控制在多個網(wǎng)絡(luò)下的連接?比如我有家兩個路由器,分別為A,B,我都進行過連接,我該如何保證我想要連接到A而不是B呢?

    >>> Wifi.set_default('<essid>')
    
  • 如何刪除一條記錄呢? 忘記WIFI?

    >>> Wifi.del_record('<essid>')
    
  • 查看ip的接口?

    >>> Wifi.ifconfig()
    You are connected to How_Router_Home
    IP: 192.168.0.115
    Netmask: 255.255.255.0
    Gateway: 192.168.0.1
    
    
  • 斷開當(dāng)前的WIFI

    >>> Wifi.disconnect()
    I (601244) wifi: state: run -> init (0)
    I (601244) wifi: pm stop, total sleep time: 565609183 us / 597113853 us
    
    I (601244) wifi: n:1 0, o:1 1, ap:255 255, sta:1 1, prof:1
    I (601264) wifi: flush txq
    I (601264) wifi: stop sw txq
    I (601264) wifi: lmac stop hw txq
    I (601264) wifi: STA_DISCONNECTED, reason:8
    E (601264) wifi: esp_wifi_connect 935 wifi not start
    I (601264) wifi: error attempting to reconnect: 0x3002
    I (601274) network: event 3
    WIFI connection has been disconnected
    
    
  • 重新連接到其他WIFI?

    # TODO em,有點小bug,待修復(fù) ...
    
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末翰意,一起剝皮案震驚了整個濱河市捏悬,隨后出現(xiàn)的幾起案子究飞,更是在濱河造成了極大的恐慌,老刑警劉巖屡谐,帶你破解...
    沈念sama閱讀 212,542評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叮贩,死亡現(xiàn)場離奇詭異疾棵,居然都是意外死亡,警方通過查閱死者的電腦和手機灸芳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拜姿,“玉大人烙样,你說我怎么就攤上這事∪锓剩” “怎么了谒获?”我有些...
    開封第一講書人閱讀 158,021評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長晴埂。 經(jīng)常有香客問我,道長寻定,這世上最難降的妖魔是什么儒洛? 我笑而不...
    開封第一講書人閱讀 56,682評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮狼速,結(jié)果婚禮上琅锻,老公的妹妹穿的比我還像新娘。我一直安慰自己向胡,他們只是感情好恼蓬,可當(dāng)我...
    茶點故事閱讀 65,792評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著僵芹,像睡著了一般处硬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拇派,一...
    開封第一講書人閱讀 49,985評論 1 291
  • 那天荷辕,我揣著相機與錄音,去河邊找鬼件豌。 笑死疮方,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的茧彤。 我是一名探鬼主播骡显,決...
    沈念sama閱讀 39,107評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼曾掂!你這毒婦竟也來了惫谤?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,845評論 0 268
  • 序言:老撾萬榮一對情侶失蹤珠洗,失蹤者是張志新(化名)和其女友劉穎石挂,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體险污,經(jīng)...
    沈念sama閱讀 44,299評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡痹愚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,612評論 2 327
  • 正文 我和宋清朗相戀三年富岳,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拯腮。...
    茶點故事閱讀 38,747評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡窖式,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出动壤,到底是詐尸還是另有隱情萝喘,我是刑警寧澤,帶...
    沈念sama閱讀 34,441評論 4 333
  • 正文 年R本政府宣布琼懊,位于F島的核電站阁簸,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏哼丈。R本人自食惡果不足惜启妹,卻給世界環(huán)境...
    茶點故事閱讀 40,072評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望醉旦。 院中可真熱鬧饶米,春花似錦、人聲如沸车胡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,828評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽匈棘。三九已至丧慈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間主卫,已是汗流浹背伊滋。 一陣腳步聲響...
    開封第一講書人閱讀 32,069評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留队秩,地道東北人笑旺。 一個月前我還...
    沈念sama閱讀 46,545評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像馍资,于是被迫代替她去往敵國和親筒主。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,658評論 2 350

推薦閱讀更多精彩內(nèi)容

  • 文章圖片上傳不正常鸟蟹,如需文檔乌妙,可聯(lián)系微信:1017429387 目錄 1 安裝... 4 1.1 配置探針... ...
    Mrhappy_a7eb閱讀 6,287評論 0 5
  • 出品:1Z實驗室 1zlab.com1ZLAB: Make Things Easy 導(dǎo)引 作為一款支持wifi的...
    仍是少年呀閱讀 12,536評論 2 11
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)建钥,斷路器藤韵,智...
    卡卡羅2017閱讀 134,637評論 18 139
  • 一、Python簡介和環(huán)境搭建以及pip的安裝 4課時實驗課主要內(nèi)容 【Python簡介】: Python 是一個...
    _小老虎_閱讀 5,729評論 0 10
  • 一顆草莓上熊经, 爬滿了泽艘, 千萬粒的灰塵欲险, 而表面的光鮮, 卻依舊模糊著雙眼匹涮。 未成熟的種子天试, 堵塞了血管, 流淌的是...
    畫骨透情閱讀 308評論 0 7