歩数カウントが怪しいので信号のグラフ表示をしてみたい。
arduplotというのがある様なので試してみよう。
github.com
インストール
pyenvでローカルバージョンを最新に固定してインストールしてみる
PlatformIOのターミナル立ち上げないとダメだった。(>アイコン)
pipでインストール。
pip install arduplot
うまくいったみたい。
環境構築
monitor ディレクトリがプロジェクト直下に必要らしい。
% mkdir monitor
ターゲット(espressif32)に合わせて./platformio下にもmonitorディレクトリが必要らしい。
そしてpythonスクリプトを中にコピー。(pyenvでインストールしたのでそちらからコピー).
python3.10はその時のバージョンに合わせて変える。
% mkdir -p ~/.platformio/platform/espressif32/monitor % cp ~/.platformio/penv/lib/python3.10/site-packages/arduplot/filter_plotter.py ~/.platformio/platform/espressif32/monitor
アクセスできる様に環境設定.
% export PLATFORMIO_MONITOR_DIR=${HOME}/.platformio/penv/lib/python3.10/site-packages/arduplot/
実行してみるが unknown filters ploter
と出て失敗してる様だ。
% pio device monitor -f plotter Warning! Skipping unknown filters `plotter`. Known filters are `colorize, debug, default, direct, esp32_exception_decoder, hexlify, log2file, nocontrol, printable, send_on_enter, time` --- Terminal on /dev/cu.usbserial-6552D809B6 | 115200 8-N-1 --- Available filters and text transformations: colorize, debug, default, direct, esp32_exception_decoder, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at https://bit.ly/pio-monitor-filters --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H
また改めて
環境設定で 3.10 とするところを 3.9 にしてたためだった。
% pio device monitor -f plotter --- serial_plotter is starting --- Terminal on /dev/cu.Bluetooth-Incoming-Port | 115200 8-N-1 --- Available filters and text transformations: colorize, debug, default, direct, esp32_exception_decoder, hexlify, log2file, nocontrol, plotter, printable, send_on_enter, time --- More details at https://bit.ly/pio-monitor-filters --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H
フィルターは認識されてそう。
arduplotでグラフが出るらしいので実行してみる。
(platformio.iniでポート指定されてない場合は -p オプションで渡すといい。今、実機接続してないのでこのポートはダミーとして渡してる)
% arduplot -p /dev/cu.Bluetooth-Incoming-Port
なんかウインドウがでたのでいいんじゃない。