2024年10月12日
AQARA G4の取り付け方法(補足説明)
AQARA G4の取り付け方法について、もう少し補足しておきたいと思います。

AQARA G4は、残念ながら日本のドアホンのサイズと異なります。
こちらは縦長、日本のドアホンは横長ということで、サイズが合いません。
特に、マンションであれば、外壁とドアホンがサイズが合わないために隠せず、不恰好になってしまいます。
それを隠すためにアクリル板を使用することにしました。
私ははざいやというネットショップでアクリル板をオーダしました。
ここのお店、オーダーメイドのサービスを提供していて、Web上で図面が書けるようになっていて、その図面通りに製作してくれます。
私がオーダした図面はこちらです。
今回、一番安価な塩ビを注文しました。
ドアホンを取り除き、製作したアクリル板とAQARAの後ろ蓋と合わせて壁に取り付けるとこんな感じになります。
縦と横が合っていないのがわかります。
ちなみにAQARA本体を取り付けるとこんな感じ。
これだと、白が目立ってしまうので、マンションの管理事務所に外壁の色を確認して、同じペンキで塗るとこんな感じになります。
とりあえず、見た目もすっきりしました。あと、AQARA G4は便利です。
参考までに。
![]() | 価格:16980円 |

AQARA G4は、残念ながら日本のドアホンのサイズと異なります。
こちらは縦長、日本のドアホンは横長ということで、サイズが合いません。
特に、マンションであれば、外壁とドアホンがサイズが合わないために隠せず、不恰好になってしまいます。
それを隠すためにアクリル板を使用することにしました。
私ははざいやというネットショップでアクリル板をオーダしました。
ここのお店、オーダーメイドのサービスを提供していて、Web上で図面が書けるようになっていて、その図面通りに製作してくれます。
私がオーダした図面はこちらです。
今回、一番安価な塩ビを注文しました。
ドアホンを取り除き、製作したアクリル板とAQARAの後ろ蓋と合わせて壁に取り付けるとこんな感じになります。
縦と横が合っていないのがわかります。
ちなみにAQARA本体を取り付けるとこんな感じ。
これだと、白が目立ってしまうので、マンションの管理事務所に外壁の色を確認して、同じペンキで塗るとこんな感じになります。
とりあえず、見た目もすっきりしました。あと、AQARA G4は便利です。
参考までに。
2024年08月16日
ESP32のリモコンの話
半年ぐらい前に行った作業なのですが、忘備録のために書いておきます。
ESP32にはリモコン解析のライブラリがあります。
ちなみにESP32というのは、WiFi+BT+ LX6(CPU)x2のSOCチップの名前で、以下のような評価ボードが沢山出回っています。

開発ツールも沢山リリースされているので、ちょっとした装置を作りたい場合は、簡単に作れてしまいます。
Raspberry Piのように重いLinuxは動かさないけど、色んなライブラリが揃っており、WiFI+BTも使えるので、IoTなんかに良く使われています。
(一応、Linuxも動くみたいです)
そして、その評価ボードのGPIOにリモコンの受光部の出力を接続すると、リモコン解析機が出来上がりです。
Arduinoのライブラリは、 IRremoteESP8266を使います。
そして、赤外線解析ソフトは、IRrecvDumpV3というexamplesディレクトリに入っているものを使います。
○Panasonicの場合
例えば、Panasonicのライトのリモコンの場合、以下のような結果が得られます。
そこで得られた値をこんな感じでsendPanasonic64関数に渡せばリモコンの送信となります。
○アイリスオーヤマの場合
では、リモコン送信用の関数が用意されていないようなメーカの場合、どうなるのでしょうか?
例えば、私の家でアイリスオーヤマのライトが一つだけあります。
これを解析すると以下のような値が得られます。
プロトコルがEPSONと表示され、正しく認識されていないのがわかります。
この場合、sendGeneric関数を呼びます。
その際にデータのフォーマットを指定する必要があり、そのために得られたデータを理解する必要があります。
(リモコンフォーマットの詳しい情報はこちらのHPに記載されています。)
上記のデータの最初の値のペアがはLeader部分でHigh=8942, Low=4426を表していることがわかります。
次に、High=580, Low=1640のペアがデータ1、High=580, Low=530のペアがデータ0ということがわかります。
また、コマンドとコマンドの間に41530分のLow区間であることがわかります。
それを変数にすると以下のようになります。
そして、sendGenericを呼ぶ時に以下のように指定すれば良いわけです。
以上、参考までに。
ESP32にはリモコン解析のライブラリがあります。
ちなみにESP32というのは、WiFi+BT+ LX6(CPU)x2のSOCチップの名前で、以下のような評価ボードが沢山出回っています。
![]() | WayinTop ESP32開発ボード Wi-Fi BLEモジュール ESP-WROOM-32実装済み デュアルコア 技適取得済み 2個入り 専用USBケーブル付き 新品価格 |

