MECHATRAXのブログ

本ブログでは、Raspberry Pi および関連モジュールを用いた
業務・産業用途での開発・運用に関する技術情報を発信しています。
【トラシュー】MicroCat.1でMemoryErrorまたはpppos_create failedが発生する

【トラシュー】MicroCat.1でMemoryErrorまたはpppos_create failedが発生する

MicroCat.1 で開発中にスクリプトを繰り返し実行していると、コンソールに MemoryError: が出力されたり、OSError: pppos_create failed が発生しネットワークへ接続できなくなる場合があります。

結論

MicroCat.1基板上のSW1(Reset)押下、またはREPLから import machine; machine.reset() でハードウェアリセットを行ってください。

基板上 SW1 の位置
※記事中の基板画像はプレリリース版のため、正式リリース版では外観が異なる可能性があります。

実際の動作(MemoryError)

ソフトウェアリセット(Thonny の実行ボタンや machine.soft_reset())では内部のリソースが一部解放されず、再利用時にエラーが発生します。

例えば、ネットワーク接続した後にソフトウェアリセットを行うと以下のように MemoryError: が出力されます。

1回目のThonny実行ボタン押下 ※エラー発生なし

2回目のThonny実行ボタン押下 ※エラー発生あり

この時、SW1押下でハードウェアリセットするとクリーンな状態で起動します。
machine.reset() でも構いません。
※ ハードウェアリセット後は COM の再選択が必要です。

< ブログ一覧へ戻る

関連製品はこちら

関連記事はこちら