だいだいいろ

IoTなどの技術を楽しむのと、たまに株を分析してみたり。

Smart Home IoT Blynk導入 2 解決編

前回、Blynk導入にあたり、ArduinoのSketchをBlynk Exampleから生成したものの、コンパイルができず。

 

散々調べた結果できたので、続きから。

 

前回のエラーは 

Arduino: 1.8.12 (Mac OS X), Board: "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

sketch_may06a:41:25: fatal error: ESP8266_Lib.h: No such file or directory
compilation terminated.
exit status 1
ESP8266_Lib.h: No such file or directory

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

要は、ライブラリ(BlynkESP8266_Lib.h)が足りないということ。

Manage Librariesのインストールでは入らないのであれば、マニュアルインストール。

 

まず、Blynk の最新版のzipをダウンロード。

github.com

 

zipを解凍

https://lh3.googleusercontent.com/9AzXZErTyYlrOOne0YkJjMoAasXEdOHlleOqinp0gO7hibE8UX02b0ZpywGsS_2qtHgR1It37R_uATPOwRFwzCH_BpDzzposcYxBl5z-V0Vc0SHeKJQEm6fS5DH04WIpfgDBigzq09UXzNZiRmyLhSN4f3iK3BV8hmmOf8C6M4Ri1zCP6qH0B2CcZryUZSR1BDyzcDlQdI6a81DyVlEyh4SA2CBrST0dPYaVaPG6t5wkdE_yZLDdys0i2qmGNWuZ2a1S-g0EikREni2BLMGjAHVbzKUzDjH9O6KbFQlt7GIusJI0jO3YbSMcHwjsLs7zhjLPVagdXcFX070AEYrmi1ZYdGc9BpLU3zQg8OWks8vrTTS8KWPmr8aa9YS4aBs1Q52gG5-WrhzkQDrvNgKhqN9BA8FD27sqPqC_WfTEiTT4x5r0DoLCF0QSh6lucglLU4j6MBNdxeHEOqP4vvM115yRN4xIH-bZTp0e1Gde7Cx7mnmyw1Kt8dQxzkL82Nxoh94QSUpu7VAnlIV07CgdxAx-zzprZUxx-OwnoW9xUiIfS9f6Q0oQ6zBzkcHUaJvpPzOEyHwvHLa8hwkU-F3o0Ywqd-vWc5x9RAU0jzNQFqWPGBRb3-Ex8jrHc-mQYo-DnOHI1HAdwCC8Uie7FAUr3vRmxS0Uds3prPYu8AYxrxzLB7rc1WPAu89002T8WJlnTWUFZMoszZqDLpYv2VYSg8B2LYbSdvsH63ecR4U5xCLvdPeqP2N1Qg=w572-h404-no

 

BlynkESP8266_libがあり、これはManager Librariesではインストールされていない。

ArduinoのlibrariesディレクトリにBlynkESP8266_libのフォルダ自体をコピー。

librariesディレクトリは

To find the location of your sketchbook folder, go to top menu in Arduino IDE:
Windows: File → Preferences
Mac OSArduino → Preferences

 で確認。

 

https://lh3.googleusercontent.com/muBwfFWg1OLJE4sBk59bCca6Ij8DHt8VomMsGwZSYG5oUxLr83R1HzHUBPiTgWrug_JE_nHhlXeBS7iSjJgailNSi1DbXrUDCv6aTCpJhIN0CTGzwR5NowZnvVEOxsqj7M3KJOGYAWavRSoduLHadP6mXiJ75Z1TXimsnKN37k6YYuxYSfdqKMcYk4XEBhanCSPa-u1bkAfsA020xtqYJ4lNB6rFg7OdoeKTaxidMvL64nd-ev5wYuD3dGysLRXgHOQARooGI553lL2qdjQ_edqWaFbkVo0F7A6I11FgGo7NK7upLQk_Yor5J4TYFy3SIQ-Q8qhO8FDVb8LreTKnG8119ksKJZq5OJeHgCema_yj0SfHwV2jec8sMhAbXJVu2OQqYqlwFJV_r3PZQL-uB3igj1RLb4D211veYNxGpxFykmjkGlyb1AD6tv8Ecxr_72-OVM4Yd9p-upNPbHNC_BNqb20wwhpRxrQPHcSzJv-NLRavTnmpoAC2NQyFP22jtkt5k9OWeg2wG2A0_9n7UCk_qTdBeeqhIj58tJEKjDy0KxizLDl6NQulQxW7Z66wVA921qUSNp5RnbyDdp9m6LfMfvdhtED6YNXFimyYCOFjAiDs0Xh_hiNuQFgS-P2u8_tHv-EQwyw8WR0JCxBFJHBumX6laxrw94ZYrZo8otkpd-9iKomW1ANg_O3LkcdRJcoCOGimZygiy8VpOaojUYCMC8p7CHpOdQ5lWOrgSJu_LlbCXeQkRw=w1286-h404-no

 

