以前看新聞報導眾人合力幫忙翻修房子
這次終於知道那是什麼感覺,只是我們改為眾人合力Debug
Simple Care系統架構裡面有不少待解事項
新加坡政府也做了類似Simple Care的系統
台灣這邊無人導入,沒關係,最近功德二字很熱門
那就由我們這群做功德的Maker自己動手來完成
那就由我們這群做功德的Maker自己動手來完成
目前看起來系統要上線只是時間長短而已
台北場改進不少Firmware功能運作,這篇文章是集眾人之力修正而來
這裡說明一下系統如何設定家中帳號密碼
假設先前EEPROM完全沒燒寫過,Linkit7697開機時,將會進入AP mode
AP名稱為Simple Care
使用手機,或電腦連線,這裡使用電腦做說明
輸入Server IP:10.10.10.1,Port:80
按下TCP Connect,會發現Output顯示TCP connection “IP:Port” opend!
Linkit7697這邊會顯示Someone connected!
回到Sokit,在Buf裡面輸入以下格式
\v\AP帳號\AP密碼\
v是為了讓EEPROM做驗證,本來認為買回來的EEPROM應該不會燒錄任何資料
但想到有可能是向朋友借來玩的,所以EEPROM有可能不是空值,所以放一個v讓程式做驗證
而我們在EEPROM存入AP的帳號及密碼(感謝大神實作 orz)
將來手機APP也會以傳Socket的方式來寫
在Linkit7697這邊會看到系統開始Restart,這是因為Linkit7697不像ESP8266可以強制讓AP mode停掉,然後再轉成Station mode,所以只能選擇讓它重啟,這樣就可以找不到這個AP了
接下來會看到使用者輸入的帳號及密碼
連上之後會看到MQTT Server已connected
如果使用者用的是Localhost,那就要連到自家IP address
請自行修改Source code如下
設定完帳號密碼後,哪天家裡的帳密想更換
那就按下板子的USR鍵,就可以再次設定了
然後大神又說要在程式裡加一個Watch Dog,因為Linkit7697常常不明原因當機
所以當機後設定它在確認過EEPROM有v後,等待25秒重啟
再來是於Scan BLE ID與RSSI前,設置Watch Dog的進入點
這樣當Linkit7697當機後,就會自動連線,然後再Scan BLE ID與RSSI囉~
接下來要修正Backend為multi process,php有pcntl_fork可以使用
還在思考要不要改用node.js或是python,而python將來對接AI套件又非常方便
目前開發群持續Debug中,應該做個前端,上面貼大神們的照片,寫上豐功偉業才對!
這次的工作坊,讓夥伴互相認識才是最重要的,別讓大神們寂寞了 XD
下圖為大神制作的流程圖,有了這張圖,就知道流程怎麼走了,實在太感恩啦!
下圖為大神制作的流程圖,有了這張圖,就知道流程怎麼走了,實在太感恩啦!
這是另一位大神寫的資料,簡直是強翻天! 居然可以讀懂菜比八小弟寫的亂七八糟Code!!!
想和大神們一起做功德嗎?
加入我們吧!
加入我們吧!
您好,最近在研究用7697的AP Mode,連入後寫入wifi 帳密,改為Station Mode。不知您能提供這部分範例嗎? 謝謝。
回覆刪除請參閱simple care於github上的7697 Code ->
回覆刪除https://github.com/scolin912/Simple-Care/blob/master/MT7697/_7697_20171204_bulb_socket.ino
非常感謝
回覆刪除請問在 AP Mode 收到資訊後想要轉成 STA mode 一定得重啟嗎?
回覆刪除有沒有不重新啟動的方法?
我在官方文件中有看到使用wifi_config_set_opmode(WIFI_MODE_STA_ONLY)
之方法,但是怎麼試都不太行