あっきぃ日誌

鉄道ブログのような技術系ブログのようななにか

Pimoroniのあれこれ買うやつ202105

先週くらいのある日、寝る前にPimoroniのTwitterを見ていたらPico Breakout Gardenがついにリリースされていることに気づいて、即注文しました。他に気になったものも合わせてポチポチして今日到着しました。

f:id:Akkiesoft:20210525225214j:plain

Picoものが中心かつ、Pico本体何個買っとんねんみたいな絵面なんですが、実はPicoはキットモノにタダでついてきたオマケです。オマケのおかげでRP2040的なボードが突然6台になりました。

Pico Breakout Garden Base

待望のPico向けBreakout Garden Baseです。Raspberry PiのBreakout Gardenの資産が(対応しているものは)そのまま使えるのが大変な強みです。なので、個人的にはぜひとも押さえておきたかった一品です。

f:id:Akkiesoft:20210525225533j:plain

裏面はこんな感じ。Picoを差し込むピンソケットが表面実装でなく、ソケットの足が飛び出しているため、付属のゴム足は必須です。犬の足跡のところにペタペタ貼り付けましょう。

f:id:Akkiesoft:20210525225544j:plain

PimoroniのPico向けリポジトリはここにまとまっています。私はザコなのでMicroPythonでやっていきたいところですが、それでもディスプレイとトラックボードはすでに対応済みなのと、他のボードもI2Cでちょいちょいなのでまあイケるだろうなと思っているところです。今の所具体的になにかするプランはなし。

github.com

Pico Breakout Garden Baseshop.pimoroni.com

Pimoroni Pico LiPo

PimoroniからはすでにRaspberry Pi Pico向けのLiPo用モジュールが発売されていますが、こちらは1ボードにRP2040とLiPo関連をまとめてしまったPico互換的なボードです。

f:id:Akkiesoft:20210525230613j:plain

ピン配置はPicoと同等。リセットボタンはバッテリー接続時のためにオン・オフできる電源ボタンになっていました。また、Qwiicコネクターデバッグネクターが用意されています。あと、USBコネクターがUSB Type-Cになっているのも、人によってはありがたいポイントかもしれませんね。

バッテリーは、ふつうに接続して使用できる他、バッテリーを接続したままUSBを接続すれば充電モードにもできるスグレモノです。あきばお〜とかにあるUSB電源が出力できる雑ソーラーパネルにつないどけば太陽光とバッテリーだけでやっていけるのでは…🤔!?

f:id:Akkiesoft:20210525231556j:plain

せっかくなので、こいつはカラーピンヘッダー仕様第二弾にしてみました。今回はアナログピンを緑に変えたぞ!

f:id:Akkiesoft:20210525230812j:plain

Pimoroni Pico LiPoshop.pimoroni.com

Pico Wireless Pack

こちらはPicoで無線LAN接続とかSDカード読み書きをするためのボード。ESP32Eを使って通信するという、場合によってはそれESP32単体でよくね?と言われかねないものですが、ええやんけ。

無線ものといえば日本では技適がまっさきに思い浮かぶところ。製品ページを見るに技適刻印がなかったので、これは飾り物になるか基板上のESP32をはがして国内流通品に付け替えるかと言う、よくわからん賭けをしていたのですが、なんと……モジュールに技適刻印入りでした。神!!!

f:id:Akkiesoft:20210525231254j:plain

ただし、ロットによっては製品ページの画像みたくなかったりするかもしれないので、賭け状態には変わりないかもしれません。

こちらも先述のpimoroni-picoリポジトリにサンプルがあり、APに接続して適当なサイトにGETを叩くサンプルを動かすことができました。Pico LiPoと組み合わせてバッテリーで無線通信できたのでちょっと可能性を感じます。

Pico Wireless Packshop.pimoroni.com

BME688 4-in-1 Air Quality Breakout

気温・湿度・気圧とガスを計測できるBME680のアップグレード的なモジュールのブレイクアウトモジュールです。

f:id:Akkiesoft:20210525232144j:plain