開発ツールも沢山リリースされているので、ちょっとした装置を作りたい場合は、簡単に作れてしまいます。
Raspberry Piのように重いLinuxは動かさないけど、色んなライブラリが揃っており、WiFI+BTも使えるので、IoTなんかに良く使われています。
(一応、Linuxも動くみたいです)
そして、その評価ボードのGPIOにリモコンの受光部の出力を接続すると、リモコン解析機が出来上がりです。
Arduinoのライブラリは、 IRremoteESP8266を使います。
そして、赤外線解析ソフトは、IRrecvDumpV3というexamplesディレクトリに入っているものを使います。
○Panasonicの場合
例えば、Panasonicのライトのリモコンの場合、以下のような結果が得られます。
21:05:49.941 -> Protocol : PANASONIC
21:05:49.941 -> Code : 0x344A90F464 (40 Bits)
21:05:49.941 -> uint16_t rawData[83] = {3470, 1732, 434, 430, 434, 430, 434, 1298, 436, 1296, 436, 430, 434, 1298, 434, 430, 436, 430, 434, 430, 434, 1298, 436, 430, 434, 430, 436, 1298, 436, 430, 434, 1298, 436, 430, 434, 1298, 434, 430, 436, 430, 434, 1298, 434, 430, 436, 430, 434, 430, 434, 428, 434, 1298, 440, 1294, 434, 1298, 436, 1298, 436, 430, 432, 1298, 434, 430, 434, 432, 434, 432, 436, 1298, 436, 1298, 434, 430, 436, 428, 434, 1300, 436, 430, 432, 432, 436}; // PANASONIC 344A90F464
21:05:49.984 -> uint32_t address = 0x34;
21:05:49.984 -> uint32_t command = 0x4A90F464;
21:05:49.984 -> uint64_t data =0x344A90F464;
そこで得られた値をこんな感じでsendPanasonic64関数に渡せばリモコンの送信となります。
const uint64_t data=0x344A90F464;
sendPanasonic64( data, kPanasonic40Bits , 2);
○アイリスオーヤマの場合
では、リモコン送信用の関数が用意されていないようなメーカの場合、どうなるのでしょうか?
例えば、私の家でアイリスオーヤマのライトが一つだけあります。
これを解析すると以下のような値が得られます。
21:16:07.962 -> Protocol : EPSON (Repeat)
21:16:07.962 -> Code : 0x7B019A65 (32 Bits)
21:16:07.962 -> uint16_t rawData[271] = {8942, 4426, 584, 530, 582, 1640, 580, 1638, 584, 1638, 584, 1636, 584, 528, 580, 1638, 584, 1638, 582, 528, 582, 530, 582, 526, 584, 528, 582, 530, 584, 526, 584, 528, 584, 1636, 584, 1636, 584, 528, 584, 528, 582, 1638, 582, 1638, 584, 528, 584, 1638, 582, 526, 584, 528, 584, 1636, 584, 1640, 582, 528, 584, 526, 584, 1636, 584, 526, 582, 1640, 582, 41530, 8948, 4428, 584, 528, .............. }; // EPSON (Repeat) 7B019A65
21:16:08.106 -> uint32_t address = 0x80DE;
21:16:08.106 -> uint32_t command = 0x59;
21:16:08.106 -> uint64_t data = 0x7B019A65;
プロトコルがEPSONと表示され、正しく認識されていないのがわかります。
この場合、sendGeneric関数を呼びます。
その際にデータのフォーマットを指定する必要があり、そのために得られたデータを理解する必要があります。
(リモコンフォーマットの詳しい情報はこちらのHPに記載されています。)
上記のデータの最初の値のペアがはLeader部分でHigh=8942, Low=4426を表していることがわかります。
次に、High=580, Low=1640のペアがデータ1、High=580, Low=530のペアがデータ0ということがわかります。
また、コマンドとコマンドの間に41530分のLow区間であることがわかります。
それを変数にすると以下のようになります。
const uint16_t kIrisHdrMark = 8942; ///< uSeconds. [Leader High]
const uint16_t kIrisHdrSpace = 4426; ///< uSeconds. [Leader Low]
const uint16_t kIrisBitMark = 580; ///< uSeconds. [Data 1 High]
const uint16_t kIrisOneSpace = 1640; ///< uSeconds. [Data 1 Low]
const uint16_t kIrisZeroSpace = 530; ///< uSeconds. [Data 0 Low]
const uint32_t kIrisCommandLength = 120000; ///< uSeconds.
const uint32_t kIrisMinGap = 41530; ///< uSeconds. [stop bit Low]
const uint16_t kIrisFreq = 36700;
そして、sendGenericを呼ぶ時に以下のように指定すれば良いわけです。
const uint64_t data = 0x7B019A65;
sendGeneric(kIrisHdrMark, kIrisHdrSpace, kIrisBitMark,
kIrisOneSpace, kIrisBitMark, kIrisZeroSpace,
kIrisBitMark, kIrisMinGap, kIrisCommandLength,
data, 32, kIrisFreq, true, 0, 50);
以上、参考までに。
2024年08月11日
スマートロックはSESAMIがやはり便利
みなさま、スマートロックを使ってますか?
○SESAMI 5
引越しとともにCANDY HOUSEから発売されているSESAMI5というスマートロックを購入しました。
引越し前の家でSESAMI4を使っていたのですが、ちょうど良いタイミングて運良く壊れ、新調しました。

