Vercel と create-react-app
create-react-app で作っているものを Vercel で利用したいと思い少し試してみたところ、 普通にデプロイするだけで Serveless Functions も込みで利用することができました(Serverless Functions については Node.js で試しています)。
しかし、逆に言うとデプロイしないと Serverless Functions などの挙動がわからないので、 ローカル側である程度のデバッグができないかもう少し試してみました。
CodeSandbox で BLE 接続アプリのテンプレートを作ってみました
最近 CodeSandbox を利用し始めたのですが、「Web Bluetooth も使えるかな?」と試してみたところ使えるようでしたので、 BLE 接続を簡単に試せるようなテンプレート(BleEz)を作成してみました。
これを利用すれば、ウェブブラウザだけでも以下のような簡易モニターを短時間で作成できるようになるのでないかと思います。
2020-09-25 追記: テンプレートにライセンスファイル等を追加しました。
M5StcikC 心拍計のログ、安静時にケースをゆるく握る、強く握る
ジョグ(体動)のときのケースを握る強さについてはログをとりましたが、 やはり比較対象として安静時のログもあった方が良いだろうということで、 安静時にゆるく握る、強く握る動作をしたときのログをとりました。
なお、「直立時」や「腕を伸ばした状態」などの組み合わせも考えられますが、数が多くなりすぎるので省略しています。
M5StcikC 心拍計のログ、直立/安静時に腕を伸ばしている、曲げている
あとは、伸ばしているときと曲げているときのセンサー出力の「高い/低い」の差は気になるので、 ジョグ(体動)時とは別に、 単純な直立や安静時(座っている時)に腕を曲げたり伸ばしたりした場合のログ等もとってみました。
M5StcikC 心拍計のログ、ジョグ前後に腕を伸ばしている、曲げている のときに ジョグ前後の違いは運動による影響が大きいと思われるという結果になったのですが、 それでも腕の状態での差はあるようでしたので、 さらに比較できるように運動(体動)の影響がないような状態でのログをとってみました。
また、参考として、ジョグの後にとった(体動の影響が出ている)ログについても掲載しておきます。
M5StcikC 心拍計のログ、ジョグ前後に腕を伸ばしている、曲げている
あとは、握り方とは別に「走っているときとそれ以外でセンサーの値に変動があるように見える」 という点が気になります。 おそらくですが、腕を「曲げてる/伸ばしている」で違いが出ているのでないかと思いますので、 この点でも比較できるログをとっていきたいと思います。
M5StcikC 心拍計のログ、ジョグ、握り方バリエーション のときに 腕の曲げ伸ばしの状態でセンサー出力に変動があるように見えたので、 比較できるように「腕を伸ばした状態からジョグ、止まってからも腕を伸ばした状態」「腕を曲げた状態からジョグ、止まってからも腕を曲げた状態」のログをとってみました。
ADXL345 x Raspberry Pi をシェルスクリプトで利用する
表題の組み合わせでは Python を使うのが定番だと思いますが、 Raspberyy Pi Zero WH に ADXL345 を取り付けてスパイスボトルに詰め込んだときに 「ちょっとしたツールとして利用するならシェルスクリプトの方が取り回しが良いかな」ということで、 シェルスクリプトから ADXL345 を利用することにしました。
その後、とくにメンテナンスもしていなかったのですが、 少し前に ADXL345 関連のスクリプトを少し整理したので、 よい機会なので gist に張り付けておきます。
M5StcikC 心拍計のログ、ジョグ、握り方バリエーション
安静時のログのときに 「力の入れ具合でセンサー出力に影響あるかな」という感じだったので、 ジョグのときにケースの握り方に変化つけてログをとってみました。
ジョグのときは以下のように M5StickC の液晶が内側に向くように逆手で持っています。
Web Bluetooth ではキャッシュされたサービスの UUID が使われる(ような気がする)
M5StickC 心拍計 のログをBLEで取得できるよう変更していたときに、 Web Bluetooh から新しく追加したサービスに接続できず、しばらく悩んでしまったのでメモなど。
ブログ上でプロッター表示
最近、M5StickC 心拍計 のログ出力を 無線化し運動時の記録をとるようにしたのですが、 毎回の記録を表計算ソフトで個別にグラフ化するのも厳しくなってきたので、 Hugo の Shortcode でブログ上にプロッターぽいものを表示できるようにしてみました。
データを丸ごと JSON で埋め込んでいることもあり、件数によってはかなり重いですが、
ApexCharts.js を使っているのでマウス操作での拡大縮小や、アノテーション表示
(今回の例だとpeakP
ラベル)もできます。