LoginSignup
2
3

Raspberry Pi pico Wとpico display 2.0を使ってNode-RED Dashboardを動かしてみた。

Posted at

はじめに

Moddable Developers JapanのDiscordで、Raspberry Pi pico Wとpico display 2.0を使ってNode-RED Dashboardが動かないという質問を受けました。

スクリーンショット 2023-06-25 11.28.16.png

Pico Display Pack 2.0はこちら。

事前準備と動作確認

Raspberry Pi pico / pico Wの開発環境(Pico SDK)の構築ができている前提とします。

Raspberry Pi pico Wは既に持っていたので、さっそくpico display 2.0を購入して、サンプルプログラムを動かしてみました。

$ git clone -b main https://github.com/pimoroni/pimoroni-pico.git --recursive
$ cd pimoroni-pico
$ mkdir build
$ cd build
$  cmake ..
$ cd examples/pico_display_2
$ make

問題なくビルドが完了すると、uf2ファイルが作成されます。
「BOOTSEL」ボタンを押しながらRaspberry Pi pico Wを起動(電源をON)し、uf2ファイルをRaspberry Pi pico Wにコピーします。

(macOSの例)
$ cp pico_display2_demo.uf2 /Volumes/RPI-RP2/

FzTVr8hagAAYaVn.jpg

Moddable SDKで動作確認

Moddable SDKの開発環境の構築ができている前提とします。
piu/ballsとpiu/imagesのサンプルプログラムの動作は問題ありませんでした。

$ cd $MODDABLE/examples/piu/balls
$ mcconfig -d -m -p pico/pico_display_2

IMG_1309.jpg

$ cd $MODDABLE/examples/piu/images
$ mcconfig -d -m -p pico/pico_display_2

IMG_1310.jpg

Node-RED MCUで動作確認

node-red-mcu-pluginを使用して、Node-REDフローエディタで簡単なDashboardフローを作成しました。

248439242-12587ff6-4ac7-4db6-ad59-dd70b14dbbef.png

サンプルフロー(flows.json)はこちら。

ビルドしてファイルを書き込んで起動したところ、デバッガ(xs-bug)がすぐに停止(stack)しました。

248439222-999c82c7-0350-4350-815d-7fcd0305b53b.png

解決に向けた議論(Discussion)

Githubのnode-red-mcuのレポジトリで、Discussionを作成し、議論を開始しました。

Peterさんから返信があり、creation paramsの値の変更で動作したとの解決案が示されました。

{
	"static": 65536,
	"chunk": {
		"initial": 1024,
		"incremental": 1024
	},
	"heap": {
		"initial": 64,
		"incremental": 64
	},
	"keys": {
		"available": 8
	}
}

creation paramsの設定方法についてはこちら。

動作確認

creation paramsを設定してビルド、ファイルを書き込んで起動したところ、正常に動作することを確認しました。

IMG_1316.jpg

xs-bug_OK.jpg

node-red-mcuのmanifest_host.jsonに設定する場合はこちら。

manifest.png

"pico": {
	"creation": {
		"static": 65536,
		"chunk": {
			"initial": 1024,
			"incremental": 1024
		},
		"heap": {
			"initial": 64,
			"incremental": 64
		},
		"keys": {
			"available": 8
		}
	}
}

さいごに

Raspberry Pi picoが起動時にstackが停止(silent crash)する原因までは突き止められていませんが、
取り急ぎ簡単なDashboardフローを動かすには問題を回避できました。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3