IoTパート Spresenseセットアップ#

このNotebookは,Spresenseカメラ動作環境を構築するためのセットアップ手順をまとめたものです.
以下の流れで進めます.

  1. Spresenseカメラへのソフトウェアのインストール

  2. PCからSpresenseカメラへのアクセス

実行はPCのvscode上のターミナル及びArduino IDEから行います.
ここでは,PCでSpresenseカメラを動かすためのセットアップを行います.
セットアップ完了後はPiNodeに接続すればSpresenseカメラを動かすことができます.

今回使用するリポジトリとして,以下のものを作業PCにクローンしておいてください.

git clone https://github.com/MinenoLab/PiNode3-SPRESENSE.git

参考リポジトリ: PiNode3-SPRESENSE

1. Spresenseカメラへのソフトウェアのインストール#

参考:https://developer.spresense.sony-semicon.com/development-guides/?page=arduino_set_up&lang=ja

1.1 Arduino IDEのインストール#

URLからArduino IDEをダウンロードしてインストールします.

1.2 USBドライバのインストール#

URLからUSBドライバをダウンロードしてインストールします.

1.3 SPRESENSE Arduino board packageのインストール#

Arduino IDEを起動し,以下の手順でSPRESENSE Arduino board packageをインストールします.

  1. メニューバーの「ファイル」から「基本設定」を選択

  2. 「追加のボードマネージャのURL」の入力欄に以下のURLを追加→OKをクリック

    https://github.com/sonydevworld/spresense-arduino-compatible/releases/download/generic/package_spresense_index.json
    
  3. メニューバーの「ツール」から「ボード」→「ボードマネージャ」を選択

  4. 「spresense」で検索し,「SPRESENSE Reference Board」をインストール(Packetizerはエラーが出ればインストール)

1.4 Spresenseカメラの接続#

SpresenseカメラをPCのUSBに接続します.

1.5 Spresenseカメラへの書き込み#

Arduino IDEを起動し,以下の手順でSpresenseカメラにソフトウェアを書き込みます.

  1. メニューバーの「ツール」から「ボード」→「SPRESENSE Reference Board」→「Spresense」を選択

  2. メニューバーの「ツール」から「シリアルポート」を選択し,Spresenseカメラのポートを選択

  3. メニューバーの「ツール」から「Memory」→「1536KB」を選択

  4. メニューバーの「ツール」から「UploadSpeed」→「115200」を選択

  5. メニューバーの「ツール」から「書き込み装置」→「Spresense Firmware Updater」を選択

  6. メニューバーの「ツール」から「ブートローダーを書き込む」を選択

  7. 書き込みが完了したら,スケッチのコンパイルと書き込みを行うためのファイルを開く

    • 「ファイル」→「開く」を選択し,クローンしたリポジトリの中の「Arduino.ino」を選択

  8. 右矢印の「マイコンボードへ書き込む」を選択

2. PCからSpresenseカメラへのアクセス#

Spresenseカメラへの書き込みが完了したら,PCからSpresenseカメラにアクセスします.
VSCodeでクローンしたリポジトリを開き,ターミナルで作業を実施します.
ライブラリをインストールするため,仮想環境上での作業を推奨します.
手順は以下の通りです.

  1. 仮想環境を作成し,アクティベートします.

  2. リポジトリ内のrequirements.txtを確認し,必要なライブラリをインストールします.

    cd PiNode3-SPRESENSE/python
    pip install -r requirements.txt
    
  3. ターミナルで以下のコマンドを実行し,Spresenseカメラからのデータを受信します.

    python image_checker.py
    

エラーと対処法#

Spresenseが認識されない#

デバイスマネージャーを開き,「ポート(COMとLPT)」の中に「Silicon Labs CP210x USB to UART Bridge(COMx)」が表示されているか確認してください. → 表示されていない場合は,USBドライバのインストールが正しく行われていない可能性があります.USBドライバを再インストールしてください.

COMポートの認識エラー#

画像取得の際にCOMポートエラーが出る場合は,デバイスマネージャーを開き,「ポート(COMとLPT)」の中に上記のSpresense以外のポートが表示されていないか確認してください. → 表示されている場合は,PiNode3-SPRESENSE/python/lib/SpresenseCameraChecker.py の67行目の除外条件を確認してください.

com_ports = [port for port in com_ports if "CP210" in port.description] # Exclude Bluetooth ports

ボード書き込みエラー#

インストール環境によりpgmspace.hが存在せず、エラーが発生する場合はあります。 エラーの解決のためには以下の手順を実行してください。

以下のリンクからpgmspace.hをダウンロードしてください。 pgmspace.h

ダウンロードしたpgmspace.hを以下のディレクトリにコピーしてください。 Arduino/libraries/FastFRC/src/pgmspace.h