これでインストール完了。無事コンパイルが通った。

しかし。アップロードすると、うまく動かない。

 

シリアルモニターをみると


11:47:49.537 -> connecting to ESP 1connecting to ESP 2[10] 
11:47:49.609 ->     ___  __          __
11:47:49.609 ->    / _ )/ /_ _____  / /__
11:47:49.644 ->   / _  / / // / _ \/  '_/
11:47:49.679 ->  /____/_/\_, /_//_/_/\_\
11:47:49.715 ->         /___/ v0.6.1 on Arduino Mega
11:47:49.750 -> 
11:47:50.182 -> [629] Connecting to aterm-36be98-g
11:47:51.201 -> [1640] ESP is not responding

ESPのレスポンスがない??? 

ググるとどうも、Pinアサインのようだ。

// Hardware Serial on Mega, Leonardo, Micro...
#define EspSerial Serial1

// or Software Serial on Uno, Nano...
//#include <SoftwareSerial.h>
//SoftwareSerial EspSerial(2, 3); // RX, TX

 Megaだけど、Mega2560はSerial1じゃないの?

過去のLession SketchをみるとSoftwareSerial部分は

#include "SoftwareSerial.h"
SoftwareSerial softserial(A9, A8); // RX, TX

なので、softwareSerialを変更。

softserial と EspSerialで文字列が違うので合わせる。 


/*************************************************************
  Download latest Blynk library here:
    https://github.com/blynkkk/blynk-library/releases/latest

  Blynk is a platform with iOS and Android apps to control
  Arduino, Raspberry Pi and the likes over the Internet.
  You can easily build graphic interfaces for all your
  projects by simply dragging and dropping widgets.

    Downloads, docs, tutorials: http://www.blynk.cc
    Sketch generator:           http://examples.blynk.cc
    Blynk community:            http://community.blynk.cc
    Follow us:                  http://www.fb.com/blynkapp
                                http://twitter.com/blynk_app

  Blynk library is licensed under MIT license
  This example code is in public domain.

 *************************************************************
  WARNING!
    It's very tricky to get it working. Please read this article:
    http://help.blynk.cc/hardware-and-libraries/arduino/esp8266-with-at-firmware

  You’ll need:
   - Blynk App (download from AppStore or Google Play)
   - Arduino Mega 2560 board
   - Decide how to connect to Blynk
     (USB, Ethernet, Wi-Fi, Bluetooth, ...)

  There is a bunch of great example sketches included to show you how to get
  started. Think of them as LEGO bricks  and combine them as you wish.
  For example, take the Ethernet Shield sketch and combine it with the
  Servo example, or choose a USB sketch and add a code from SendData
  example.
 *************************************************************/

/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial


#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[] = "JoG2IGS8QpJHDbIshSYOPbyao_TZL7BB";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "aterm-36be98-g";            // your network SSID (name)
char pass[] = "5017be9e5e30d";        // your network password

// Hardware Serial on Mega, Leonardo, Micro...
//#define EspSerial Serial1

// or Software Serial on Uno, Nano...
//#include "softwareserial.h"
//SoftwareSerial EspSerial(2, 3); // RX, TX