SESAMIは対応する鍵が多いのが特徴です。
我が家はGOAL社のPXKという鍵なんですが、こんな感じで付けてます。
ちなみにオートロックの設定をしています。
鍵を開けてから何分後かに閉めるという時間設定もできるのですが・・・
○オープンセンサー
私は同じくCANDY HOUSEから発売されているオープンセンサーを使ってます。
これはドアの開閉を検知するセンサーで、こんな感じでドアの上とかに貼り付けます。
これを使うとドアを閉めてから何秒後にドアをロックするという設定ができるようになります。
○セサミタッチ
あと便利なのが、セサミタッチです。

こんな感じでドアの外 (AQARAの隣)に貼り付けています。
これがあると、ICカードや指紋で開くのでスマホも持ち歩かなくて済みます。
あと、ベビーシッターに依頼する時に鍵を渡すのではなく、ICカードを渡せば良いので便利です。
○Hub 3
その次に便利なのがHub 3という製品。これがないと遠隔でドアが開閉できなかったり、AlexaやGoogleと外部アプリの連携ができません。
ちなみに私はこの製品を持っておらず、前の製品にあたるWiFiモジュール2を使ってAlexaと連携しています。
○リモート
最後に子供にも離れた場所から鍵が開けられるようにリモートというリモコン式のスイッチも購入しました。
これがあると、スマホがなくても家の中の離れた場所から鍵が開けられます。
Alexaと連動しているので、写真のEcho Show 5に向かって"Unlock the door"とか言えば、鍵が開くのですが言うのも面倒な時にキーを押すだけで開けられるので便利です。
というわけで、スマートロックがかなりのレベルまで来た感じがします。
参考までに。
○SESAMI 5
引越しとともにCANDY HOUSEから発売されているSESAMI5というスマートロックを購入しました。
引越し前の家でSESAMI4を使っていたのですが、ちょうど良いタイミングて運良く壊れ、新調しました。
![]() | 新品価格 |

