« 2019年3月 | トップページ | 2019年5月 »

2019年4月

2019年4月16日 (火曜日)

M5Stackで雑IRモジュール&TVリモコン

M5stackirmodule

 M5StickCで赤外線リモコンを作っていたのだけど、UIまわりが面倒なので、M5Stackでやり直し。

 UIまわりはメニューが簡単にできる M5Stack TreeView menu UI library を使用。

 モジュールの作り方とか、スケッチの詳細は後ほど。

続きを読む "M5Stackで雑IRモジュール&TVリモコン"

| | コメント (0)

2019年4月15日 (月曜日)

M5Stackで赤外線リモコン 家製協(AEHA)フォーマット

 M5StickCで赤外線リモコンの続き。ほぼ同じコードをM5Stackで動かそうとする。そこで気づいた話。Panasonicで使われる家製協(AEHA)フォーマットがうまく動かないという話だ。

 前回もなんかおかしいとは思っていた。東芝のTV、REGZAは問題なく動く。しかし、PanasonicのブルーレイレコーダーDIGAがうまくいかない。JavaScriptでRawDataを作ってM5Stackに送るのは問題ないのだが、カスタムコード+コマンドデータを送る方法だとだめなのだ。

 ライブラリはこれ。前回紹介したやつ。
 SensorsIot/Arduino-IRremote: Infrared remote library for Arduino: send and receive infrared signals with multiple protocols

 これの sendPanasonic を使うのだけど、うまくいかない。

 数回送って、たまに反応する、みたいな感じだ。10回中9回は空振りする感じ。

続きを読む "M5Stackで赤外線リモコン 家製協(AEHA)フォーマット"

| | コメント (0)

2019年4月10日 (水曜日)

M5StickCで赤外線リモコン

 M5StickCは赤外線のLEDを内蔵している。となれば、家電リモコンを作るしかないのです。

 1年くらい前からESP8266でリモコン作りをしているので、カンタン。と思ったものの、ESP32搭載のM5StickCはいろいろ違うのでした。そうこうしているうちにまず試したのがこんな感じ。


 M5StickC IR Remote

 M5StickCのサンプルにIRを使ったものがあり、一見よく知ってるライブラリっぽいと思ったのですが、どうやってもうまくいかず(使用するリモコンコードの並びが違うっぽい)。そこで、今まで使ったことがあるライブラリから物色。

続きを読む "M5StickCで赤外線リモコン"

| | コメント (0)

2019年4月 9日 (火曜日)

ESP32でWiFi Manager、設定を消去

 M5StickCをテスト中。ウェブサーバー機能を使うので、WiFiのSSIDなどの設定をカンタンにできるWiFi Managerを使用。いろいろうまくいかない。
 参考にしたのはこれ。

ESP32 WiFiのSSID、パスワードを外部から設定しアクセスポイントに接続 - Qiita

 WiFi Manager for ESP32 zhouhan0126/WIFIMANAGER-ESP32: wifimanager-esp32 を使ってみるが、うまくいかない。コンパイルができない。いろいろ探して、これにした。Brunez3BD/WIFIMANAGER-ESP32: wifimanager-esp32

 で、場合によっては一度設定したSSIDやパスワードを消去したいこともあろうと思い調べる。最初のリンクにはこうある。

記憶されたAP情報はESP32では以下のメンバ関数ではクリアできない。
wifiManager.resetSettings();
EEPROM情報をクリアする場合はESP-IDFのプロジェクトライブラリで以下のコマンドを実行する。
$ make erase_flash

 ESP32では、スケッチ側でできないのか? 参った。

 さらに調べる。 WiFi.disconnect(true); でOKという情報もあったけど、うまくいかない。とか思ってたら、ここにあった。

 WiFi.disconnect(true) problem · Issue #400 · espressif/arduino-esp32

 WiFi.disconnect(true) のあとに WiFi.begin("0","0"); するのがポイントらしい。

 ということで、書かれているように、情報を消去してからリセットすることに。リセットのあとにdelayを入れるのも重要らしい。

  WiFi.disconnect(true);   // still not erasing the ssid/pw. Will happily reconnect on next start
  WiFi.begin("0","0");       // adding this effectively seems to erase the previous stored SSID/PW
  ESP.restart();
  delay(1000);

 あとは、メインの処理を書いていくだけだ。がんばろう。

| | コメント (0)

« 2019年3月 | トップページ | 2019年5月 »