#include "SoftwareSerial.h"
//SoftwareSerial softserial(A9, A8); // A9 to ESP_TX, A8 to ESP_RX by default
//SoftwareSerial EspSerial(3,2); // RX, TX
SoftwareSerial EspSerial(A9, A8); // RX, TX


// Your ESP8266 baud rate:
//#define ESP8266_BAUD 38400

#define ESP8266_BAUD 9600

ESP8266 wifi(&EspSerial);



void setup()
{
  // Debug console
  Serial.begin(9600);

  // Set ESP8266 baud rate
  EspSerial.begin(ESP8266_BAUD);
  delay(10);

  Blynk.begin(auth, wifi, ssid, pass);

  // You can also specify server:
  //Blynk.begin(auth, wifi, ssid, pass, "blynk-cloud.com", 80);
  //Blynk.begin(auth, wifi, ssid, pass, IPAddress(192,168,1,100), 8080);

}

void loop()
{
  Blynk.run();
  // You can inject your own code or combine it with other sketches.
  // Check other examples on how to communicate with Blynk. Remember
  // to avoid delay() function!

  delay(1000);                        // stop the code for 1 second

}

シリアルモニターで動いた!!!!!!!!!!!!!


14:14:32.814 -> [9] 
14:14:32.814 ->     ___  __          __
14:14:32.850 ->    / _ )/ /_ _____  / /__
14:14:32.884 ->   / _  / / // / _ \/  '_/
14:14:32.920 ->  /____/_/\_, /_//_/_/\_\
14:14:32.920 ->         /___/ v0.6.1 on Arduino Mega
14:14:32.990 -> 
14:14:33.419 -> [599] Connecting to aterm-36be98-g
14:14:36.635 -> [3808] AT version:1.2.0.0(Jul  1 2016 20:04:45)
14:14:36.668 -> SDK version:1.5.4.1(39cb9a32)
14:14:36.704 -> Ai-Thinker Technology Co. Ltd.
14:14:36.738 -> Dec  2 2016 14:21:16
14:14:36.775 -> OK
14:14:37.730 -> [4907] Failed to enable MUX
14:14:42.931 -> [10106] +CIFSR:STAIP,"192.168.3.27"
14:14:42.965 -> +CIFSR:STAMAC,"cc:50:e3:e3:d6:02"
14:14:43.000 -> [10115] Connected to WiFi
14:14:53.439 -> [20604] Ready (ping: 59ms).

 

 アプリをみるとオンラインになった。

 

https://lh3.googleusercontent.com/Neh0oSyUeu_RSgE74y-_nqXwIwdUDgi6NNXBcCzx-i7lTiXbE_7e1MzjL8KqoP6o-5AoSPAprm0GJfOWBQsBnMn4FEoPCCEeVUCM3gQzD0kbl7O9O66K9NxkZqxyWi0FjZuUVrQ3mctZASCPZ2aNPjDA1aS2HTi8ONZZbFfmqj6EC-h7mjY8La1IfKoe0sxifLvFMspJHFNwKMzC5-KSJrDnCwjrooaGogUizjwPWxkVV07-_MZoWM1HnlUT42BYw3XEuJURu5e1QFgbgnjr4w13VqsGP6c9_lq5owsyJQ5u5XuhDrgACCf4bE5HlqI5tij8qEYo6IiPTzCXt5rXBIEBdBqUScy8Fcc_p7YtPUoCAwp_rLwsnbA4OwUel6LdU65RajM2CEihw2Ll3hFZYaDEA5Z9Nvf9sPkXrOnvK6TiD_rzfXwn-E9jP34rqJhw2EyObW4hS1M-sCkK_O3ylz7D67DVngDLuhcTIzUoDvcupgQM6w_14FKW2PjED-4WDCUOgV-xYDarSECKXiF1KCITyb44srWglNYKMecb5FayWxmckRj_sbl_jqhwwFi5tATyI8zVMHalQuC8C7V3lwFy2fHvM05bZRCEwnG_VX3Yil7PvySAXWJQ7aPHb4-bfJUptjmdQgFdriDUWHIyTfuBYuNYFhc1FTwcM-zN0wg7tj6cN_ZcZqKV-fVANEn0_m_NRuoH9ZvcWd9HygBJIWC2rMf0mAkkh5RRk5lvtPfztLL-TFl4eA=w830-h1474-no

 

 

 

