Wio Terminal用Ethernet HATの試作

Wi-SUNゲートウェイのWio Terminal化を検討中ですが、やはりWiFiではなくEthernetで運用したいと思いました。

また、単純にWio TerminalでEthernetを使いたい、という需要もあるのではないか、と。

そこで、WIZ550ioを使ったEthernet HATを試作しました。(とりあえず、ユニバーサル基板で。近日中にプリント基板を起こす予定です。)

なお、動作確認は、Ardiono開発環境でEthernet3ライブラリを使用して行いました。

“Wio Terminal用Ethernet HATの試作” の続きを読む

Wio Terminalとラズパイ用Wi-SUNインタフェースボードの接続実験

seeed社製Wio Terminalを買ってみました。40ピンのGPIOヘッダ(ソケット)があり、ピン配置はラズパイ互換となっています。

そこで、Wi-SUNインタフェースボードとの接続実験を行ってみました。

と言っても、繋ぐ信号はUARTのTxD、RxD、(無線モジュール用)リセットの3本のみです。

4連休の後半2日を使って、最終的に疎通確認までできましたが、単純なところで躓いてしまいました。(できれば、もう少し先に進めたかったんですが…)

“Wio Terminalとラズパイ用Wi-SUNインタフェースボードの接続実験” の続きを読む

M5Stack(PlatformIO)環境での奇妙なエラーと回避方法

謎のエラーメッセージ

UnicodeDecodeError: ‘cp932’ codec can’t decode byte 0x98 in position 134: illegal multibyte sequence

というエラーメッセージで、C++(Arduino)のswitch~case文の中で起きました。「multibyte」とありますが、特に日本語を使ってるとかはありません。

case 0xc0:
    uint8_t r = 0x00;
    break;
“M5Stack(PlatformIO)環境での奇妙なエラーと回避方法” の続きを読む

ECHONETスキャナを作ってみる(5)

なんとかひと段落

各プロパティ値の表示を意味ある形にして、ノード一覧をソートしました。プロパティの設定は制約としてできないようにしていますが、スキャナ(Echonet機器のプロパティ値の取得)としては、それなりに使えるようになったと思います。

プログラムソースはGitHubで公開しています。

仮想ホストの追加方法

nginx-proxy&letsencrypt-nginx-proxy-companionコンテナ環境下で仮想ホストを追加する手順を残しておきます。

  1. サブドメインをDNS登録(nginx-proxyが稼働しているサーバのIPアドレスと紐づけ)
    • ウチではお名前.comからドメイン(windesign.work)を入手しているので、お名前.com NaviにログインしてDNS設定。
  2. 仮想ホスト用ディレクトリを作成
  3. docker-compose.ymlを作成
  4. コンテナ起動
    • 起動するだけでnginx-proxyが見つけてくれる。
“仮想ホストの追加方法” の続きを読む

ECHONETスキャナを作ってみる(4)

先日の課題が一応解決

しばらく待たないと情報取得できない件ですが、依存ライブラリのELSwiftに1行追加したところ、すんなり情報が返ってくるようになりました。(後述の通り、依存ライブラリの修正は不要

追加したのは、ELSwift.swiftのinitialize()メソッドの最後に、自ノードインスタンスリストSの取得パケット送信(マルチキャスト)。

try ELSwift.sendOPC1( EL_Multi, [0x0e,0xf0,0x01], [0x0e,0xf0,0x01], 0x62, 0xd6, Node_details["d6"]! );

オリジナルのコードでは、

  1. インスタンス通知(0xD5のINF)

だけだったのが、

  1. インスタンス通知(0xD5のINF)
  2. 自ノードインスタンスリストS取得(0xD6のGet)

となる格好となります。

よく見たら、追加する行はELSwift.search()メソッドの内容と同じでした。

依存ライブラリをオリジナルに戻し、ELSwift.initialize()を呼び出した直後にELSwift.search()を呼び出せば同等の結果になることを確認できました。

PHPのバージョンを上げたい件(まとめ)

結局、1インスタンスですべてのDockerコンテナを稼働させることに

色々と試行錯誤した結果、マシンタイプe2-microを1インスタンス立ち上げ、7つのコンテナを稼働させることにしました。(nginx-proxy、letsencrypt-nginx-proxy-companion以外の5コンテナは仮想ホストとして稼働)

“PHPのバージョンを上げたい件(まとめ)” の続きを読む

PHPのバージョンを上げたい件(その3)

運用前の走行確認

パフォーマンスが気になったので、nginxコンテナ とWordpress/My SQLコンテナだけ起動して走確してみました。

結果としては、まともにブラウザ表示できない状況でした。試しに、VMインスタンスのファイアウォール設定で8080を空けて、Wordpressコンテナに直接アクセスできるようにすると問題なかったので、nginxを経由していることが原因と思われます。

“PHPのバージョンを上げたい件(その3)” の続きを読む