SESAMIは対応する鍵が多いのが特徴です。
我が家はGOAL社のPXKという鍵なんですが、こんな感じで付けてます。
ちなみにオートロックの設定をしています。
鍵を開けてから何分後かに閉めるという時間設定もできるのですが・・・
○オープンセンサー
私は同じくCANDY HOUSEから発売されているオープンセンサーを使ってます。
これはドアの開閉を検知するセンサーで、こんな感じでドアの上とかに貼り付けます。
これを使うとドアを閉めてから何秒後にドアをロックするという設定ができるようになります。
○セサミタッチ
あと便利なのが、セサミタッチです。
![]() | 新品価格 |

こんな感じでドアの外 (AQARAの隣)に貼り付けています。
これがあると、ICカードや指紋で開くのでスマホも持ち歩かなくて済みます。
あと、ベビーシッターに依頼する時に鍵を渡すのではなく、ICカードを渡せば良いので便利です。
○Hub 3
その次に便利なのがHub 3という製品。これがないと遠隔でドアが開閉できなかったり、AlexaやGoogleと外部アプリの連携ができません。
ちなみに私はこの製品を持っておらず、前の製品にあたるWiFiモジュール2を使ってAlexaと連携しています。
○リモート
最後に子供にも離れた場所から鍵が開けられるようにリモートというリモコン式のスイッチも購入しました。
これがあると、スマホがなくても家の中の離れた場所から鍵が開けられます。
Alexaと連動しているので、写真のEcho Show 5に向かって"Unlock the door"とか言えば、鍵が開くのですが言うのも面倒な時にキーを押すだけで開けられるので便利です。
というわけで、スマートロックがかなりのレベルまで来た感じがします。
参考までに。
2024年08月04日
AQARA G4のドアモニターはAmazon Echo Show 5で決まり
○はじめに
前回、子供用にドアモニターが欲しいと言ってましたが・・・見つけました。
高価なiPad miniを買わなくても大丈夫でした。
そう、Echo Show 5です。

○設定
こんな感じで簡単でした。
○デモ
ドアベルが押されると、自動的に画面がドアモニターに切り替わります。
しばらく使ってみたいと思います。
本当はGoogle Nest Hubでこれぐらい動作すれば満足なのですが、私のNest Hubが第1世代のせいかオートメーションが効きません。あと、AQARA G4のビデオを表示させると不安定になります。
#Nest Hubで画面を閉じても、AQARA G4のLED Indicatorがずっと赤の状態になっている。
ただ、この辺の報告を読むと、第2世代でもまだ上手く動作してないように見えます。
参考までに。
前回、子供用にドアモニターが欲しいと言ってましたが・・・見つけました。
高価なiPad miniを買わなくても大丈夫でした。
そう、Echo Show 5です。
![]() | Echo Show 5 (エコーショー5) 第3世代 - スマートディスプレイ with Alexa、2メガピクセルカメラ付き、クラウドブルー 新品価格 |

○設定
こんな感じで簡単でした。
- Echo Show 5の初期設定。
- iPhoneにAlexaをインストール。
- AQARAアプリ上でプロフィール=>エコシステムに接続で、Amazon Alexaを選択。
○デモ
ドアベルが押されると、自動的に画面がドアモニターに切り替わります。
しばらく使ってみたいと思います。
本当はGoogle Nest Hubでこれぐらい動作すれば満足なのですが、私のNest Hubが第1世代のせいかオートメーションが効きません。あと、AQARA G4のビデオを表示させると不安定になります。
#Nest Hubで画面を閉じても、AQARA G4のLED Indicatorがずっと赤の状態になっている。
ただ、この辺の報告を読むと、第2世代でもまだ上手く動作してないように見えます。
参考までに。
2024年07月28日
インターホンをAQARA G4にしてみた
○はじめに
私事ですが、最近引っ越しました。
前に住んでいた場所から400mほどのところに築40年近い中古マンションが販売されまして、それに飛びついたわけです。
住んでいた場所は気に入っていたし、もう少し住むなら持ち家にしようと思った次第です。
築40年なのでフルリフォームを行い、最近、その工事が終わって引っ越した次第です。
前は借家だったので、家の改造ができなく、それが本当にストレスでした。
そして、今は持ち家になったので・・まず、何をやるかというと、インターホンを変えるところから。
○AQARA G4
前々から気になっていたドアホンがありまして、それが以下のAQARA G4という商品です。