ONを押すと黄色LEDが点灯

https://lh3.googleusercontent.com/e42Yqbwtu3ufH8a-w-e_iNhjwPtWOZrIkoWVcCu92PN5IJXONeQgo_9AK2w44l_v06tR6C96j14Q3XqCiuU8ktiNTrFlrY6zsMVnLpjptVgM38yVTCy4s1PfMkeLfVxS7FpcPLICYddu-W2sGQo1f0EyExQmFtPASjjPxCFiJfImVxVtZk0Lv-PpR-sxo9LfB5Dp8fB7QORYYp0Ucu4WYo-ia2eXnw7wTKIIpw4jgAx-jaYBkNnDO65j-SJbFjLIgf_Z-ZcdtM42hQrSzBdLxVTSTdMLbJRuQNyJDBxKGIp3Emv-jgxsmssL1ktiwKoFvIlY7KnK9FeCUOwNyNFBR4a6D2dDkQPneayb0SRbmkfzRAE2BKiwTmMYzs8uf6bQ3OPPoHa8n3K0MuejSm7akeyekBoVqoxePEy8EhjgJEF4SyukPD8ctbHVPAXIxxSZOs-gPhcMk0VdRwOcSKtZ8bbfG42_gb7tjUUmAu9J90k7PKIcRSYcyCJrb7VyZY7Ey_QurCUW1h3ORVmOtZHqM2UhfUJZk4qlZeyhaxAq7jPz9mmKxaeqQTQaKBfB7_nKI5MWaCLjFVFGk0EGJOjgMGLVQgMM-QUXfhWXjZChCy--2x23wdBtsLxA23WAdb_y1sxPDNWvI_aW3heWslsL0P-zGon6nTpHPfQMu8LGbkCbOX6N4vpi3yuhsJ9_ZKfUe3tUKkql6TKqVOVFOppURkEXPBqIwHGSd4U5CYfknNao3k5Nj9UJGA=w1106-h1474-no

ONを話すと黄色LEDが点灯

https://lh3.googleusercontent.com/FcYLKEXH5KdRsOkFke_ny1X9M4dS5oDT235ujZ7CMKBqWIwpYlhJYW-GQL22E-_QgcSl1KMROKBi0gzmW6nE3zT1onCie-5QdKNRYMgGiGkXaGghOomzy36fxBPPWhuHhpuvQ92uNLXpPs3g7WFnzkhIRmFa7_BKJwSaC1eMLRkceD6GyoKG9AOSRPPyfWGCA4WgFTIWQ5_Yp6T0WAzLyJehutLDLYXCcyyMJmMsoaf7nj3-Y5KW7p54niSf1M3N6CFoTc2TyvFp_O63hIz-nQZNSyUh_utZPosikoNuZnDYyGns7OYF7B-Z0oSS51nWXHmm8NXP1M6_-5d7M5e5MMWUX7JQjJ0e_t-40rMOxwpvCLfeOlu-9hFse3BSZVMYBj6Dgjb_aonAyeD44bOvEy1hF-G4XebLArw_CA4oH0SywejBNBwCE9-DdjLn1cRu4zhPU8Lds82iVffN1amtbD_0wlVAP9e9-yU6yI8FH3w7Wu_tqXLna1FC7ymGd_3AJ8soa8pphsRO0_0ipDdDsxcTM4PXVXbpjjGAwGNetdqJyXdZGeifTb2bBkc9AmuuPCHTYAabTCDECTxpdDU8DaX4Ibf9exT2gtDn2qK1INPzmwQy-Eo7KDdcoqb79BJzDhbJ57ow5IlKqiLyJSLIuOxVp83Q_P6jzzJIQWgHEYd3bUN59gY1V_FywWe0=w1106-h1474-no

 

お疲れ様でした。

 

How to Blynk with OSOYOO Smart Home IoT Learning Kit With MEGA2560