# https://www.teleduino.org/
# https://www.teleduino.org/tools/request-key
# Arduino Control via a Web Service with Teleduino
我覺得用乙太網擴充卡玩物聯網有點那個 ... 落伍, 因為要拉一條線啊! 人家都已經上太空了, 我們還要殺豬公嗎? 所以我早就將乙太網板收起來了. 便宜又好用的 ESP8266 才是物聯網的最佳拍檔. 以後窮極無聊時再考慮用乙太網板來玩 Teleduino, 但現在還不是時候啦!
今天努力尋找後, 終於找到 Blynk 這個開源的專案, 乍看就讓我非常驚豔, 因為介面做得實在漂亮, 它可以讓我們以手機自訂介面, 透過 Internet (不是區網喔) 控制上網的嵌入式設備, 包括 Arduino, Raspberry Pi, ESP8266 等, 參考 :
# 利用手機程式:Blynk控制Arduino
# Connect to Blynk using ESP8266 as Arduino Uno wifi shield
# Control your Arduino over the Internet using Blynk
Blynk 最初是 2015/1/17 在 Kickstarter 募資網站上發起的一個提案, 2015/2/15 成功募集到近五萬美元資金, 2015/5/5 正式上線, 在 iOS 與 Android 系統上均可下載使用, 在額度內可免費使用, 說明文件參考 :
# http://docs.blynk.cc
# Connect to Blynk using ESP8266 as Arduino Uno wifi shield
# Control your Arduino over the Internet using Blynk
Blynk 最初是 2015/1/17 在 Kickstarter 募資網站上發起的一個提案, 2015/2/15 成功募集到近五萬美元資金, 2015/5/5 正式上線, 在 iOS 與 Android 系統上均可下載使用, 在額度內可免費使用, 說明文件參考 :
# http://docs.blynk.cc
其開發者社群也有許多 FAQ 資料可查詢 :
# http://community.blynk.cc
甚至還有人用 Blynk 來控制四軸飛行器, 參考 :
# 30分钟内使用手机控制四轴飞行器(ESP8266 + A7105 + Blynk App for iOS/Android)
如何使用 Blynk? 底下以一個簡單的範例 : 遠端控制 Arduino Nano 板上的 D13 LED 燈明滅來說明, 這裡的 Nano 是透過 ESP8266 ESP-01 Wifi 模組連上 Internet, 不是單獨使用 ESP8266 當微控器 (這個下次再試).
以下測試程式是在我自己用洞洞板焊接的 Arduino Nano+ESP8266 IOT 模組上進行實驗, 電路圖參考 :
# 製作 Arduino Nano + ESP8266 物聯網模組 (四) : 完結篇
首先要下載 Blynk 函式庫, 點 Blynk 官網最底下的 Download 超連結會連到 Github :
# https://github.com/blynkkk/blynk-library
點選 Bliynk Libraries :
但是不要用如下圖右方的 "Clone or download" 下載 :
而是將網頁往下拉到 "Readme.md" 欄, 點 "Dowloads 53k total" 這個按鈕到 Latest release 的下載頁 :
# https://github.com/blynkkk/blynk-library/releases/latest
目前最新是 0.3.8 版, 按這網頁最底下的 Blynk_Release_v0.3.8.zip 即可下載 :
或者到說明文件網頁 http://docs.blynk.cc 也有一個下載按鈕.
解壓縮下載的 Blynk_Release_v0.3.8.zip, 會發現裡面有四個子目錄 :
將這四個目錄複製到 Arduino IDE 的安裝目錄下 (例如 D:\arduino-1.6.6\libraries\), 注意喔, 不是將解壓縮後的 Blynk_Release_v0.3.8 目錄複製到 libraries 下, 而是把它下面的四個子目錄複製過去, 否則會出現編譯錯誤 (找不到 ESP8266_Lib.h) :
這樣便完成 Blynk 函式庫的安裝了. 關閉 Arduino IDE 後再重新開啟, 就可以在 "檔案/範例" 的第三方程式庫分類下找到 Blynk 函式庫了 :
開啟程式後按 "Create New Account" 新增帳戶 :
輸入 Email 與密碼, 按 "Sign Up" :
登入完成後按 "Create New Project" 新增專案 :
輸入專案名稱 (最多 20 個字元) 與選擇硬體板子, 我使用 Arduino Nano :
底下會出現認證金鑰, 這是微控器程式存取 Blynk 服務的憑證. 可按左下角的 "Refresh" 鈕換別的金鑰 :
按右下角 "E-mail" 會將此組金鑰寄到郵件信箱, 以便複製到 Arduino 程式裡 :
最後按 "Create" 就建立一個控制專案了, 因為還沒自訂介面元件, 所以 App 版面上空無一物, 但可看見上面標題已經變成剛剛輸入的專案名稱了 :
接著按上面的 + 或向左滑, 會出現元件箱 (Widget Box) :
點選第一個元件 Button 會在元件版面上新增一個按鈕 :
點一下這個按鈕會進入按鈕設定 :
第一個框框是按鈕名字, 可任意命名, 例如 D13 LED, 然後點 OUTPUT 下的 PIN 鈕選擇此按鈕要控制 Arduino 哪一個針腳, 例如 Digital 13 :
最後是 MODE 欄可選擇按鈕模式是 PUSH (押按式) 或 SWITCH (切換式) :
設定好後按上面標題的左箭頭即回到版面配置, 這時可看到已經出現一個按鈕 :
這樣便完成 App 的設計了, 標題最右邊的 Play 鈕便是此 App 的執行鈕, 但此時我們的 Arduino 尚未上傳程式, 所以暫時還不能執行. 現在要回到 Arduino IDE, 開啟 "檔案/範例/Blynk/Board_Wifi/ESP8266_Shield" 範例程式, 填入無線基地台的 ssid 與 pass, 以及上面新增專案時取得的金鑰, 再上傳 Arduino 即可.
以下測試程式是在我自己用洞洞板焊接的 Arduino Nano+ESP8266 IOT 模組上進行實驗, 電路圖參考 :
# 製作 Arduino Nano + ESP8266 物聯網模組 (四) : 完結篇
完整程式如下 :
#define BLYNK_PRINT Serial // Comment this out to disable prints and save space
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "47242515b53d4dd88c6ca911xxxxx185";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "H30-L02-webbot";
char pass[] = "1234567890";
// Hardware Serial on Mega, Leonardo, Micro...
//#define EspSerial Serial1
// or Software Serial on Uno, Nano...
#include <SoftwareSerial.h>
SoftwareSerial EspSerial(7, 8); // RX, TX
// Your ESP8266 baud rate:
#define ESP8266_BAUD 9600
ESP8266 wifi(&EspSerial);
void setup() {
// Set console baud rate
Serial.begin(9600);
delay(10);
// Set ESP8266 baud rate
EspSerial.begin(ESP8266_BAUD);
delay(10);
Blynk.begin(auth, wifi, ssid, pass);
}
void loop() {
Blynk.run();
}
此程式編譯後記憶體耗用情形 :
草稿碼使用了 17,736 bytes (57%) 的程式存儲空間。最大值為 30,720 bytes。
全域變數使用了 837 bytes (40%) 的動態記憶體,剩餘 1,211 bytes 供局部變數。最大值為 2,048 bytes 。
程式上傳後就可以按 Blynk APP 右上角的 Play 鍵執行, 這時右上角會變成正方形的停止鍵 :
按版面上的圓形按鈕就可以透過 Internet 遙控 Arduino 板上的 D13 LED 燈的明滅了. 這是透過 Internet 控制遠端 Arduino, 並不是在區網範圍內, 所以利用 Blynk 服務我們可以在全球任何地方透過網路控制遠端設備, 而且其反應速度非常之快, 幾乎是立即反應 (延遲大約 0.5 秒), 我很好奇它背後是用的是甚麼協定? 之前我用 HTTP 傳送控制訊息都要 2~4 秒左右.
序列埠監控視窗擷取訊息如下 :
[19] Blynk v0.3.8 on Arduino Nano
[520] Connecting to H30-L02-webbot
[3579] 0018000902
[10833] 192.168.43.151
[10863] Connected to WiFi
[16774] Ready (ping: 30ms).
[23262988] Ready (ping: 45ms).
Blynk 提供的 App 介面元件很多, 也還不斷新增支援的硬體板子, 值得好好研究研究. 我本來還想找時間用 App Inventor 來學一下 App 設計以便控制 Arduino, 但有了 Blynk 我看就不必了.
如果要刪除專案, 須按 App 上方標題列的雙圈圈符號進入 Project settings 畫面, 拉到最底下, 按 Delete 鈕即可 :
按 "Generate Link" 會將此 App 的位址製作成 QR Code :
按底下的 Share 鈕可將此 App 分享到 Line, Email, Facebook, Twitter, Drobox 等軟體, 收到分享連結的人如果也安裝了 Blynk 程式, 那他們也會擁有你設計的專案 App, 可以控制他們自己的裝置 (不會控制你的裝置, 因為他們收到的 App 有自己的金鑰, 我們只分享 Blynk App 中的專案設計而已, 並不是分享金鑰). 但是如果你把自己的 Blynk 帳號密碼告訴別人, 則他以此登入 Blynk 後便能完全控制你的專案與設備喔.
收到分享 QR Code 的人只要有安裝 Blynk, 點右上方的 QR code 按鈕掃描圖案, 就會將專案完整複製進來了, 不需要自行設定元件 :
最後補充說明上面有提到不要從 Clone or Download 下載 Blynk 函式庫, 因為那樣下載的 blynk-library-master.zip 解壓縮後放在 libraries 下, 編譯上面的程式時會出現下面錯誤 :
In file included from C:\Users\Tony\Documents\Arduino\Blynk_test1\Blynk_test1.ino:34:0:
D:\arduino-1.6.6\libraries\blynk-library-master/BlynkSimpleShieldEsp8266.h:28:25: fatal error: ESP8266_Lib.h: No such file or directory
#include <ESP8266_Lib.h>
^
compilation terminated.
exit status 1
編譯時發生錯誤
找了下列資料還是沒頭緒, 最後從上面的下載點找到正確的 zip 檔, 摸索出正確安裝方式才解決因找不到檔案而編譯失敗的問題, 參考 :
# Where to I find “ESP8266_Lib.h” library?
# Connect to Blynk using ESP8266 as Arduino Uno wifi shield (Mac only)
# ESP8266 WiFi Configuration Library
如果要單獨用 ESP8266 做微控器, 可參考下列這篇 :
# ESP8266 Thing Development Board Hookup Guide
Blynk 也有論壇, 但不能用 Blynk 帳號登入, 需另外註冊.
裡面可以查到已發問的各種疑難雜症 :
# http://community.blynk.cc/c/projecthelp
也有各路英雄發表的作品 :
# http://community.blynk.cc/c/projects
# http://community.blynk.cc/c/projecthelp/l/top (精選)
例如下面這個專案就是利用 Blynk 與 wifi 控制自走車 :
# Robot with Esp8266 Shield and Arduino Nano
Play Store 上與 Blynk 類似的 App 也蠻多的 (可搜尋 blynk like app), 但看來 Blynk 似乎較容易使用 :
# https://play.google.com/store/apps/similar?id=cc.blynk
另外 Youtube 上有一個用 Blynk 控制的澆水系統 :
# Smart Modular Watering System using Blynk
其他專案 :
# Rain Warning Display on Mobile for your Home Garden
# WiFi Controlled Robot using Arduino
# ESP 8266 Mailbox Notifier using DeepSleep and Blynk (ESP 深度睡眠)
點選 Bliynk Libraries :
但是不要用如下圖右方的 "Clone or download" 下載 :
而是將網頁往下拉到 "Readme.md" 欄, 點 "Dowloads 53k total" 這個按鈕到 Latest release 的下載頁 :
# https://github.com/blynkkk/blynk-library/releases/latest
目前最新是 0.3.8 版, 按這網頁最底下的 Blynk_Release_v0.3.8.zip 即可下載 :
或者到說明文件網頁 http://docs.blynk.cc 也有一個下載按鈕.
解壓縮下載的 Blynk_Release_v0.3.8.zip, 會發現裡面有四個子目錄 :
將這四個目錄複製到 Arduino IDE 的安裝目錄下 (例如 D:\arduino-1.6.6\libraries\), 注意喔, 不是將解壓縮後的 Blynk_Release_v0.3.8 目錄複製到 libraries 下, 而是把它下面的四個子目錄複製過去, 否則會出現編譯錯誤 (找不到 ESP8266_Lib.h) :
這樣便完成 Blynk 函式庫的安裝了. 關閉 Arduino IDE 後再重新開啟, 就可以在 "檔案/範例" 的第三方程式庫分類下找到 Blynk 函式庫了 :
點選底下的 "Board_Wifi/ESP8266_Shield" 就會開啟我們要用到的範例檔, 因為我是將 ESP8266 當作 Arduino Nano 的上網工具而已, 所以要選 shield, 如果直接使用 ESP8266 當微控器, 那麼就要選 ESP8266_Standalone 了.
在這個範例中必須填入 Blynk 認證金鑰, 這金鑰必須由 Blynk App 欄產生, 所以接下來是用手機上網到 Google Play Store 搜尋下載安裝 Blynk 這個應用程式 :
開啟程式後按 "Create New Account" 新增帳戶 :
輸入 Email 與密碼, 按 "Sign Up" :
登入完成後按 "Create New Project" 新增專案 :
輸入專案名稱 (最多 20 個字元) 與選擇硬體板子, 我使用 Arduino Nano :
底下會出現認證金鑰, 這是微控器程式存取 Blynk 服務的憑證. 可按左下角的 "Refresh" 鈕換別的金鑰 :
按右下角 "E-mail" 會將此組金鑰寄到郵件信箱, 以便複製到 Arduino 程式裡 :
最後按 "Create" 就建立一個控制專案了, 因為還沒自訂介面元件, 所以 App 版面上空無一物, 但可看見上面標題已經變成剛剛輸入的專案名稱了 :
接著按上面的 + 或向左滑, 會出現元件箱 (Widget Box) :
點選第一個元件 Button 會在元件版面上新增一個按鈕 :
點一下這個按鈕會進入按鈕設定 :
第一個框框是按鈕名字, 可任意命名, 例如 D13 LED, 然後點 OUTPUT 下的 PIN 鈕選擇此按鈕要控制 Arduino 哪一個針腳, 例如 Digital 13 :
最後是 MODE 欄可選擇按鈕模式是 PUSH (押按式) 或 SWITCH (切換式) :
設定好後按上面標題的左箭頭即回到版面配置, 這時可看到已經出現一個按鈕 :
這樣便完成 App 的設計了, 標題最右邊的 Play 鈕便是此 App 的執行鈕, 但此時我們的 Arduino 尚未上傳程式, 所以暫時還不能執行. 現在要回到 Arduino IDE, 開啟 "檔案/範例/Blynk/Board_Wifi/ESP8266_Shield" 範例程式, 填入無線基地台的 ssid 與 pass, 以及上面新增專案時取得的金鑰, 再上傳 Arduino 即可.
以下測試程式是在我自己用洞洞板焊接的 Arduino Nano+ESP8266 IOT 模組上進行實驗, 電路圖參考 :
# 製作 Arduino Nano + ESP8266 物聯網模組 (四) : 完結篇
完整程式如下 :
#define BLYNK_PRINT Serial // Comment this out to disable prints and save space
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "47242515b53d4dd88c6ca911xxxxx185";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "H30-L02-webbot";
char pass[] = "1234567890";
// Hardware Serial on Mega, Leonardo, Micro...
//#define EspSerial Serial1
// or Software Serial on Uno, Nano...
#include <SoftwareSerial.h>
SoftwareSerial EspSerial(7, 8); // RX, TX
// Your ESP8266 baud rate:
#define ESP8266_BAUD 9600
ESP8266 wifi(&EspSerial);
void setup() {
// Set console baud rate
Serial.begin(9600);
delay(10);
// Set ESP8266 baud rate
EspSerial.begin(ESP8266_BAUD);
delay(10);
Blynk.begin(auth, wifi, ssid, pass);
}
void loop() {
Blynk.run();
}
此程式編譯後記憶體耗用情形 :
草稿碼使用了 17,736 bytes (57%) 的程式存儲空間。最大值為 30,720 bytes。
全域變數使用了 837 bytes (40%) 的動態記憶體,剩餘 1,211 bytes 供局部變數。最大值為 2,048 bytes 。
程式上傳後就可以按 Blynk APP 右上角的 Play 鍵執行, 這時右上角會變成正方形的停止鍵 :
按版面上的圓形按鈕就可以透過 Internet 遙控 Arduino 板上的 D13 LED 燈的明滅了. 這是透過 Internet 控制遠端 Arduino, 並不是在區網範圍內, 所以利用 Blynk 服務我們可以在全球任何地方透過網路控制遠端設備, 而且其反應速度非常之快, 幾乎是立即反應 (延遲大約 0.5 秒), 我很好奇它背後是用的是甚麼協定? 之前我用 HTTP 傳送控制訊息都要 2~4 秒左右.
序列埠監控視窗擷取訊息如下 :
[19] Blynk v0.3.8 on Arduino Nano
[520] Connecting to H30-L02-webbot
[3579] 0018000902
[10833] 192.168.43.151
[10863] Connected to WiFi
[16774] Ready (ping: 30ms).
[23262988] Ready (ping: 45ms).
如果要刪除專案, 須按 App 上方標題列的雙圈圈符號進入 Project settings 畫面, 拉到最底下, 按 Delete 鈕即可 :
按 "Generate Link" 會將此 App 的位址製作成 QR Code :
按底下的 Share 鈕可將此 App 分享到 Line, Email, Facebook, Twitter, Drobox 等軟體, 收到分享連結的人如果也安裝了 Blynk 程式, 那他們也會擁有你設計的專案 App, 可以控制他們自己的裝置 (不會控制你的裝置, 因為他們收到的 App 有自己的金鑰, 我們只分享 Blynk App 中的專案設計而已, 並不是分享金鑰). 但是如果你把自己的 Blynk 帳號密碼告訴別人, 則他以此登入 Blynk 後便能完全控制你的專案與設備喔.
收到分享 QR Code 的人只要有安裝 Blynk, 點右上方的 QR code 按鈕掃描圖案, 就會將專案完整複製進來了, 不需要自行設定元件 :
最後補充說明上面有提到不要從 Clone or Download 下載 Blynk 函式庫, 因為那樣下載的 blynk-library-master.zip 解壓縮後放在 libraries 下, 編譯上面的程式時會出現下面錯誤 :
In file included from C:\Users\Tony\Documents\Arduino\Blynk_test1\Blynk_test1.ino:34:0:
D:\arduino-1.6.6\libraries\blynk-library-master/BlynkSimpleShieldEsp8266.h:28:25: fatal error: ESP8266_Lib.h: No such file or directory
#include <ESP8266_Lib.h>
^
compilation terminated.
exit status 1
編譯時發生錯誤
# Where to I find “ESP8266_Lib.h” library?
# Connect to Blynk using ESP8266 as Arduino Uno wifi shield (Mac only)
# ESP8266 WiFi Configuration Library
如果要單獨用 ESP8266 做微控器, 可參考下列這篇 :
# ESP8266 Thing Development Board Hookup Guide
Blynk 也有論壇, 但不能用 Blynk 帳號登入, 需另外註冊.
裡面可以查到已發問的各種疑難雜症 :
# http://community.blynk.cc/c/projecthelp
也有各路英雄發表的作品 :
# http://community.blynk.cc/c/projects
# http://community.blynk.cc/c/projecthelp/l/top (精選)
例如下面這個專案就是利用 Blynk 與 wifi 控制自走車 :
# Robot with Esp8266 Shield and Arduino Nano
Play Store 上與 Blynk 類似的 App 也蠻多的 (可搜尋 blynk like app), 但看來 Blynk 似乎較容易使用 :
# https://play.google.com/store/apps/similar?id=cc.blynk
另外 Youtube 上有一個用 Blynk 控制的澆水系統 :
# Smart Modular Watering System using Blynk
其他專案 :
# Rain Warning Display on Mobile for your Home Garden
# WiFi Controlled Robot using Arduino
# ESP 8266 Mailbox Notifier using DeepSleep and Blynk (ESP 深度睡眠)
Blynk 是一個開源專案, 因此使用者可以下載原始碼打造自己的 Blynk Cloud Server, 參考 :
# Creating a Blynk Local Server In Windows
其他 :
# How to use Virtual Pins in Blynk
# One more system of autowatering of plants with use of ESP8266 and Blynk
# Weather and Security Station with Blynk
# 如何成為Open Hardware的 Maker( Arduino篇 ) (Arduino +OpenCV)
# How to Make an Effective IoT Dashboard without Coding
# Halloween RGB LED photon project with Blynk button control
# https://ifttt.com/
# Creating a Blynk Local Server In Windows
其他 :
# How to use Virtual Pins in Blynk
# One more system of autowatering of plants with use of ESP8266 and Blynk
# Weather and Security Station with Blynk
# 如何成為Open Hardware的 Maker( Arduino篇 ) (Arduino +OpenCV)
# How to Make an Effective IoT Dashboard without Coding
# Halloween RGB LED photon project with Blynk button control
# https://ifttt.com/
71 則留言 :
請問這個專題, Arduino Nano 與 ESP8266 ESP-01 Wifi 模組 的接線是如何接 ?
謝謝
請參考下面這篇的電路圖 :
http://yhhuang1966.blogspot.tw/2016/06/arduino-esp8266-ntp_14.html
需要一顆 AMS1117 3.3V 穩壓 IC (用 UNO 的 3.3V 供電應該勉強可以, 但可能不穩), 以及 1K+2K 電阻分壓器給 ESP8266 的 RX. 其中 10K 電阻與切換開關不需要 (那是模組切換設定模式用的).
再請教 , 文中有提到, 因為UNO只有一組UART,需使用 SoftSerial 來模擬,如果程式中定義
SoftwareSerial mySerial(10,11); //建立軟體串列埠腳位 (RX, TX)
, 這樣在實際接線時 arduino pin 10(RX) 就要接 ESP8266 的 UXTD, arduino pin 11(TX)(分壓3.3V) 接 ESP8266 的 URXD
,剛自學,問題有點多,謝謝指導
是的沒錯, Nano 與 ESP8266 的 RX 與 TX 要對接 (RX-TX, TX-RX), 但 Arduino 的 TX 輸出 5V 需經過分壓電阻才能接到 ESP8266 的 RX, 直接相連可能燒毀, 即使沒有立即壞掉, ESP8266 也不長壽. 用 220 與 470 歐姆分壓也是可以的, 5*220/690=3.4V. 我後來改用 D7,D8 做軟體序列埠, 因為這兩隻腳沒有特殊用途.
請教狐狸所長:
我可以用MAGE2560+CC30000WIFI模組實驗嗎???
可以的, Blynk 函式庫有支援 CC3000 晶片的 WIFI 模組, setup() 與 loop() 程式完全一樣, 只是匯入之函式庫不同, 要改為如下 :
#define BLYNK_PRINT Serial // Comment this out to disable prints and save space
// These are the interrupt and control pins for СС3000
#define ADAFRUIT_CC3000_IRQ 3
#define ADAFRUIT_CC3000_VBAT 5
#define ADAFRUIT_CC3000_CS 10
#include
#include
#include
大於等於要改為 latin-1
#define BLYNK_PRINT Serial // Comment this out to disable prints and save space
// These are the interrupt and control pins for СС3000
#define ADAFRUIT_CC3000_IRQ 3
#define ADAFRUIT_CC3000_VBAT 5
#define ADAFRUIT_CC3000_CS 10
#include <SPI.h>
#include <Adafruit_CC3000.h>
#include <BlynkSimpleCC3000.h>
為何現在都是arduino直接連接ESB8266,中間不需要再增加USB TO ㄒㄒL?
因為已經使用軟體序列埠來模擬了, 所以不需要, 只要注意 ESP8266 的輸入 LEVEL 為 3.3V 即可, 所以才需要 1K+2K 分壓器饋送 Arduino 的 TX 給 ESP8266 的 RX.
現在 UNO R3有出新的板子(UNO R3 SMD 開發板),廠商是說在WIN8不易當機(在盜版 win7 win8 系統上無法安裝驅動問題),想請教,我是要買這個UNO R3 新板本,還是只需購買舊板本即可,或是甚至只需購買 NANO即可.
我的需求很簡單,未來只是想透過手機或電腦,來監識與控制家中魚缸的 pH,溫度,TDS,溶氧量, 及射影機影像,
不知這樣單個arduino是否可以做到, 或是需要多個 arduino併聯使用, I/O port 才夠使用, 謝謝指導.....
再請問, 現在UNO R3有出新板子(UNO R3 SMD 開發板),廠商說新版可解決WIN7,WIN 8 抓不到USB driver的問題,我是要購買此新板,還是購買舊板的 UNO R3 即可,甚至購買 NANO 就可以用了 .
我的需求很簡單,只是要使用手機監測與控制家中魚缸的pH,溫度,TDS,溶氧量,攝影機, 不知這樣單個 arduino 的 I/O port 是否夠用,或是需要多個 arduino 併聯使用,謝謝指導
再請問, 現在UNO R3有出新板子(UNO R3 SMD 開發板),廠商說新版可解決WIN7,WIN 8 抓不到USB driver的問題,我是要購買此新板,還是購買舊板的 UNO R3 即可,甚至購買 NANO 就可以用了 .
我的需求很簡單,只是要使用手機監測與控制家中魚缸的pH,溫度,TDS,溶氧量,攝影機, 不知這樣單個 arduino 的 I/O port 是否夠用,或是需要多個 arduino 併聯使用,謝謝指導
貼了好幾次問題,為何都消失了,系統怪怪的, 請問有無 LINE ID, 想請教老師
是的, 我在被刪除的留言裡有看到, BLOGGER 為何會自動刪除留言呢? 我還以為是您刪的呢! 您的問題回答如下 : 我覺得便宜體積小的 NANO 就夠用了, 不用買最新的, IO PORT 應該夠用, UNO 與 NANO 的 IO 數一樣, 功能相同.
請問,做好的BlyNK APP經由LINE 分享給別人,
程式中的基地台密碼及帳號,需要重新設定嗎?
分享出去的是專案的設計而已, 例如用了哪些元件, 參數如何設定等, 並非分享專案本身. 在 Line 或臉書下載你分享的專案的人無法存取你的設備, 無線基地台 ssid 與 pwd 更不可能, 因為那是寫在 Arduino 裡面的韌體中, 專案裡沒有這些資訊. 參考 :
http://yhhuang1966.blogspot.tw/2016/08/blynk.html
第一張接線圖的D4,有接開關控制高低電位,主要在控制8266的設計或執行模式,請問老師,大作中那裏有更詳細的說明,謝謝指導
請參考這篇 :
http://yhhuang1966.blogspot.tw/2016/06/arduino-nano-esp8266.html
這樣,如果專案做好後,移到不同的WIFI基地台,ID及PW還有金鑰,不就要重新修改再上傳至arduino,是否有方法可解,否則end user 是不會修改的
中間有一些變動, 完結篇參考 :
http://yhhuang1966.blogspot.tw/2016/07/arduino-nano-esp8266.html
沒錯, 這就是 D4 腳所接的那個開關的用途了. 切到 LOW 重開機進入基地台設定模式, 打開 WIFI, 連線 ESP8266 無線基地台, 打開手機瀏覽器, 連線 192.168.4.1, 輸入 SSID 與 PWD 即可, 切回工作模式重開機即可. 參考 :
http://yhhuang1966.blogspot.tw/2016/06/arduino-nano-esp8266.html
謝謝老師,剛初學,那篇程式有點大,主要是從LOW那開始看,並對ESP8266下了ㄧ堆AT指令,有點吃力,不懂再請教,看老師的文章,很詳細也很有系統,一點都不藏私,謝謝+感激
謝謝老師,剛初學,那篇程式有點大,主要是從LOW那開始看,並對ESP8266下了ㄧ堆AT指令,有點吃力,不懂再請教,看老師的文章,很詳細也很有系統,一點都不藏私,謝謝+感激
請教一下版主,文中有提到這篇Blynk與wifi控制自走車:# Robot with Esp8266 Shield and Arduino Nano
他裡面使用NANO為啥沒用SoftwareSerial也能直接連結ESP8266,因為我有複製他的code去用無法編譯,想請教一下是哪裡有問題??
請教一下版主,你文中有提到這篇:這個專案就是利用 Blynk 與 wifi 控制自走車 :
# Robot with Esp8266 Shield and Arduino Nano
他使用NANO但卻沒有使用SoftwareSerial與ESP8266,我也複製他的code但卻無法編譯,請教一下問題在哪?
他是直接用硬體序列埠與 ESP8266 介接, 沒有用到軟體串列埠 (底下有接線圖). 他應該是先把程式上傳給 Nano 再跟 esp8266 接線後送電. 我們因為要保留硬體序列埠給 USB 偵錯用, 所以改用軟體序列埠與 ESP8266 溝通. 他的程式要改一下才能用在軟體序列埠.
感謝版主回應,我剛學不久很多還不識很清楚.
我再請教一下如果用他的直接用硬體序列埠與 ESP8266 介接,是否就節省了2個port,但USB偵錯有什麼影響嗎?
還有如果我用他的方式硬體序列埠直接接ESP8266為什麼連編譯都不行?(只有連接NANO未接ESP8266)
感謝版主,非常抱歉我剛接觸不久,有些地方不懂再請教你一下,
用硬體序列埠與 ESP8266 介接,是不是就能節省2個ports?
這樣就不能用USB偵錯會有什麼影響嗎?
但用他的接線圖與Code卻無法編譯成功??
感謝版主,非常抱歉我剛接觸不久,有些地方不懂再請教你一下,
用硬體序列埠與 ESP8266 介接,是不是就能節省2個ports?
這樣就不能用USB偵錯會有什麼影響嗎?
但用他的接線圖與Code卻無法編譯成功??
不好意思再請教一下,為什麼你們的電源輸入都接5V沒接Vin ??
電路圖中的 5v 就是 vin 經穩壓後的結果. 編譯失敗要看底下的 error message 判斷.
參考 : http://forum.arduino.cc/index.php?topic=84978.0
其中這兩行是不是有誤
EspSerial.begin(ESP8266_BAUD);
是不是要改成
Serial1.begin(ESP8266_BAUD);
另一個
Blynk.begin(auth, wifi, ssid, pass);
是不是要改成
Blynk.begin(auth, ssid, pass);
請指導, 謝謝
Serial1 是使用硬體序列時用, 已被我 remark 掉了. 程式碼都正確, wifi 不傳給 begin() 動不了.
老師您好 我現在有出現這樣的狀況後就不動了
[19] Blynk v0.4.0 on Arduino uno
[520] Connecting to LINTIE
Failed to disable echo
Wifi有接到,孢率也是9600
SDK版本也是 0018000902(用Realterm查詢的)
有去討論版看很多人也有這樣的狀況,
大家都是說firmware版本問題,可是我的跟老師您的一樣
現在就卡在這邊,Thinspeak 網站之前也測試成功了。
老師您好,我也有下在Blynk 0.4.0版本,
也照上面的動作繼續做,但與Blnk討論版上的大家有出現一樣的問題
就是Failed to disable echo。
版上的說法是更新AT的版本,可是我的版本跟老師一樣。
我有用Realterm測試版本也與老師一樣是0018000902
[19] Blynk v0.4.0 on Arduino Uno
[520] Connecting to XXXXX
[1068]Failed to disable ech
這之後就不動作了,手機端也依值顯示Uno未連接,
想請問老師遇過這種問題嗎?
老師您好,我也有下在Blynk 0.4.0版本,
也照上面的動作繼續做,但與Blnk討論版上的大家有出現一樣的問題
就是Failed to disable echo。
版上的說法是更新AT的版本,可是我的版本跟老師一樣。
我有用Realterm測試版本也與老師一樣是0018000902
[19] Blynk v0.4.0 on Arduino Uno
[520] Connecting to XXXXX
[1068]Failed to disable ech
這之後就不動作了,手機端也依值顯示Uno未連接,
想請問老師遇過這種問題嗎?
老師您好,我也有下在Blynk 0.4.0版本,
也照上面的動作繼續做,但與Blnk討論版上的大家有出現一樣的問題
就是Failed to disable echo。
版上的說法是更新AT的版本,可是我的版本跟老師一樣。
我有用Realterm測試版本也與老師一樣是0018000902
[19] Blynk v0.4.0 on Arduino Uno
[520] Connecting to XXXXX
[1068]Failed to disable ech
這之後就不動作了,手機端也依值顯示Uno未連接,
想請問老師遇過這種問題嗎?
老師您好,我也有下在Blynk 0.4.0版本,
也照上面的動作繼續做,但與Blnk討論版上的大家有出現一樣的問題
就是Failed to disable echo。
版上的說法是更新AT的版本,可是我的版本跟老師一樣。
我有用Realterm測試版本也與老師一樣是0018000902
[19] Blynk v0.4.0 on Arduino Uno
[520] Connecting to XXXXX
[1068]Failed to disable ech
這之後就不動作了,手機端也依值顯示Uno未連接,
想請問老師遇過這種問題嗎?
老師您好,我也有下在Blynk 0.4.0版本,
也照上面的動作繼續做,但與Blnk討論版上的大家有出現一樣的問題
就是Failed to disable echo。
版上的說法是更新AT的版本,可是我的版本跟老師一樣。
我有用Realterm測試版本也與老師一樣是0018000902
[19] Blynk v0.4.0 on Arduino Uno
[520] Connecting to XXXXX
[1068]Failed to disable ech
這之後就不動作了,手機端也依值顯示Uno未連接,
想請問老師遇過這種問題嗎?
抱歉, blogger 會吃留言 (因含有其他 html 碼).
這個 "Failed to disable echo" 我也有看過, 但是沒有影響我的實驗耶! 參考 :
http://yhhuang1966.blogspot.tw/2016/09/blynk.html
這就奇怪了, 有空我也來重作看看.
感謝老師回覆,不知道是不是燒錄的AT版本不同,APP
[19] Blynk v0.3.8 on Arduino Uno
[520] Connecting to oit11223
[1536] Failed to disable Echo
手機也寫未連接上Arduino
老師您好:
想請教您,
我使用Blynk做智慧電表的監控
那監控的數據資料可以直接從Blynk撈取出來嗎?
還是得自建Server才能?
你好~請問 Blynk 設計完後可以產生一個 .apk 檔來安裝嗎? 還有在設計的過程可以放入一個背景圖片嗎? Thanks~
感謝提問, 我翻遍其教學文件沒有發現這個功能喔! 可能它本身就是 app, 所以沒必要把自己包含設定值打包輸出為 app 吧! 此 app 我也沒找到可以自訂背景圖功能, Blynk 論壇上也有人建議增加此功能.
謝謝你~
你好, 我昨天剛買了一塊"WeMos D1"版子想用"Blynk"來進行手機 APP遠端遙控"WeMos D1", 雖然我用wifiscan測試"WeMos D1"是可以在監視窗看到有出現正確的結果, 可是當我複製您的程式要進行上傳到版子的時候, 一直出現錯誤 exit status 1 開發版WeMos D1 編譯錯誤 (不管是選D1 Retired 或是選 D1 R2 & mini都是一樣的結果, 不知道是哪裡出了問題? (授權碼跟WIFI 帳密都有改成我的)
我沒用過 WeMos, 但資料顯示它使用 ESP8266 當主控, 所以跟我使用 ESP8266 當 WIFI 擴充板用法不同. 建議 WIFI_BOARD 選項中改用 ESP8266_Standalone 試試看.
我選了範例中的->blynk->boards_wifi->ESP8266_Standalone 進行上傳後, 好像甚麼都沒發生!
code如下 :
-----------------------------------------------------
#define BLYNK_PRINT Serial
#include
#include
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YourAuthToken";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";
void setup()
{
// Debug console
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
------------------------------------
然後直接用老師您的code複製取代掉這個原本的code(並修改了授權碼與WIFI帳密), 再次進行上傳, 出現以下錯誤訊息 "'wifi' was not declared in this scope", 請問這個錯誤該如何解決呢?
Standalone 模式的程式寫法可能不同, 抱歉, 我一直都用 Arduino 主控, 目前尚未單獨使用 ESP8266 做主控, 所以沒辦法給建議, 等我回頭有空單獨使用 ESP8266 測試時再來研究這問題囉.
Hello,
我動手複製了您的實驗過程
1. 軟硬體: Arduino 1.6.7, nano ATMega328, ESP8266, 韌體改燒錄 0018000902, baudrate 9600,
2. 測試程式 上傳溫溼度到 ThingSpeak :成功
3. ESP8266_Shield 範例程式, 跟您一樣 from Blynk library. 試了超過10次吧, Error Message 總是 [3603] Failed to disable Echo
以您豐富的學識, 請提示一下, 有什麼步驟可能犯錯誤呢.. 我真的是太頭疼了!!
事實上我實驗過程中也出現過這個 Failed to disable Echo 訊息, 但沒影響功能哩! 參考 :
http://yhhuang1966.blogspot.tw/2016/09/blynk.html
我覺得應該是韌體版本的關係. 參考下面這篇談到是跟 BAUD RATE 有關, 不同版本韌體預設 BAUD RATE 確實可能不同 :
https://community.blynk.cc/t/solved-failed-to-disable-echo-problem/3955/11
"The important part was this: when using the wrong Baud rate for the ESP in the sketch, I got the "Failed to disable Echo" message. Thus, this message may also just indicate that you're using the wrong Baud rate. Try connecting directly to the ESP using an FTDI cable and Putty and see what Baud rate works for the AT command interface and then transfer that to the sketch."
請問我要如何多隻手機以blynk.控制一臺arduino,也就是auth token如何複製到多個APP上。謝謝。
您好,想請教一個讓 8266 進入deepsleep的問題
針對單獨 8266 ESP-12 板子而言(不是D1或是其他..有arduino的板子)
除了用machine.RTC()及machine.deepsleep()可定期喚醒8266 ESP-12 外.
還有什麼方法可讓 8266 ESP-12 進入 deepsleep 呢 ? (如用IRQ方式)
謝謝!
Dear Jason,
很抱歉我還沒時間對睡眠功能進行測試, 我有三塊 ESP-12, 得空做過測試後再公布測試紀錄.
Dear Tony,
謝謝,您的回覆。
我測試過RTC方式,是可以正常運作。
但網路上是有提到可以使用pin change方式來,喚醒deepsleep 但還不知如何測..
或是方便以mail方式跟您請教呢
期待您的測試
我也希望能抽出時間測試, E-mail : tony1966@ms5.hinet.net
你好,我想請問我是用Uno+esp連Blynk
但是在監控式窗會反覆一直ready 跟 login timeout
不知道是什麼問題一直連不上blynk cloud
這應該是無法登入 blynk 平台, 可能要檢查一下您 blynk 帳號的驗證碼是否正確.
謝謝, 已經發現問題解決了
原來是baud rate的問題
原本115200改成9600就可以連線blynk了
那就太好了, 感謝分享.
您好,我有一些其他相關blynk與arduino 方便Email嗎 ..
Hi, tony1966@ms5.hinet.net
你好,請問你可以做新版的blynk嗎,我的專題需要用到他 謝謝
好久沒用 Blynk 了, 原來有新版的. 因為很忙, 我只能抽時間來玩看看, 您是用 Arduino 嗎?
對的
對的
張貼留言