私の個人的なメリデメはこんなところです。
良いところ:
ダメなところ:
普通のタブレットがインターホンの画面になれば良いのですが・・そこが残念です。
iPhone、iPadを持っていない子供などが来訪者を確認するという目的であれば、接続開始速度が遅いですが、Google Nest Hubがベストかもしれません。
○接続方法
AQARA G4は、ドアベルとチャイム(スピーカ)の二つで構成されており、ドアベルを外のインターホンに繋ぎます。
このドアベルは、電池と外部電源の二種類をサポートしています。
今回、残量確認などしたくないので、外部電源を使いました。
ちなみに、外部電源を使用してインターホンの置き換えを行うにはおそらく電気工事士の免許が必要になりますのでお気をつけ下さい。
仕様書には、Wired Input: 12-24V AC 0.2A 50/60Hz. or 8V-24V DC 0.5Aとの明記されています。
家をゴソゴソ探したら、以下の9V 0.5Aのアダプタが見つかったのでこれを使いました。
外部電源の場合、以下のようにネジで抑えるようにできているのですが、心元ないので以下のように丸型端子を使いました。
購入した丸型端子

インターホンの接続確認。
ここのページを参考にしながら、インターホーンの接続を確認してみましょう。
もし、電源直結式であれば、工事の際に電気工事士の免許が必要となります。
我が家もそうでしたが、ほとんどの家庭では電源直結式ではないかと思います。
この場合、本体のディスプレイ側に電源100Vが接続され、外のドアカメラとその本体は弱電(48V以下)で接続されていると思います。
この弱電のケーブルに9VのDCアダプタを接続して、外のドアベルに電源を供給します。
ディスプレイ側の本体を外すと、100Vと弱電ケーブルが接続されているのがわかります。
細いケーブルの弱電の方に9Vを接続します。
ドアカメラを外し、弱電ケーブルに丸型端子を接続(かしめる)。
(念のために、外のケーブルに電池をつけ、中のケーブルにテスターで測定して極性を確認した方が良いかと思います。)
塗装部分はアクリル板を挟んで隙間を埋めました。
こんな感じ。
参考までに。
私事ですが、最近引っ越しました。
前に住んでいた場所から400mほどのところに築40年近い中古マンションが販売されまして、それに飛びついたわけです。
住んでいた場所は気に入っていたし、もう少し住むなら持ち家にしようと思った次第です。
築40年なのでフルリフォームを行い、最近、その工事が終わって引っ越した次第です。
前は借家だったので、家の改造ができなく、それが本当にストレスでした。
そして、今は持ち家になったので・・まず、何をやるかというと、インターホンを変えるところから。
○AQARA G4
前々から気になっていたドアホンがありまして、それが以下のAQARA G4という商品です。
![]() | 価格:16980円 |

私の個人的なメリデメはこんなところです。
良いところ:
- インターホンが押されると、iPhoneに通知され、来訪者を見ながら通話ができる。
- つまり外出していても来訪者と通話ができる。
- そして、録画機能がついていて誰が来たかもiPhoneからわかる。
- しかも人感センサーが付いていて、インターホンが押されなくても通知がiPhoneに来る。
- 圧倒的に通話の接続速度が速い。(iPhoneで1~2秒で繋がる。)
- インターホンが押されると、Google Nest Mini/ Hubなどを持っていると、そちらにも通知が来る。
ダメなところ:
- Google Nest Hubで外の様子はわかるが、接続開始スピードが遅いし(5~8秒ぐい)、通話ができない。
- つまり、iPhone・iPadがないと通話ができない。
- iPhone・iPadをインターホンの画面だけに使うには勿体無いし、パスワードなど共有で使うには面倒。
- 日本のインターホンのサイズになっていないので、塗装をしない場合、見た目が悪くなる。
普通のタブレットがインターホンの画面になれば良いのですが・・そこが残念です。
iPhone、iPadを持っていない子供などが来訪者を確認するという目的であれば、接続開始速度が遅いですが、Google Nest Hubがベストかもしれません。
○接続方法
AQARA G4は、ドアベルとチャイム(スピーカ)の二つで構成されており、ドアベルを外のインターホンに繋ぎます。
このドアベルは、電池と外部電源の二種類をサポートしています。
今回、残量確認などしたくないので、外部電源を使いました。
ちなみに、外部電源を使用してインターホンの置き換えを行うにはおそらく電気工事士の免許が必要になりますのでお気をつけ下さい。
仕様書には、Wired Input: 12-24V AC 0.2A 50/60Hz. or 8V-24V DC 0.5Aとの明記されています。
家をゴソゴソ探したら、以下の9V 0.5Aのアダプタが見つかったのでこれを使いました。
外部電源の場合、以下のようにネジで抑えるようにできているのですが、心元ないので以下のように丸型端子を使いました。
購入した丸型端子
![]() | YFFSFDC 丸型端子セット 150個セット M3 M4 M5 M6 M8 M10キットコネクタキット 真鍮 リングケーブルラグ 丸型端子 銅ラグ 圧着ケーブル ワイヤ端子 新品価格 |

