マイコン一覧

雷センサーをベランダに設置

 雷センサー。
ambient連携まで実装した。室内だとノイズ元が多いのでベランダに持っていった。lightning.maskDisturber(true|false);とlightning.setIndoorOutdoor(OUTDOOR|INDOOR);はGPIOを使って再コードしなくても切り替えられるようにして。
 
 電源がほしいので元から設置してある環境センサーと同居。3.3VとGNDをジャンプワイヤでおすそ分け。

 台風の時期になったらジップロックを強化しようかな。

 ・・・と書いたあと、落雷を伴う夕立がきた。が、センサーのデータはアップされず。BLEの電波がが届かないのか、お裾わけの電力がESP32には足りないのか切り分けないと。XBee3はベランダで2機実績があるのでmicropythonに移植するか。と思ったがSPIはXBee3のmicropythonに実装されてたっけ?秋月版I2Cで試してみるか?ネタが付きないね。


雷を追う

 山の日3連休で、以前買ってあった雷センサーAS3935をテスト。Arduino UNOでは動くんだけどESP32で動かしたい。ESP32を使うのはBLEのアドバタイズを使って外部連携する為。
 ESP32でBLEの方は何とかなった。DeepSleepも行けた。でも、AS3935がねぇ何しても0xFFを返してくるのよ。秋月のi2c版だから?
 というわけで、切り分けるべくSparkfunのSPI版を注文した。残念なことに本日ゴロゴロ雷鳴がしてたのだがテストに間に合わず。
 先程ピンヘッダをはんだ付けして(手首がかえらないので難しい)、サンプル動かしてアンテナチューンしたところ(今回は80pF)。BLEとambient連携は週末かな。


C101PでもArduinoIDE

 こないだ試してはいたものの起動できてなかったCPUがArmなASUS C101PでのArduinoIDE。こっちのほうがUSB−AポートもあるのでMake系には便利。

 $ uname -a
Linux penguin 5.4.40-04224-g891a6cce2d44 #1 SMP PREEMPT Tue Jun 23 20:13:49 PDT 2020 
aarch64 GNU/Linux

だったので、chrome osは32bitだけど64bit Arm版のarduino-1.8.13-linuxaarch64で入れてみたらビンゴ!無事起動できてblinkのコンパイルとアップロードもできました。duetに入れようかどうしようか。ポートがUSB-C 1個なのでマイコンとつなぎにくい。Over the Airでアップロードできるマイコン(ESP32 など)なら使えるかな。あ゛、ESP32用toolchainのarm版のバイナリが配られてないんだった。


スリープブロッカーを作る

 スイッチサイエンスさんで委託販売されてた「スリープブロッカー」。OSがSleepしないようにマウスエミュレートして定期的にちょっと動かす感じのガジェット。こないだ見たら売り切れてて、なんだろうと思ったらGizmodoで記事になった為だとか。テレワークならではですかね。(さっき見たら在庫回復した。)
 マウスをエミュレートするならうちにもあるじゃんと、ATmega32U4の載ったArduino Leonardoがあるじゃんと。早速コード書いて作ってみた。ただ、LeonardoだとchromebookのArduinoIDEではポートがつながらなかった。Leonardoは起動シーケンス時に1回接続が切れるのか、Windowsでもポピポピ言ってかからなぁ。テストをWindowsでするからWindowsでコンパイル&書き込みした。

#include <Mouse.h>

const int interval = 30;  // sec

void setup() {
  Mouse.begin();
}

// 一定時間に1回マウスを動かす x軸 右1 左1
void loop() {
  Mouse.move(1, 0, 0);
  Mouse.move(-1, 0, 0);
  delay(interval * 1000);
}

ま、簡単だが機能しているようだ。


chromebookでarduinoIDEできた

なにげに久々にぐぐったら以下のサイトを発見。
https://www.stevencombs.com/arduino/2020/01/20/arduino-on-chromeos.html
前に見た気もするけど試してみた。
Arduinoとつなぐために普段電源入れてるUSB-Cにもハブ入れて接続。arduinoとLinuxを接続するか?みたいなメッセージが出て呆気なく接続。
ArduinoIDEでもPort /dev/ttyACM0 で認識してる。blinkを書き込んだらちゃんとアップロードされて動きましたよ。
ESP32の環境もつくっちゃえばもうchromebookでカバーできるなぁ。XBee関係のソフトも試してみる価値ありだな。
半年損してたけど動いて良かった。


ソーラーパネル付きセンサーはというと

 4/29にベランダ側の外壁に設置したソーラーパネルとリポバッテリーのついたセンサー。稼働させて3日でバッテリー切れとなった。発電が追いつかない様だがsleep_now()が雨センサと違う動作をしてたのも気になる。XBee3のファームを最新の100Aにしたからか?。で、発電のために直射日光が当たる場所に設置となると、ベランダの柵に引っ掛ける設置となるので雨水防水対策が必要となる。また、そんなとこにおいたら温度センサーは役に立たなそう。ただ、日照が良ければ自立電源で稼働できるのかテストはしてみたいと思う。タカチの防水ケース手配しないと。最悪、いま電池駆動させてる雨センサーに使えればいいなと思う。