マイコン一覧

家の環境系デバイスを更新した

ベランダとかリピングとかで温度湿度気圧などを計測してた自作のセンサーをやめた。
そして、switchbotの出来合いの温度湿度センサーに入れ替えた。
自前ほどカスタマイズに自由は無いが、はんだ付けはしなくて済む。はんだ付けは好きなのだが右手が動かないので仕方ない。
置き換えて、ベランダ、居間、寝室、物置部屋にセンサーを配置。


電力表示とセンサーゲイトウェイを合体

 ベランダや宅内の各種センサーのブロードキャストを受信しambientへ送ってる子(raspberry pi3)のダウン頻度があがった。microSDチェックしたら読めないところができてる。で、今のうちに必要なとこバックアップして作り直そう。どうせなら電力のスマートメータの表示してる子(これもraspberry pi)と一緒にしてしまおう。ということで作業開始。
 raspberry pi4のmem4g機が余ってるからそれにまとめることにした。とりあえずmicroSD 8Gに Raspberry Pi OS Lite版で。電力計はpython3, BTGWはpython2.7だったので python3に揃えることにした。壁掛けできるようアクリルパネルをAmazonで調達。サクッと完成。
 で。Rainbow HATのLED表示じゃなくて、7〜10インチくらいの液晶パネルをつなげて全センサーの値を表形式で株価の様に表示したいなと。 Raspberry Pi OSのノーマルGUI版で別途構築して入れ替えよう。GUIっても表示するだけだからpythonでええかな。センサー値の共有は sqliteをtmpfsで良いかと。センサー値はambientに上げてるからそっちから拾ってこれるけど、違うやり方をやってみたい。


ASUS Chromebox 4

 Amazonをwatchしてると i7とCeleron版が無くなってきたようなので かねてよりwhishlistに入れてたi5版を購入した。chromebox5だとまた2年以上先になるだろうから。購入したChromeboxとしてはacer chromebox3(i3版)に続く 2台目。chrome os機としては7台目。chromeboxだとメモリやストレージは交換可能。
 環境移行。chrome osなのでgoogleアカウントでログインすればアプリや設定は持ってくる。Amazonなどは1度ログインしてやる必要があるが。Linux部分も2時間かからず完了。Debian共通部分, gcloud, ArduinoIDE, ESPtoolsやampy, pyCharm, VScode。 VScodeのpymakrがシリアルでエラー出してて設定完了できてない。なので 代わりにThonnyを入れておいた。
メモリの増設やM.2SSDの増量は今は必要ないかな。Linuxの細かいツール類は順に必要な時に入れていこう。ffmpegも入れなきゃ。久々にmicropythonの開発やろうかな。


watt表示機の作り変え計画

 最近make系をしてないので活を入れる為に、電力スマートメーターを読み出して表示してるのを作り変えようと計画。
 いま自宅でうごいてるのはRaspberryPi3とロームのBP35A1を使ってpythonでやってる奴。これの前に動かしていたのはマイコンはmbed LPC1678でC++で書いた奴。
 で、次はマイコンははESP32系でmicroPythonでやろうと。M5StickCplusがあいてるのでコレに移植しようかと。まぁ、ゆっくりやっていきます。

↓は今動いてる奴


ESP32 MicroPythonで室内観測開始

 pi picoを買って、MicroPythonを入れてみたけど、chrome osからシリアルが認識されないのでほおってある。流石にraspberry piでは認識できたけどね。

 で、先月VScodeの開発環境をchrome osに入れたので、ESP32 MicroPythonの温度・湿度・明るさセンサーの配線を整理して、BLE-Ambientゲートウェイのコードに追加して動作させてみた。
 今動いてるESP32-Arduinoベースのセンサは並行稼働させとく。こちらは来月になったら取り外す感じで良いかな。


XBee3ではなくESP32 のMicroPython開発環境構築

 年始から細々とやっていたESP32のMicroPythonでBLE advertiseでセンサー値やり取りの実証ができた。さすがに、エディタで編集して、ampyでアップロードして、screenで確認してを続けるのは嫌なのでIDEを整備した。年末年始にも試したけど上手く動かなかたので再チャレンジ。

環境はchrome osのLinuxコンテナ(Debian 10)。

・uPyCraft 1.0
これはubuntu16.04しか動作保証されてない。起動してもzlib 1.2.9を要求される。zlibのソース持ってきて makeして配置しても駄目。造り手が保証してないから無かった物にする。

・thonny 3.3.3
動いた。どっかでみた事あると思ったら Raspbianに入ってるヤツだな。見た目はシンプルだけどかんたんにMicroPython側にコード焼けた。最低限これが使える事はわかった。

・PyCharm 2020.3.1 & MicroPython 1.1.3 プラグイン
MicroPythonの設定で/dev/ttyUSB0に設定してるのにつながらないのは、pyserial, ampyなどを別に参照してるっぽいのと、起動し直すたびにMicroPythonの設定が初期状態に戻ってしまうからみたい。
いろいろ試してるうちに、アップロードできたけど、コンソールを自動で閉じてくれないのでttyUSB0掴んでてampyがアップロードエラーになるとかこなれていない。
PyCharmはDigi XBeeプラグインによるXBee3専用開発環境にしとこうと思う

・VScode & Pymakr拡張機能 1.1.7
自分、VScodeに慣れていないのであるが、じっくりやったらESP32 にコードアップロードできた。アップロード時にコンソール掴みっぱなしも無い。ほぼこれをメインにすることが決定した。残念な点はVScodeはキーボードショートカットでいろいろ楽できるのだけど、左手1本の現状では押せるショートカットが限られる点。ま、折り合いを付けていこう。

というわけで開発環境が準備できた。

今、ESP32でArduino codeで動かしてる部屋温度、照度センサーは ESP32 MicroPythonに切り替える。
あとXBee3の雨センサー。GalliumOS,Windows10廃止の際に最新ソースが行方不明(苦笑)。昨日XBee3実機のFLASHを見てみたら main.pyじゃなくて main.mpy(プリコンパイルされたコード)だったのだ。なので、同じ動作をするようなコードを作っておこうと。こちらはPycharmで。


というわけで、動作確認の為の部屋温度、照度、&湿度センサーを仮組みして、コードも動作確認できた。本組みし直してambientゲートウエイにも対応追加して連続稼働テストに向かいます。やっぱ今後はマイコンのコードサイズが許す限りはpythonでやろうと思う。