BME680はもう持っているのでいらんでしょというアレもあるのですが、BME680と比べてどのくらい違うのか気になったというのがあります。あと、これは普通に室内で常時稼働させようかなと思っているところです。Qwiicコネクターがついているので、Breakout Gardenで使いたいときもピンヘッダーで出したいときもある場合に便利っぽいです。買って届いてから気づいたので、スイッチサイエンスさんでQwiic用ケーブルをポチポチしました。

付属のピンヘッダーとピンソケット、ほぼ使ってないので、だいぶ溜まってきておりアレ。

BME688 4-in-1 Air Quality Breakout (Gas, Temperature, Pressure, Humidity)shop.pimoroni.com

Pico本体が6台に。。

Pimoroniでは現在、PimoroniのPico向けのPACK・BASEを買うと、Picoが無料でオマケしてもらえるキャンペーン中です。終了日は特に記載がないようですが買ったぶんだけPicoもついてきます。なので、今回はBreakout Garden Baseと、Wireless Packに対して1個ずつ、計2個がオマケでついてきました。やばい、お得。

Get a FREE Raspberry Pi Pico when you buy one of our Pico Packs or Bases!shop.pimoroni.com

お得なのはいいけど、すでに3個あるところにPico Lipoを買って増やし、さらに2つ増えて6台になってしまって、そんなにいるんか状態になってしまいました。。OSCがあればブースで学生に押し付けたりじゃんけん大会に出したりできるんですけど、まだまだできなさそうですしねえ。とはいえ、先に買っていたVGA Demo Baseに載せたりなんだりしていくと意外と全部使っちゃったりしそうなのもまた怖いところ(☝ ՞ਊ ՞)☝

f:id:Akkiesoft:20210525232308j:plain

RP2040とCircuitPythonでマクロキーボード(ボードではない)を雑につくる

CircuitPythonだとRaspberry Pi PicoをHIDデバイスに見せてキーボードやらマウス的に動かすことが可能です。が、リリースされてすぐあたりにCircuitPythonのベータを入れたらなんか動きが怪しくて心折れて放置していました。今日久々に試したら正式版になっていて、PicoでもPimoroni Tiny2040でもちゃんと使えたので、こう言うのを作ってみました。

www.youtube.com

Pimoroni Tiny2040も動かせました。こちらはRGB LEDなので動作中のLEDの色を変える機能付き。

www.youtube.com

イクラの焼石製造機で石を掘ってもらうだけのマクロキーです。GP2がショートしている間、左右に動きながら石を彫り続けるだけのものです。そんだけのためにPicoを……500円だからいっか!w

f:id:Akkiesoft:20210523230658j:plain

コードはこんなかんじです。code.pyとしてCircuitPythonに突っ込めば動きます。

CircuitPythonで書かれた、マイクラでマウスの左を押しながら反復移動することを意図したやつ。石製造機で石を掘るとかいう感じで使える。Raspberry Pi PicoとTiny2040向け。 · GitHub

じゃないや、Adafruit_CircuitPython_HIDリポジトリにあるadafruit_hidディレクトリをlibディレクトリに入れるのも必要です。お忘れなく。

github.com

通常の自作キーボードでこう言うのをしようとするとArduinoで書く感じになりますけど、こちらはPython的にできるので気軽っぽい感じがしますね。

ところで、焼石製造機はておくらでFei3939が作ったものをベースにしたものなんですが、ベースにした方でははちみつブロックを粘着ピストンで動かすことでこれと同等の機能を実現しているので、マイクラ的にはこんなマクロキーは作らなくても実現可能です。私が今やってる自分のサーバーではまだハチの養殖に着手してないんや……!!

続・メダカの卵が採れた

前回の続き

akkiesoft.hatenablog.jp

卵を発見してわけた翌日から孵化し始めました。早すぎる。1日1〜2匹くらいのペースで増えています。

f:id:Akkiesoft:20210523180802j:plain

で、今日は晴れたのでバケツを外に出して水面に貼った油膜を取り除いたりなんだりのメンテをしていたんですが、隣の水換えバケツを覗いたら……なんかこっちにもいる〜〜!?

f:id:Akkiesoft:20210523180919j:plain

水換えのたびに水換えバケツの水草と鉢の水草が多少交換されるので、卵がこちらにも来てしまった模様。ワーオ。

とはいえ水換えバケツは水換えに必要なので、見つけ次第子メダカバケツに移ってもらうことにします。ホントは水質変わるのはよくないんですけど、仕方ない。養命酒カップですくって子メダカバケツに移籍してもらいました。

f:id:Akkiesoft:20210523181105j:plain

動画はMastodonに。現在は移籍したのも含め10匹になりました。

social.mikutter.hachune.net

子メダカはさすがにストリーミングしてませんが、親の方は引き続きこちらで観察できます。

shrimp.marokun.net

メダカの卵が採れた

鉢を眺めていたら、水草の根にメダカの卵がついていました。いくつかはカビてますが、ほかは大丈夫そう。こいつら交尾したんだ!

f:id:Akkiesoft:20210520125052j:plain

で、放置しとくと親メダカに食べられちゃったり水換えで気づかずに流されていったりするので、子メダカ用バケツを用意して卵がついた水草を移しました。卵から飼育中の実家からのアドバイスで水道水にドボンして、水換えはしないようにやっていきます。

なお、今回採った水草は株分けしようとしたら根が多いやつと葉が多いやつで別れてしまったうちの前者側。まあ、根に絡みやすいですからね。あと、小さい浮草の根にもちょっと絡まっていました。なので、多分鉢から卵を取り切れていないはずです。これはもう諦めるしかないかなー。

f:id:Akkiesoft:20210520125507j:plain

水換え用兼入りきらない水草飼育用のバケツもあるのでだいぶにぎやかになってきました。実家は子メダカ飼育にタッパーを使っているようなので、うちもうまく育ってきたらそっちに移行ですね。

f:id:Akkiesoft:20210520125705j:plain

メダカメラ

メダカを飼育してるのにRaspberry Piと絡めないのネタとしてもったいなあと思っていたのですが、ようやくやり始めました。

用意したのはDS18B20温度センサーの防水タイプと、クソ長カメラリボンケーブル。どちらもケーブル長は約2mです。aliexpressで送料含めて600円くらい。Raspberry Pi本体は室内に置きつつ、ケーブルはエアコンのダクトを通して外に出して使うプランです。すでにBME280が外に出してあるので、それをやったときと同じ要領で作業しました。

f:id:Akkiesoft:20210516132416j:plain

パテで手をベトベトにしつつ配線した図。カメラは特にケースに入れたりしていないノーガード戦法ですが、申し訳程度にビニールテープを巻きました。ベランダは台風でもないと雨はそんなに入ってこないのでとりあえずこんなもんで。だめならなんか考えましょう。

f:id:Akkiesoft:20210516132544j:plain

室内側。Raspberry Piは空いている元展示機材の3A+を雑に割り当て。展示活動が再開したら……?買い足せばええ。リボンケーブルの余長はどうにかしたいところ。

f:id:Akkiesoft:20210516132826j:plain

で、配線してから思い出したのですが、温度センサーのケーブルの端が芯だけでている状態なので、ピンヘッダーが使えるよう加工が必要なのでした。計画性がない。仕方ないので、壁に向かってエアはんだ付けで対処。ユニバーサル基板にピンヘッダーと4.7Kオームをつけてケーブルを壁ではんだ付け。

f:id:Akkiesoft:20210516132951j:plain

カメラのストリーミング映像はpython3-picameraのストリーミング機能を使いました。というか、スクリプト自体過去に作ったものを流用しています。Webサーバーとして動くので、こいつにDS18B20のデータを取得・出力できるものを追加で実装してやりました。

あとは自宅のメインWebサーバーからリバースプロキシーで通してやって、HTMLとグラフライブラリをちょいちょいいじったら完成です。このへんも、最近やり始めたエアぴっぴの再開発(bootstrap5)の使いまわしがおおいです。

f:id:Akkiesoft:20210516133702j:plain

ストリーミングのMotion JPEGは任意のタイミングで保存するとその瞬間のJPED画像が取得できるので、メダカが見えたら保存してみるのも良いでしょう。

f:id:Akkiesoft:20210516134319j:plain

Motion JPEGがどのくらい同時アクセスに耐えられるのかイマイチわかってないですが、どうせ見に来る人もそういないでしょうしダメならダメで。

shrimp.marokun.net

思いつきで機能を付け足していくので、もし開いてぶっ壊れているときは、ぶっ壊れているかぶっ壊しています。