こんばんは。
今回はちょっとしたお知らせです。
最新版Arduino IDE がお勧めです。 1.6.8では1MB以上のSPIFFSファイルシステムアップロードがUSB-Serialではできません。 以下、昔の情報で、古い記事のままです。
今まで、ESP-WROOM-02 ( ESP8266 )をArduino IDE で開発するときに、バージョン 1.6.5 で開発しないとまともに動作しないと思ってました。
ボードマネージャーにESP8266ボードをインストールするためには、GitHubの Arduino core for ESP8266 WiFi chip のページからインストールするわけですが、つい最近そのページをチェックしてたら、解説で
Install Arduino 1.6.8 from the Arduino website.
とありました。
つまり、1.6.8 でOKだということです。(2016/3/26時点)
でも、実際に1.6.8を起動して、今まで使っていたライブラリをコピーしてもコンパイルエラーとなってしまってました。
しかし・・・・・
そのGitHub ページのIssues でそのエラーメッセージで検索していると解決方法が出ておりました!!!
こちらのページ(2016/3/26時点)→ https://github.com/esp8266/Arduino/issues/1387
これはWindowsパソコンに限られると思いますが、つまり、環境設定で追加のボードマネージャーURL でアドレスを入力して、ボードマネージャーでインストールし直してもダメです。
以下のようにあるフォルダを削除しないと動作しません。
以下の手順でフォルダを削除すると私のPCの Windows8.1 環境ではArduino core for ESP8266 WiFi chip は問題なく動作しました。
SPIFFSファイルシステムver0.20 も問題なく動作しました。
自作ライブラリのEasyWebSocket も問題なく動作しました。
ただ、他の環境では動作するかどうかはちょっと分かりませんので、皆さんに試していただいて、問題があるようでしたらコメント欄等でご連絡ください。
では、手順を説明します。
1.バックアップを取っておく
古いIDEを使っていたら、まず必ずライブラリ等も含めてバックアップを取っておいてください。
2.古いIDEをアンインストールする
インストーラーでインストールされた方はWindowsの「プログラムと機能」などでアンインストールできると思います。
そうでなく、ZIPファイル解凍しただけで使っていた方はIDEのフォルダごと削除してください。
3.Arduino15フォルダを削除
Windows8.1 の場合で説明します。
まず、下図のようにエクスプローラーの「表示」メニューで「隠しファイル」をチェックして隠しフォルダを表示させます。
そうしたら、AppDataフォルダを開き、Localフォルダを開きます。
C:\Users\(ご自分の名前フォルダ)\AppData\Local
その中のArduino15というフォルダがありますので、念のためバックアップを取っておいてください。
そしたら、そのフォルダを削除します。
もし、他にArduinoというフォルダがあったらバックアップを取っておいて削除します。
次に、同じようにAppDataフォルダのRoamingフォルダを開きます。
C:\Users\(ご自分の名前フォルダ)\AppData\Roaming\
同じようにArduinoやArduino15フォルダを削除します。
4.新たにArduino IDE 1.6.8 をインストールする
あとは、いつものように Arduino.cc のページ から1.6.8をダウンロードしてインストールします。
その後、最新のESP8266ボードをインストールします。
StableバージョンでもSPIFFSファイルシステム動きましたね。
また、IDEのライブラリをlibrariesフォルダにコピーし、toolsフォルダにSPIFFSファイルシステムもコピーしておいてください。
(SPIFFSファイルシステムについてはこちらを参照)
以上です。
SPIFFSファイルシステムは最新では0.20ですので、アップロードしてみてください。
それと、EasyWebSocketライブラリなどを使用していたらそれも試してみてください。
如何でしょうか?
上手く動作してくれたら幸いです。
ではまた・・・。
Amazon.co.jp 当ブログのおすすめ
コメント
いつも拝見し、感心いたしております。
さて、ArduinoIDE 1.6.8も問題なく稼働し、貴方のシリアルモニタでの日本語漢字出力を試してみました。
当サイトのサンプルスケッチでは問題なく変換されましたが、次の文字はおかしな変換になりました。
スケッチ:”シリアルモニタ日本語表示スタート”
変換表示:”シリアルモニタ日本�齦\示スタート”
原因として考えられるものがありましたら、ご教示下さい。
よろしくお願いいたします。
鈴木さん
当ブログをご覧いただきありがとうございます。仕事中でお返事おそくなり、申し訳ございません。
さて、文字化けの件ですが、当方の環境では確認できませんでした。
恐れ入りますが、どのブログ記事のサンプルスケッチを使われましたでしょうか?
それと、それぞれのライブラリのバージョンは最新でしょうか?
念のため、EasyWebSocketライブラリや、UTF8toSjisライブラリや変換テーブルなどを削除して、もう一度GitHubからダウンロードして再インストールしてみてください。
もしかしたら、古いバージョンのものを使用しているかもしれません。
再テストした結果、正しく表示されました。
私の使い方が間違っていました。お騒がせ委しました。
漢字変換用なのに、半角スペースを混ぜていました。
しかも、入れる場所、個数によって変換結果が変わります。
スケッチ:” シリアル モニタ 日本語 表示 スタート”
変換表示: “シリアル モニタ 日本語 表示 �Xタート”
なお、参考にさせて頂いたのは下記URLの記事で、最新
のものと思います。
https://www.mgo-tec.com/blog-entry-utf8-sjis-wroom-arduino-lib.html
今後とも、よろしくお願いします。
期待しております。
鈴木さん
なるほど、当方でも1度同じ症状がでました。
しかし、電光掲示板では正常に表示するんです。
何回か繰り返しているうちに、シリアルモニターにも文字化けしなくなりました。
どうやら、シリアルモニターとESP-WROOM-02との通信の相性があるのかもしれません。
まだ詰めて原因を突き止めておりませんが、電光掲示板で正常に表示されて、シリアルモニターで一部が文字化けするのならそこが原因ではないかと思います。
しばらく当方でも使ってみますが、また分かり次第お知らせしようと思います。
貴重なご意見ありがとうございました。