インターホンの接続確認。
ここのページを参考にしながら、インターホーンの接続を確認してみましょう。
もし、電源直結式であれば、工事の際に電気工事士の免許が必要となります。
我が家もそうでしたが、ほとんどの家庭では電源直結式ではないかと思います。
この場合、本体のディスプレイ側に電源100Vが接続され、外のドアカメラとその本体は弱電(48V以下)で接続されていると思います。
この弱電のケーブルに9VのDCアダプタを接続して、外のドアベルに電源を供給します。
ディスプレイ側の本体を外すと、100Vと弱電ケーブルが接続されているのがわかります。
細いケーブルの弱電の方に9Vを接続します。
ドアカメラを外し、弱電ケーブルに丸型端子を接続(かしめる)。
(念のために、外のケーブルに電池をつけ、中のケーブルにテスターで測定して極性を確認した方が良いかと思います。)
塗装部分はアクリル板を挟んで隙間を埋めました。
こんな感じ。
参考までに。
2024年07月03日
ESP32-S3-Touch-LCD-1.28の筐体制作 2
3Dプリンタで作成した筐体ですが、今回、更にバージョンアップしました。
変更点はと言われると細かい話なのですが・・前回から以下の箇所を改善しました。
1. 蓋を広げて作業しやすくした。
2. ESP32-S3-Touch-LCD-1.28のCAD図面を取り込んで、ディスプレイ部分が収まるようにした。
また、一番の大きな変更は3Dプリンタの業者をDMM.makeからElecrowに変えました。
二社を使ってみて、業者によってコストと作りの精度が変わるとうことがわかりました。
コスト
DMM.makeの約1/3以下の値段で作成することができました。
しかも日数もElecrowの方が圧倒的に早かったです。
精度
しかし、作りの精度から言うと、DMM.makeの方が圧倒的に良いです。
Elecrowでは、残りカスが綺麗に拭き取られていなかったり、製作物に継ぎ目と思われるラインが一本入っていたりしました。ちなみにDMM.makeではそのようなことは一切無かったです。
というわけで、用途によって使いわけると良いかもしれません。
ちなみに今回バージョンアップした筐体は以下になります。
参考までに。
変更点はと言われると細かい話なのですが・・前回から以下の箇所を改善しました。
1. 蓋を広げて作業しやすくした。
2. ESP32-S3-Touch-LCD-1.28のCAD図面を取り込んで、ディスプレイ部分が収まるようにした。
また、一番の大きな変更は3Dプリンタの業者をDMM.makeからElecrowに変えました。
二社を使ってみて、業者によってコストと作りの精度が変わるとうことがわかりました。
コスト
DMM.makeの約1/3以下の値段で作成することができました。
しかも日数もElecrowの方が圧倒的に早かったです。
精度
しかし、作りの精度から言うと、DMM.makeの方が圧倒的に良いです。
Elecrowでは、残りカスが綺麗に拭き取られていなかったり、製作物に継ぎ目と思われるラインが一本入っていたりしました。ちなみにDMM.makeではそのようなことは一切無かったです。
というわけで、用途によって使いわけると良いかもしれません。
ちなみに今回バージョンアップした筐体は以下になります。
参考までに。
2024年06月01日
ESP32-S3-Touch-LCD-1.28に温湿センサー(SHT31)を接続して使う
○はじめに
ESP32-S3-Touch-LCD-1.28にセンシリオン社のSHT31という温湿センサーを接続して使いたいと思います。
○接続方法
ESP32-S3-Touch-LCD-1.28の端子をSHT31の以下のピンに接続します。
ESP32-S3 - SHT31
○ソフトウェア
SHT31との接続はI2C接続です。また、ESP32-S3-Touch-LCD-1.28は以下のようにGPIO06とGPIO07がI2C接続でタッチやQMI8658に使われています。
I2C interface: The ESP32-S3 provides multiple hardware I2C. Currently, GPIO6 (SDA) and GPIO7 (SCL) pins are used for the I2C bus, mounting the QMI8658 six-axis inertial measurement unit and LCD touch control chip on the development board. Please refer to the schematic for more information.
つまり、I2Cバスが2本必要になります。
実は、これが今回のハマりポイントです。
○手順
ざっくり言うと、こんな感じです。
1. SHT31のライブラリのインストール。
簡単です。Menu -> Tools -> Manage Librariesでarduino-shtを指定すると以下のライブラリが自動で検出されるので、INSTALLをクリックするだけです。
2. CST8163.h、CST8163.cppをI2バスが指定できるように改造。
前回、ここで準備の話をしており、既にCST8163.h、CST8163.cppが手元にあることを前提で話をします。
実は、サンプルコードにあるCST8163.h、CST8163.cppはデフォルトのI2Cバスを使用されているように作られており、I2Cバスの指定ができるようにチョイチョイと変更する必要があります。
参考までに改造したファイルは以下において置きます。
CST8163.h、CST8163.cpp
3. メインコード(LVGL_Arduino.ino)で二つのI2Cバスを指定。
最後がI2Cバスをそれぞれに指定するのですが、ネットを色々探して以下のやり方で落ち着いています。
LVGL_Arduino.inoファイルで以下の定義を追加します。
GPIOの定義
I2Cの定義
モジュールの定義
void setup()で以下のように初期化すれば、タッチも温湿計も普通に使えるようになります。
参考までに。
ESP32-S3-Touch-LCD-1.28にセンシリオン社のSHT31という温湿センサーを接続して使いたいと思います。
○接続方法
ESP32-S3-Touch-LCD-1.28の端子をSHT31の以下のピンに接続します。
ESP32-S3 - SHT31
- 3V3 - VDD
- GPIO17 - SDA
- GPIO16 - SCL
- GND - GND
○ソフトウェア
SHT31との接続はI2C接続です。また、ESP32-S3-Touch-LCD-1.28は以下のようにGPIO06とGPIO07がI2C接続でタッチやQMI8658に使われています。
I2C interface: The ESP32-S3 provides multiple hardware I2C. Currently, GPIO6 (SDA) and GPIO7 (SCL) pins are used for the I2C bus, mounting the QMI8658 six-axis inertial measurement unit and LCD touch control chip on the development board. Please refer to the schematic for more information.
つまり、I2Cバスが2本必要になります。
実は、これが今回のハマりポイントです。
○手順
ざっくり言うと、こんな感じです。
- SHT31のライブラリのインストール。
- CST8163.h、CST8163.cppをI2バスが指定できるように改造。
- メインコード(LVGL_Arduino.ino)で二つのI2Cバスを指定。
1. SHT31のライブラリのインストール。
簡単です。Menu -> Tools -> Manage Librariesでarduino-shtを指定すると以下のライブラリが自動で検出されるので、INSTALLをクリックするだけです。
2. CST8163.h、CST8163.cppをI2バスが指定できるように改造。
前回、ここで準備の話をしており、既にCST8163.h、CST8163.cppが手元にあることを前提で話をします。
実は、サンプルコードにあるCST8163.h、CST8163.cppはデフォルトのI2Cバスを使用されているように作られており、I2Cバスの指定ができるようにチョイチョイと変更する必要があります。
参考までに改造したファイルは以下において置きます。
CST8163.h、CST8163.cpp
3. メインコード(LVGL_Arduino.ino)で二つのI2Cバスを指定。
最後がI2Cバスをそれぞれに指定するのですが、ネットを色々探して以下のやり方で落ち着いています。
LVGL_Arduino.inoファイルで以下の定義を追加します。
GPIOの定義
#define CST_SDA 6
#define CST_SCL 7
#define SHT_SCL 16
#define SHT_SDA 17
I2Cの定義
TwoWire i2c1 = TwoWire(0); //I2C1 bus
TwoWire i2c2 = TwoWire(1); //I2C2 bus
モジュールの定義
CST816S touch(CST_SDA, CST_SCL, 13, 5);
SHTSensor sht(SHTSensor::SHT3X_ALT);
void setup()で以下のように初期化すれば、タッチも温湿計も普通に使えるようになります。
i2c1.begin(SHT_SDA,SHT_SCL);
sht.init(i2c1);
i2c2.begin(CST_SDA,CST_SCL);
touch.begin(i2c2);
参考までに。
2024年05月29日
ESP32-S3-Touch-LCD-1.28の筐体制作
○はじめに
周辺基盤も作成し、ある程度動作しているのですが・・これを実際に使おうと思ったら、やはり筐体が必要です。
実は結構、悩ましい問題です。
○Fusionでデータを作成
試しに3Dプリンタなるものを使って作ろうかと思いました。
有難いことに、AutodeskのFusion 360は、非商用目的で個人が使う場合、無償で使用できます。
3D CADを使うのは2回目なのですが、不慣れなのもあって苦労しました。
一応、こんなのを作りました。
○3Dプリンタ業社に依頼
出来上がったデータを3Dプリンタ業社に依頼して、作成してもらいます。
今回、DMM.makeを使いました。
材質によって値段が変動するのですが、一番安価な材質、エコノミーレジン(SLA)で注文しました。
それでも、8,989円でした。
○仕上がり
出来上がったのが・・こんな感じです。
周辺基盤や配線やらを取り付けてみるとこんなスパゲティ状態になりました。
一応、動作確認してみます。
前からの写真。
後ろから。
○完成
こんな感じです。
なんだか・・野暮ったいなぁ・・と思わずにはいられない感じです。
あと、若干、寸法を間違えたりしてるし、また発注すると制作に9000円取られるし・・
もう少し、なんとかならないものでしょうか。。。
参考までに。
周辺基盤も作成し、ある程度動作しているのですが・・これを実際に使おうと思ったら、やはり筐体が必要です。
実は結構、悩ましい問題です。
○Fusionでデータを作成
試しに3Dプリンタなるものを使って作ろうかと思いました。
有難いことに、AutodeskのFusion 360は、非商用目的で個人が使う場合、無償で使用できます。
3D CADを使うのは2回目なのですが、不慣れなのもあって苦労しました。
一応、こんなのを作りました。
○3Dプリンタ業社に依頼
出来上がったデータを3Dプリンタ業社に依頼して、作成してもらいます。
今回、DMM.makeを使いました。
材質によって値段が変動するのですが、一番安価な材質、エコノミーレジン(SLA)で注文しました。
それでも、8,989円でした。
○仕上がり
出来上がったのが・・こんな感じです。
周辺基盤や配線やらを取り付けてみるとこんなスパゲティ状態になりました。
一応、動作確認してみます。
前からの写真。
後ろから。
○完成
こんな感じです。
なんだか・・野暮ったいなぁ・・と思わずにはいられない感じです。
あと、若干、寸法を間違えたりしてるし、また発注すると制作に9000円取られるし・・
もう少し、なんとかならないものでしょうか。。。
参考までに。
2024年05月27日
ESP32-S3-Touch-LCD-1.28の動作状況
こんな感じで動作しています。
ソフトウェアは、サーバー側はHome Assistant(MQTT)、クライアント側はESP32(Arudino IDE)環境でライブラリ群を駆使して作っています。
Yutubeに動画を置いておきました。
参考までに。
ソフトウェアは、サーバー側はHome Assistant(MQTT)、クライアント側はESP32(Arudino IDE)環境でライブラリ群を駆使して作っています。
Yutubeに動画を置いておきました。
参考までに。
>>次へ