M5Stack UnitV2 で起動時にJupyter Notebookを立ち上げる方法

M5Stack UnitV2を電源に接続して起動するとデフォルトで入っている画像認識のサーバーが起動して、画像認識のサンプルページ(10.254.239.1)が見られるようになります。

Jupyter Notebookを起動するにはページの右上の設定ボタン「Notebookに切り替える」みたいなボタンを押すことで画像認識用のサーバーが落ちてJupyter Notebookが起動します。

Jupyter Notebookを起動するには毎回この切り替え作業を行わなくてはならないのは煩わしいです。

下記がM5Stack UnitV2起動時に画像認識のページではなくJupyter Notebookを起動する方法です。

PCとUnitV2をUSB LANで接続して下記のコマンドを叩きます。

なお、UnitV2でsudoを使えるようにしている必要があります。sudoを使えるようにする方法はこちら

1
2
3
4
5
# @PC
$ ssh m5stack@10.254.239.1

# @M5Stack UnitV2
$ sudo vi ~/payload/server.py

viの編集モードになるので下記の行(29行目付近と45行目付近)を探します。

1
process = subprocess.Popen(['python3','server_core.py', str(os.getpid())], stdout=subprocess.PIPE, stdin=subprocess.PIPE, close_fds = True, bufsize = 1)

'server_core.py'の部分を'run_notebook.py'に変えます。

こんな感じになればOKです。

1
process = subprocess.Popen(['python3','run_notebook.py', str(os.getpid())], stdout=subprocess.PIPE, stdin=subprocess.PIPE, close_fds = True, bufsize = 1)

保存して抜けます(Esc => : => wq => Enter)。

下記のコマンドを叩きます。

1
$ sudo reboot

これでM5Stack UnitV2の起動時にJupyter Notebookが立ち上がるようになります。

画像認識のページに戻したい場合は~/payload/server.pyの記述を元に戻せばOKです。