Arduino一覧

raspberry piに環境構築未完

昨日の夜、pi4にxubuntu-desktopをインストールさせたまま寝た。
ので、起きてから環境構築。
numlock周りの設定を変えて、ユーザ作って。

・Arduino IDE
arm64のtar.xzを拾ってきて普通に動く。初回起動時点で日本語表示になってる。ただ、ボードマネージャではESP32の環境を入れられない。「対応してない」と言われる。

・XCTU
Digiのダウンロードページにはx86,x64のみで armなし。

・PyCharm
tar.gzを拾ってきたがエラー。java関係の依存?

・vs code
arm64版で普通に動く。

といったような結果。chromeboxで動いちゃうから、現時点ではつきつめない。M1 macのおかげでarm対応が増えて来れば期待ができる。バックアップ用にintel CPUなpixelbook goの方に環境作ったほうが得策だ。持ち運びできるからMake系電子工作と相性良いし。


chromeboxでArduino IDE + あるふぁ

 chromo os に戻してから入れて無かったので入れた。前回やったときはunoは認識してたけど他はだめでした。

 動作確認。
uno
 何故か書き込めない。でも、「昔こんな事があったな」とUSBA−B ケーブルを変えてみたらあっさり書き込めた。
Leonardo, Micro
 32U4系なので、リセットする度にchromeosで再接続する必要がありますが、書き込めます。
ESP32 系
 cp2102使ってるやつですがちゃんと認識して書き込めた! それよりLinux でのesptools周りのセットアップが未だにどこか手を出す必要がある方が問題だ。
m5stick-cやFT231X 使ってるSwitchScienceオリジナル系
 OK。

というわけで、raspberry piでArduino環境を別途作らなくても良さそうではある。ま、ubuntu LTSいれて作るには作るけど。

 続いて pycharmとmicroPython関係を整備してベランダに2つ動かしてるXBee3のメンテ環境も再構築。
 pycharmは入れるXBee用プラグイン「Digi XBee」の対応次第なので、最新版を入れれば良いわけではない。今回は2020.3まで対応してるということで 2020.3.1を入れてみたがプラグイン上手く読めました。あと忘れてた XBee汎用設定ルールの「xctu ng」もインストール。.runファイルなのだけどついsudoで実行してしまったら起動エラー。やりなおしてユーザー権限で実行してバッチリ起動しました。

 あとはvs code入れる前にコンテナのバックアップを取って、いざ。というタイミングでLinuxコンテナが起動できなくなった。バックアップから戻そうとしたが、壊れてるらしく戻せなかった。βだしなぁ。1回やってることなので戻しは早い。年末ネット混雑でパッケージを落とし直すのに時間がかかる。

 で、vs codeも無事入って arduino拡張入れていじってるとこ。中華フォントになってるのを治そう。感じがわかったらraspberry piにも環境作るかな。


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関係のソフトも試してみる価値ありだな。
半年損してたけど動いて良かった。


室温センサー作り変え

micropythonでやってた室温センサー。連続動作4時間ぐらいでハングって動かなくなるので、1時間ごとにESP.restart()するようにしてたが、なんか腑に落ちないので。ESP32のArduinoで作り直した。httpまわりはmbedより楽だな。室内光センサとしてCDSもつけてDBにアップした。この室内光データを他のデバイスからも参照して、就寝中は表示デバイスを消したりするのに使います。