Arduinoを使った自己満足電子工作およびプログラミングを綴ったブログです。素人独学でいろいろチャレンジしてます。ここで記載しているソースコードは無保証です。@mgo_tec﻿メニューとウィジェットTwitterinstagramRSSお知らせ自作ライブラリESP32_mgo_tecを1.0.71に更新。(2020/02/10)自作ライブラリESP32_mgo_tecを1.0.70に更新しました。新型M5StackのIPSディスプレイに対応しました。詳しくはこちらの記事をご覧ください。ESP32のloop関数内はデフォルトでウォッチドッグタイマ無効でした。こちらの記事を修正しました。導入したため、右下にそのロゴが出ています。(2019/12/10)Google自動広告を停止し、従来の表示に戻しました。(2019/12/08)Googleさんのお勧めにより、AIによる自動配置広告をテスト中です。広告が多めに出ていると思いますのでご容赦ください。(2019/12/05)ESP32データシート独自和訳記事を新設しました。(2019/12/4)ESP32テクニカルリファレンスマニュアル独自和訳ページを更新しました。メモリやキャッシュ関連を追記しました。(2019/12/4)こちらの記事にコメント投稿があり、誤りを修正しました。Eventsスケッチ例を追記しました。Development版v1.0.4-rc1が出ていますよ。リリースされています。(2019/10/01)ESP32トラブルシューティング記事を更新しました。v1.0.3がリリースされました。ボードマネージャから更新できますよ!(2019/09/18)ESP32トラブルシューティング記事を更新。MD5エラーについて追加しました。Development版1.0.3-rc1がリリースされています。(2019/05/19)ESP32-WROOM-32のSPIFFSサイズアップ方法のこちらの記事に追記しました。場合、アップローダープラグインは1.0を使って下さい。(2019/05/06)ESP32とSSD1306のこちらの記事のソースコードを修正しました。正式リリースされました。(2019/04/17)電波時計関連のこちらの記事にLEDC(PWM)関数で作った別のソースコードを追記しました。(2019/04/04)LC共振回路の計算ツールページとRCローパスフィルタ回路計算ツールを作成してみました。リリースされています。デベロッパーサイトの再申請が必要になりました。こちらの記事も大幅変更しました。Developersページがガラッと変わりました。APIが上手く使えない場合、こちらを参照してください。(2018/08/19)先月号に引き続き、工学社さん技術情報誌I/O(アイオー)2018/04号にもこちらの記事を転載して頂きました。有難うございます!こちらの記事を工学社さんの技術情報誌I/O(アイオー)に転載していただけました。ありがとうございます!Make:Japanさんにこちらの記事が紹介されました。ありがとうございます。プロフィールこのブログはRapidSSLのSSL認証を取得しています。支援のお願い投げ銭感覚で気軽に支援していただけると嬉しいです。支援方法はこちらの記事参照。広告表示について当ブログでは広告表示しております。このブログの維持運営のためには必要不可欠です。Adsenseという広告配信サービスとAmazon.co.jpアソシエイトというアフィリエイト宣伝プログラムの参加者です。いうアフィリエイトサービスにも参加しました。いう情報がありました。以下のページを参照して、Flashメモリサイズを確認しておくことを強くお勧めします。Backpackを自作のWebSocketライブラリを使って、スマホブラウザからコントロールしてみたいと思います。スマートフォンのタッチセンサーと、ジャイロセンサーでコントロールしてみました。2色のLEDが1ドットに入っているので、別々のドットマトリックスとしてコントロールできます。以下の動画をご覧ください。はじめの方ではスマホのジャイロセンサー値で黄緑色のLEDで縦線と横線をコントロールしていて、その後にタッチ移動すると赤色の縦線と横線が表示されていると思います。動画で撮影すると赤色LEDがピンクっぽくなってしまいます。してもデジカメでは赤くなりません。これは仕方ないですね。実際はカツンと赤色です。黄緑色と赤色が交差するところ、つまりは同時に発光しているところはオレンジ色になります。これもデジカメではうまくオレンジ色が出ませんでした。これについて解説していきたいと思います。スポンサーリンク準備するものこのブログを初めて見られる方もいると思いますので、念のために説明しておきます。UNOでは動きません。チップが入っており、日本の電波法をクリアしたWi-Fi通信ボードです。Arduinoスケッチを書き込んでArduinoとして動かすことができる優れものボードです。いうものを使ってます。Science)とても売れていて、在庫切れの場合があります。スイッチサイエンスさんのホームページで入荷通知を受け取る設定もできますのでそちらも利用してみてください。2色LEDドットマトリックスはAmazon.co.jpのマルツオンラインさん販売があります。【902】エイダフルート(Adafruit)スマートフォンは出来るだけ最新の高速CPUのものを使ってください。Chromeできるだけ最新版を推奨します。うまく動かず、途中で通信切断されてしまいますのでお勧めできません。再接続すれば使えないことはないです。この辺はいつか改善したいと思いますが、今は原因が全く分かりません。解る方がいたらぜひ教えていただきたいです。接続する接続方法は前回の記事どおりですが、念のため載せておきます。データシートによると電源電圧は5Vが推奨ですが、3.3Vでも問題なく動作しました。1.6.5を使用してください。他のバージョンや、Arduino.orgページのIDEでは動きませんのでご注意ください。インストールしておいてください。これはこちらの記事を参照してください。記事が飛び飛びで大変申し訳ございません。ひとまとめにするのがとても大変なので、いつか時間に余裕ができたらやりたいと思います。スケッチ書き込み、およびコンパイル書込みする過去の記事にあるように、このEasyWebSocketライブラリではSPIFFSファイルシステムアップローダーを使って、サンプルスケッチのdataフォルダにあるspiffs_01.txtというファイルをESP-WROOM-02のフラッシュに事前に書き込む必要があります。下図のようにサンプルスケッチを開き一旦、名前を付けて保存しておきます。次にスケッチのフォルダを開きますdataフォルダを開き、spiffs_01.txtファイルをテキストエディタで開きます。メモ帳で開くと下図のようにいまいち改行がうまく表示してくれませんが、下図のようなところのIPアドレスをご自分の環境でESP-WROOM-02に割り当てたローカルIDアドレスに書き換えてください。したテキストエディタならばこのように表示されます。Bracketsを使ってます。保存したら、下図のようにアップローダーをクリックするとESP-WROOM-02のフラッシュに書き込みが始まります。書き込み終わっても何もメッセージは出ません。時間がかかりますので、気長に・・・。※このSPIFFSファイルシステムアップローダーは1度行えばOKです。すれば、SPIFFSメモリーに記憶されます。スケッチを修正したときも、その都度アップロードするする必要はありません。次に、先ほど開いたサンプルスケッチをすべて削除して、以下のソースコードをコピペします。コードを修正しました。"";がありませんでした。//HT16K33-28Wは8X8マトリックスLEDを2台まで制御できる。アドレスは0x70から設定する。Wire.endTransmission();}このコードをザッと説明します。8~9行目でご自分のルーター(アクセスポイント)のSSIDおよびパスワードに書き換えます。ライブラリの関数の使い方は過去の記事を参照してください。Eyを文字列にして、’0’という文字列も足して3桁の文字列にしてESP-WROOM-02に送信していることです。過去の記事のソースもある程度使いまわせるようにしてみました。いう文字列を付加して送信します。すると、201~212行で受信した文字列を分類できるようになります。119~123行目にあるように同じ値をブラウザが送信しないようにしています。同じ値は通信トラフィックの無駄ですので、できるだけ排除します。223行目~250行目ではBi-ColorマトリックスへのI2C制御送信を工夫しています。228行目~230行目でターゲットのビットの縦1列を点灯させてます。232行で、ターゲットのビットの横1列を点灯させてます。LEDドライバのHT16K33はビットを送信したら、それを延々と保持しますので、LEDを光らせたらゼロというビットを送って消さなければならないわけです。以上、ホントにザッとした説明です。WebSocket通信について興味ある方はこちらの記事とこちらの記事を参照してみてください。このライブラリはこれらを全て盛り込んであります。以上、ソースコード入力ができたら、コンパイル書き込みしてみましょう。したらスマホのブラウザのURL入力欄にESP-WROOM-02のIPアドレスを入力すると、上記の動画のように動くと思います。うまく動きましたでしょうか?とりあえず、今回は以上です。毎回思うことですが、SPIFFSファイルシステムを記事で説明すると結構たいへんで、長くなってしまいます。記事を上げないと自分の体力を消耗しまくってしまいます。WebSocketライブラリがバージョンアップして、格段に使いやすくなりました。現在BETA1.3です。こちらのページをご覧ください。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。Privacy-Policy。