Help us understand the problem. What is going on with this article?

Windows IoT とRaspberry Pi 2 でLチカ

はじめに

Windows IoT をRaspberry Pi 2 にインストールして,Microsoft 配布のLチカサンプル実行までのメモ.
ネット上でいろいろ調べたが,皆さんC#を使っていたが,私は諸事情あってC++でなければいけないので,以外と情報が無く,また,VC++に不慣れなこともあり,意外と苦労してしまった.
なお,Windows IoT のインストールとVisual Studio 環境の構築については,Web 上に非常に多くの情報があり,助かった.また,Windows IoT の開発を行うには,Windows10 でなければいけないとのことなので,仕方なくWin7からアップグレードした.

1. IoT Dashboard のインストール

配布先はこちらにあるが,Google で「Raspberry pi」で検索し,公式ページのDOWNLOADSから「WINDOWS 10 IOT CORE」のリンクを辿ってもたどり着ける.
配布先にたどり着いたら,Get IoT Core Dashboardをクリックして,setup.exe をダウンロードする.
setup.exe を実行すれば,インストーラーの指示通りに進めれば次のような画面になり,インストールが完了する.
dashboard.png

2. OSイメージをSDカードに書き込む

先ほどインストールしたIoT Dashboard で,OSイメージをSDカードに書き込む.パソコンに空のSDカードを挿入したら,先ほどの画面(新しいデバイスのセットアップ)で,

  • デバイスの種類:Raspberry Pi 2; Windows 10 IoT Core for Raspberry Pi 2
  • ドライブ:挿入したSDカードのドライブ
  • 「ソフトウェアライセンス条項に同意する」にチェック

となっていることを確認し,「ダウンロードとインストール」をクリックすれば終了.

3. OS のインストール

Raspberry Piをマウスとディスプレイにつなぎ,OSイメージを書き込んだSDカードを,Raspberry Piに挿入し,電源を入れると自動でOSインストールがスタートする.途中言語の選択を求められるので,日本語を選択すればよい.
インストールが完了すると,Dashboard の「自分のデバイス」タブを見ると,デバイスが表示されているはずである.
mydev.png
IPアドレスは,DHCPに対応したルーターであれば,自動で割り振られたIPアドレスがここに表示される.DHCPに対応していない場合は,MACアドレスを手動でルーターに設定する.
次に,セキュリティのために,パスワードを変更する.
先ほどの画面の設定の所にある鉛筆マークをクリックすると,次のような画面になるので,「デバイスのパスワードを変更」をクリックする.
configdev.png
すると,パスワード変更の画面となるので,新しいパスワードを設定する.
なお,最初のデフォルトの設定は,

  • ユーザー名: Administrator
  • パスワード: p@ssw0rd

である.
また,Dashboardの「自分のデバイス」タブで,「Device Portal で開く」にあるインターネットマークを押し,先ほど設定したパスワードを入力すると,より詳細なデバイスの設定ができる場面になる.
home.png

4. Visual Studio による開発の準備

これは,先人が既にまとめてくれている通りに行えばよい.

  1. Windows 10を開発者モードに切り替える
  2. WinRM(Windows リモート管理) サービスを開始する
  3. WinRM の TrastedHosts にホストを追加する

なお,3のTrastedHostsに追加の部分では,リンク先の人はデバイス名を追加しているが,私はそれではどうもうまくいかなかったため,IPアドレスを登録したらうまくいった.

また,私は,Visual Studioをデフォルトでインストールしてしまい,幾つかたりないものがあったので,それらを次の手順でインストールした.
Windows>設定>システム>アプリと機能
と進み,Visual Studio 2015をクリックして「変更」を選ぶ.
vschange.png
すると,次のような画面となるので,再び「変更」を選ぶ.
vschange2.png
次に,下の画面のように,「ツール(1,2)とWindows 10 SDK」と「Windows 10 SDK」にチェックを入れて,更新ボタンを押す.あとは,インストーラーの指示通り.
vschange3.png

5. Lチカサンプルプログラムのダウンロード

サンプルは,GitHubにあるので,こちらからZipをダウンロードする.今回使用するサンプルプログラムは,ダウンロードしたファイルに含まれている「Blinky」である.
このサンプルは,Blinky\Cpp配下にあるBlinkyCpp.slnである.

6. LEDの配線

LEDの配線は,Windows 10 IoT CoreでLEDを点滅させてみましたと全く同じにする.なお,Raspberry PiのGPIOピンの配置は,以下の通りなので,5V電源がよければそちらに変更してもよい.

7. リモートコンピュータの設定

次に,Visual Studio上のリモートコンピュータの設定を行う.ここで言うリモートコンピュータとは,Raspberry Piである.
まず,ソリューションエクスプローラー内のBlinkyCpp上で右クリックして,プロパティを選ぶ.
vsprop.png
次に,デバックタブに移動して,コンピュータ名をRaspberry PiのIPアドレス(またはコンピュータ名)に,認証の種類を「ユニバーサル」に変更する.
vsprop_debug.png
その後,ビルド構成をDebug, ARM,に変更し,次の画面の様にリモートコンピュータに配置先を設定して,プロジェクトをビルド,実行する.
vsbuild1.png
すると,無事LEDがチカチカする.また,Raspberry Piの画面もチカチカする.

エラーの対処

1. リモートデバッガーが起動に接続できない時

上記のようにプロジェクトをビルドしても,配置エラーとなり,「Microsoft Visual Studio リモート デバッガーに接続できません」との趣旨のエラーが出ることがある(私はこれにずっと悩まされました).こういう時は,IoT Dashboard からDevice Portal を開き,Debugging タブ内にある「Start Visual Studio Remote Debugger」のStartをクリックする.すると,リモートデバッカーが起動し,どのポートに接続すればよいかの指示が出るので,それに従い,先ほど設定したIPアドレスの後にポートを入力することで,私はうまくいった.
start_debugger.png

2. DEP6953エラーが出る時

何度かLチカを試していると,DEP6953エラーが出ることがある.こういう時はDevice Portal のRunning Processes から,msvsmonを停止させて(プロセス名左の×をクリック),もう一度プロジェクトをビルド・実行することで,私はうまくいった.

参考になった(なりそうな)Webページ

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした