先日、エルチカ様のハードウェア投稿キャンペーンの景品にて、M5stackのセット(M5Stack,M5StickC,M5StackV)を頂きました。
M5Stackについては、前回2足歩行ロボットを作成しました。↓
今回は、「M5StickC」を使って、時計を作ってみようかと思います。
ただの時計だけの機能だと少し寂しいので、他に以下のような機能を付けてみようと思います。
①時計
②ヌードボールペン
③オオタニサンのホームラン更新速報
M5StickCは、M5stack同様にesp32モジュールを内蔵してますので、wifiやBluetoothの無線通信が可能です。また6軸センサや液晶もあるので、色々な事ができそうです。
i2cのシリアル通信もできるので、他デバイスとの連携も可能ですが、今回は初回という事で上記のような機能を備えた簡易的な時計を作ってみようかと思います。
まあ②と③ははっきり言ってクソ機能になりますが、一応M5StickCの機能を少しでも発揮させたいとの考えから絞り出した結果になります。。でも、斬新でいいでしょう?発想で勝負、OKOKプラス思考。
それでは初めに、上記機能を実装するにあたり、おおまかな構想をまとめておこうかと思います。
開発言語
micropython
M5Stackの開発言語はCが主に使われていますが、pythonで作成する事にします。
比較的にpythonでの開発はネット上に情報が少ないかと思いますので、少数の方の参考になればいいなとの思いもあります。
M5StickCもM5Stack同様にmicropythonが使えますので、開発環境はthonny IDE等を利用します。
実装機能
時計
シンプルに時間と分を表示させる時計を実装します。
他の機能との切替はA,Bのボタンで出来るようにしたいので、その辺りを踏まえてコーディングしていきます。
ただやっぱり、これだけでは面白みがないですし、多機能なM5StickCが可哀そうです。
てことで以下の機能を追加してみます。
ヌードボールペン
これはハワイのお土産で昔よく見かけたやつです。若い方は知らないでしょうが、昔はやったんですよねこれ。
ボールペンにセクシー女性が描かれてて、傾けると「いや~ん♡」な姿になってくれるというあれです。服が脱げるんです。
つまり、加速度、ジャイロの6軸センサを使ってこれを再現させようとの目論見です。。
どうでしょうか、こんなにもM5StickCのセンサを無駄な事に使用している奴はなかなかいないのではないでしょうか?
オオタニサンのホームラン更新情報
オオタニサン、すごいですよね、、シーズン半分で33本ですってΣ(・□・;):7/11時点
日々の楽しみとして、オオタニサンが一発打ったかどうかってのは気になるところです。
ですので、ボタンを押せばこの情報をヤフーニュースからWEBスクレイピングして画面に表示させる、というものを実現してみようかと思います。。
まあ、こんなもん勝手にスマホに入ってくるニュースですが、そんなこと言ったら終わりですよね。諦めたらそこで試合終了っていうじゃないですか?なんか自分でなに言ってるかわかんないけど。
とにかく、一見意味のない機能でも作ることに意義があるんですよ!
ってことで、これも無駄にM5StickCをネット接続させて、自動でオオタニサンのHR情報を引っ張ってくる機能(WEBスクレイピング)を作ってみます。
無理やりesp32の機能を使っている感は否めませんが、イイんです!M5StickCちゃんも喜ぶはずですよフハハハハハ!!
まとめ
無理やりセンサーや無線の機能を使った感がありますが、意味のない機能でも発想の斬新さを褒めて下さい。これ作るのに2~3日かかってますので。。(-_-;)
エンジニアってのは、もちろん知識と技術力ですが、想像力も大事なのですよ!
それでは、次回は開発環境の構築についてまとめようと思います。