広告 IoT電子工作入門 電子工作

Raspberry Pi Pico 2Wの環境構築とLチカ【第2回IoT電子工作】

2025/11/30

※当サイトでは、一部の記事にアフィリエイト広告を掲載しています。

前回の第1回記事では、Raspberry Pi Pico 2Wの基本的な特徴と必要な機材について解説しました。

Raspberry Pi Pico 2Wの主な特徴

    • 小型のマイコンボード
    • Wi-Fi・Bluetooth内蔵
    • 本体価格 約1,400円(ピンヘッダ無し)、ピンヘッダ有りは約1,700円

第2回となる、この記事では、開発環境の構築とLチカ(LEDを点滅する)まで行います。

YouTube動画

YouTubeでも解説しています

第2回で実現すること

本記事では、Raspberry Pi Pico 2Wを使ったIoT電子工作の環境構築を行い、最初のプログラム「Lチカ」(LEDの点滅)を実現します。

具体的には以下の5つのステップを完了させます。

step
1
Thonny IDEのインストール

step
2
MicroPythonのセットアップ

step
3
Groveシールドの取り付け

step
4
LEDの点滅プログラム実行

step
5
Lチカ成功!

必要な機材の確認

今回の作業に必要な機材は以下の通りです。

今回はいよいよ実際にプログラムを動かしていきます。


Thonny IDEのインストール - MicroPython開発環境の準備

Thonny IDEとは?Python専用の統合開発環境でMicroPython(今回使用する環境)も対応

Thonny IDEは、Python専用の統合開発環境(IDE)です。

IoT電子工作、特にRaspberry Pi PicoシリーズでのMicroPython開発に最適な特徴を持っています。

Thonny IDEの主な特徴

    • Python専用の開発環境:Pythonプログラミングに特化した統合開発環境
    • MicroPythonに標準対応:マイコン向けの軽量版PythonであるMicroPythonに対応(今回使用)
    • 無料: 完全無料で使えます
    • クロスプラットフォーム - Windows/Mac/Linux全てのOSに対応

Pythonに特化しており、RaspberryPi専用モードもあるため、今回使用するRaspberry Pi Pico 2Wとの接続や書き込みが簡単です。

Thonny IDEのダウンロードとインストール手順(Windows/Mac/Linux)

Thonny IDEのダウンロード手順

step
1
ブラウザで https://thonny.org/ にアクセス

step
2
右上の「Download」をクリック

step
3
ご自身のOS(Windows / Mac / Linux)を選択

step
4
ダウンロードが開始されます

ダウンロードしたファイルは、各OSごとに以下の形式になります:

    • Windows: .exe ファイル
    • Mac: .pkg ファイル
    • Linux: パッケージマネージャー経由またはスクリプト

Thonny IDE Windows版のインストール手順

Windows版のインストール手順について説明します。

step
1
ダウンロードした `.exe` ファイルをダブルクリックして実行

step
2
セットアップウィザードが起動したら、基本的に「Next」をクリックして進める

step
3
インストール先はデフォルトのままでOK(変更したい場合は任意のフォルダを指定可能)

step
4
「Install」をクリックしてインストール開始

step
5
完了したら「Finish」をクリック

Thonny IDEの初期設定と日本語化

初回起動時の設定

Thonny IDEを初めて起動すると、言語と初期設定を選択する画面が表示されます。

推奨設定

    1. Language(言語): 「日本語」を選択(日本語で使いたい場合) 英語のままでも問題ありません
    2. Initial settings(初期設定): 「Raspberry Pi (Simple)」を選択

Thonny IDEのInitial settings(standardとRaspberry Pi (Simple)の違い)

  • standard: 汎用的なPython開発環境として設定されます
  • Raspberry Pi (Simple): 今回使用するRaspberry Pi Pico 2WなどのRaspberry Piへのプログラム転送と実行に特化した設定です

今回はRaspberry Piの開発が目的なので、「Raspberry Pi (Simple)」 がオススメです。

設定が完了したら「Let's go!」をクリックして起動します。

Thonny IDEの画面構成

Thonny IDEを起動すると、以下の4つの主要エリアが表示されます。

Thonny IDEの主要エリア

  •  エディタエリア(上部中央) - プログラムコードを書く場所
  • シェル(下部) - プログラムの実行結果が表示される場所
  • ツールバー(最上部) - よく使う機能(実行、停止、保存など)がボタンで配置
  • ファイルブラウザ(左側) - ファイルの操作や管理を行う

この4つのエリアを使いこなすことで、効率的にプログラム開発ができます。


MicroPythonのセットアップ - Raspberry Pi Pico 2Wへのファームウェア書き込み

MicroPythonとは?マイコン向けPython実行環境の基礎知識

MicroPythonは、マイコン(小型のコンピュータ)上で動作するように最適化された軽量版Pythonの実行環境です。

MicroPythonの特徴

    • マイコン用のPython実行環境: メモリやストレージが限られたマイコンでも動くように設計
    • 通常のPython(CPython)の軽量版:基本的な文法は通常のPythonと同じ
    • Raspberry Pi Pico 2Wで動作するOS的な役割: Raspberry Pi Pico 2Wのハードウェアを制御するためのシステム
    • 一度書き込めばOK:一度インストールすれば、プログラムを何度でも書き換え可能

MicroPythonがないと、Raspberry Pi Pico 2WでPythonのプログラムを実行できません。

MicroPythonのダウンロード方法

MicroPythonのファームウェアは公式サイトから無料でダウンロードできます。

MicroPythonのダウンロード手順

step
1
ブラウザで公式サイトにアクセス: https://micropython.org/download/RPI_PICO2_W/


step
2
FirmwareセクションのReleasesから最新版の `.uf2` ファイルをダウンロード


step
3
ファイル名の例: `rp2-pico2w-20250911-v1.26.1.uf2` (latest)

日付とバージョン番号は時期によって異なります。

必ずlatest(最新版)をダウンロードしてください。

Raspberry Pi Pico 2Wのファームウェアであることを確認

注意: Raspberry Pi Pico 2W用のファームウェアを必ずダウンロードしてください。通常のPico用やPico W用は動作しないおそれがあります。

Raspberry Pi Pico 2WをBOOTSELモードで接続する手順

MicroPythonファームウェアを書き込むには、Raspberry Pi Pico 2WをBOOTSELモードで起動する必要があります。

Raspberry Pi Pico 2WのBOOTSELモードとは

BOOTSELモードは、Raspberry Pi Pico 2Wをストレージデバイスとして認識させる特殊な起動モードです。

このモードでは、Pico 2WがUSBメモリのように見え、ファイルをドラッグ&ドロップで書き込むことができます。

Raspberry Pi Pico 2WのBOOTSELモードでの接続手順

step
1
Raspberry Pi Pico 2WのUSBケーブルを抜く(既に接続している場合)

step
2
Raspberry Pi Pico 2Wの白いボタン(BOOTSEL)を押しながら、USBケーブルをPCに接続

step
3
ボタンを押したまま2秒間待つ

step
4
PCに「RP2350」というドライブが表示される

このドライブが表示されたら、BOOTSELモードでの接続は成功です。

BOOTSELモードでのトラブルシューティング

ドライブが表示されない場合は、以下を確認してください。

    • BOOTSELボタンをしっかり押せているか
    • BOOTSELボタンを押してからUSBケーブルを接続しているか
    • USBケーブルが正常に接続されているか
    • USBケーブルがデータ転送対応のものか(充電専用ケーブルでは認識されません)

MicroPythonファームウェアをRaspberry Pi Pico 2Wへ書き込む方法

BOOTSELモードで接続できたら、いよいよMicroPythonファームウェアを書き込みます。

MicroPythonファームウェア書き込み手順


step
1
エクスプローラー(Windows)またはFinder(Mac)を開く

step
2
「RP2350」ドライブを開く

step
3
先ほどダウンロードした `.uf2` ファイルをドラッグ&ドロップ

step
4
自動的にコピーが始まる

step
5
数秒後、Raspberry Pi Pico 2Wが自動的に再起動

step
6
「RP2350」ドライブが消える

MicroPythonの書き込みが完了すると、RP2350のドライブが消えますが、これは正常な動作です。

ドライブが消えたということは、書き込みが成功した証拠です。

MicroPythonファームウェアの書き込み完了です!

これでRaspberry Pi Pico 2WにMicroPythonがインストールされました。

この作業は一度だけ行えばOKです。

ThonnyでRaspberry Pi Pico 2Wを認識させる設定

MicroPythonの書き込みが完了したら、Thonny IDEでRaspberry Pi Pico 2Wを認識させます。

ThonnyでRaspberryPi Pico 2Wの認識手順

step
1
Thonny IDEを起動

step
2
Raspberry Pi Pico 2WをUSBケーブルでPCに接続(今度はBOOTSELボタンを押す必要はありません。通常通りUSBケーブルを接続するだけです。)

step
3
Thonny IDE右下の「Python 3.x.x」と表示されている部分をクリック


step
4
「MicroPython (Raspberry Pi Pico)」を選択

step
5
ポートを選択(自動検出される)


step
6
シェルエリア(下部)に「>>>」が表示される

通常は自動的に正しいポートが選択されます。

複数のデバイスが接続されている場合は、手動で選択が必要な場合があります。

シェルエリアに「>>>」が表示されたら、接続成功です。

Raspberry Pi Pico 2Wとの接続確認(Thonny IDE)

正しく接続されているか、簡単なコマンドで確認してみましょう。

シェルに以下のコマンドを入力してEnterキーを押してください。

 Thonnyのシェルに入力
>>> print("Hello, Pico 2W!")

実行結果:

 command
>>> Hello, Pico 2W!

このように表示されたら、接続は完全に成功しています。

おめでとうございます!


Groveシールドの取り付けとLED接続 - はんだ付け不要の配線方法

Groveシールドとは?IoT電子工作を簡単にする拡張基板

Groveシールドは、Raspberry Pi Pico 2Wに各種センサーやアクチュエーターを簡単に接続するための拡張基板です。

Groveシールドの特徴

  • はんだ付け不要 - 初心者でも安心
  • Groveケーブルを挿すだけ - 配線ミスが起こりにくい
  • 10個のGroveコネクタ搭載 - 複数のセンサーを同時に接続可能
  • デジタル/アナログ/I2C/UART対応 - 様々なセンサーに対応

従来の電子工作では、ブレッドボードやジャンパー線を使った配線が必要でしたが、Groveシステムを使えば、ケーブルを挿すだけで配線が完了します。

Raspberry Pi Pico 2WへのGroveシールド取り付け手順

Groveシールドの取り付けは、ピンを挿し込むだけの簡単作業ですが、慎重に行う必要があります。

取り付け手順

重要: 作業前に必ずRaspberry Pi Pico 2WのUSBケーブルを抜いてください。電源が入った状態での取り付けは、故障の原因となります。

step
1
Raspberry Pi Pico 2WのUSBケーブルを抜く

step
2
Raspberry Pi Pico 2Wの向きを確認

step
3
Groveシールドの向きを確認

step
4
ピンの位置を合わせる

step
5
まっすぐ垂直に押し込む

注意: ピンが曲がらないように、必ず垂直に押し込んでください。

片側だけ強く押すと、ピンが曲がる可能性があります。

均等に力を加えながら、ゆっくりと押し込みます。

しっかりと奥まで挿入し、隙間がない状態にします。

Groveシールドのコネクタ配置(デジタル/アナログ/I2C/UART)

Groveシールドには、用途別に複数のコネクタが配置されています。

センサーやモジュールの種類に応じて、適切なコネクタに接続する必要があります。

Raspberry Pi Pico 2Wのデジタルポート(Digital Ports)

ポート名: D16, D18, D20

用途:LEDやボタンなど、ON/OFF制御を行うデバイス

Raspberry Pi Pico 2Wのアナログポート(Analog Ports)

ポート名: A0, A1, A2

用途:照度センサーや温度センサーなど、アナログ値を読み取るデバイス

Raspberry Pi Pico 2WのI2CポートとUARTポート

ポート名: I2C0, I2C1, UART0, UART1

用途:複数のICやセンサーとの通信

今回のLチカではデジタルポート「D16」を使用します。

Grove LEDモジュールの接続方法

それでは、実際にGrove LEDモジュールを接続していきます。

使用するGrove LEDモジュール

今回使用するのは、Groveスターターキットに含まれている赤色LEDモジュールです。

LEDモジュールの特徴

  •  デジタル制御(ON/OFF)
  • Groveケーブル1本で接続
  • 抵抗内蔵で過電流を防止、安全に使用可能

LEDの極性について

LEDには極性(プラスとマイナス)があります。

Groveスターターキットに含まれるLEDは、足の長さが揃っているため、LED内部の金属で向きを判断します。

LED内部金属の見分け方

  • 足が長いほうがアノード(+)
  • 足が短いほうがカソード(-)
  • LED内部金属の平たい方がカソード(-)

LEDの極性(プラス・マイナス)の見方

Grove LEDモジュールには、正しい向きで挿入できるように設計されていますが、念のため確認してください。

接続手順

step
1
Grove LEDモジュールを用意

step
2
Grove LEDモジュールに赤色LEDを挿す

step
3
LEDモジュールにGroveケーブルを接続

step
4
Groveシールドのデジタルポート「D16」にGroveケーブルのもう一方を接続

step
5
接続完了

  1.  これで、Raspberry Pi Pico 2WとLEDの接続が完了しました。


Lチカプログラミング - PythonでLEDを制御する初めてのIoTプログラム

「Lチカ」とは?IoT電子工作の第一歩

「Lチカ」は、LED(L)をチカチカ(チカ)させることの略称で、電子工作やプログラミング学習における最初の課題です。

Lチカの意義

  • IoT電子工作の Hello World - プログラミング学習における「Hello World」に相当
  • ハードウェアとソフトウェアの連携 - プログラムで物理的なLEDを制御
  • 基礎の習得 - GPIO制御、時間制御など、基本的な概念を学べる

できたら一人前!まずはLチカを成功させましょう。

Lチカプログラムのコード全体と実行方法

それでは、実際にLチカのプログラムを書いていきます。

完全なコード

以下のコードをThonny IDEのエディタエリアに入力してください。

 command
from machine import Pin
import time
# LEDピンの設定
LED_PIN = 16
# 点滅間隔(秒)
INTERVAL = 0.1  
# LEDの準備
led = Pin(LED_PIN, Pin.OUT)
# 点滅を繰り返す
while True:
    led.on()
    time.sleep(INTERVAL)
    led.off()
    time.sleep(INTERVAL)

このコードは、わずか10行程度ですが、IoT電子工作の基本的な要素がすべて含まれています。

次のセクションで、各行の意味を詳しく解説します。

コード解説①:ライブラリのインポート(machine/Pin/time)

プログラムの最初の2行は、必要なライブラリをインポートしています。

from machine import Pin
import time

from machine import Pin

from machine import Pin

    • machine は、Raspberry Pi Pico 2Wのハードウェアを操作するためのライブラリです
    • Pin は、GPIOピン(入出力ピン)を操作するためのクラスです
    • from ... import を使うことで、machine.Pin ではなく、Pin と短く書けます

import time

import time

    • time は、時間に関する機能を提供するライブラリです
    • 今回は、LEDを1秒間隔で点滅させるために使用します
    • time.sleep(秒数) という関数で、指定した秒数だけプログラムを一時停止できます

コード解説②:GPIOピン設定とLED制御の仕組み

次の3行は、定数の定義とLEDの準備です。

# LEDピンの設定
LED_PIN = 16
# 点滅間隔(秒)
INTERVAL = 1

# LEDの準備
led = Pin(LED_PIN, Pin.OUT)

定数の定義

LED_PIN = 16
INTERVAL = 1

    • LED_PIN = 16: LEDを接続したGPIOピン番号を指定します
    • D16ポートは、内部的にGPIO16番ピンに対応しています
    • 変数名を大文字にすることで、定数(変更しない値)であることを示しています
    • INTERVAL = 1: 点滅の間隔を秒単位で指定します
    • 1秒ごとに点灯・消灯を繰り返します
    • この値を変更すれば、点滅速度を変えられます

このように、変更する可能性のある値を変数として定義しておくと、後から修正しやすくなります。

LEDの準備

led = Pin(LED_PIN, Pin.OUT)

この1行で、GPIO16番ピンをLED制御用に設定しています。

    • Pin(LED_PIN, Pin.OUT): GPIOピン16番を「出力モード」で使用する設定
    • LED_PIN: 使用するピン番号(16)
    • Pin.OUT: 出力モード(信号を出す側)
    • 出力モードにすることで、HIGH(3.3V)またはLOW(0V)の電圧を出力できます
    • led: 設定したピンを操作するためのオブジェクト
    • led.on() でLED点灯
    • led.off() でLED消灯

コード解説③:無限ループとtime.sleep()による点滅制御

最後の5行は、実際にLEDを点滅させる部分です。

# 点滅を繰り返す
while True:
    led.on()
    time.sleep(INTERVAL)
    led.off()
    time.sleep(INTERVAL)

while True: - 無限ループ

while True:

    • while True:: 条件が常に真(True)なので、永遠に繰り返すループです
    • このループの中の処理が、プログラムを停止するまで繰り返し実行されます
    • Pythonでは、ループの中身をインデント(字下げ)で表現します

LEDの点灯と待機

    led.on()
    time.sleep(INTERVAL)

    • led.on(): LEDを点灯させます
    • GPIO16番ピンにHIGH(3.3V)を出力
    • time.sleep(INTERVAL): INTERVAL秒(1秒)待機します
    • この間、LEDは点灯したまま

LEDの消灯と待機

    led.off()
    time.sleep(INTERVAL)

    • led.off(): LEDを消灯させます
    • GPIO16番ピンにLOW(0V)を出力
    • time.sleep(INTERVAL): INTERVAL秒(1秒)待機します
    • この間、LEDは消灯したまま

この4行が繰り返されることで、「1秒点灯 → 1秒消灯 → 1秒点灯 → 1秒消灯…」というLチカが実現されます。

Thonny IDEでプログラムを実行する手順

それでは、実際にプログラムを実行してみましょう。

実行手順

step
1
Thonny IDEのエディタエリア(上半分)をクリック

step
2
エディタエリアがアクティブになっていることを確認

step
3
上記のコードを入力(またはコピー&ペースト)

step
4
ツールバーの緑色の「▶(再生)」ボタンをクリック

step
5
ファイル名を聞かれたら「main.py」と入力

step
6
保存先は「Raspberry Pi Pico」を選択

step
7
プログラムがRaspberry Pi Pico 2Wに保存され、実行される

step
8
LEDが点滅開始!

🎉 おめでとうございます!Lチカ成功です! 🎉

あなたはIoT電子工作の第一歩を踏み出しました。この小さな一歩が、大きな可能性の始まりです。

プログラムの停止方法と点滅速度の変更カスタマイズ

プログラムの停止方法

Lチカプログラムは無限ループなので、自動的には停止しません。停止するには、以下の手順を実行します。

    1. ツールバーの赤い「■(停止)」ボタンをクリック
    2. プログラムが停止
    3. LEDも消灯

シェルに KeyboardInterrupt というメッセージが表示されたら、正常に停止しています。

点滅速度の変更

プログラムを少しカスタマイズしてみましょう。点滅速度を変更するには、INTERVALの値を変更します。

例: 0.5秒間隔で点滅させる

from machine import Pin
import time

# LEDピンの設定
LED_PIN = 16
# 点滅間隔(秒)
INTERVAL = 0.5  # 1から0.5に変更

# LEDの準備
led = Pin(LED_PIN, Pin.OUT)

# 点滅を繰り返す
while True:
    led.on()
    time.sleep(INTERVAL)
    led.off()
    time.sleep(INTERVAL)

INTERVAL = 0.5 に変更することで、点滅速度が2倍になります。

他の例:

    • INTERVAL = 2 → ゆっくり点滅(2秒間隔)
    • INTERVAL = 0.1 → 高速点滅(0.1秒間隔)

このように、変数として定義しておくことで、簡単にカスタマイズできます。

ぜひ、いろいろな値を試してみてください!


トラブルシューティング - よくあるエラーと解決方法

Lチカがうまく動作しない場合、以下のポイントを確認してください。

Raspberry Pi Pico 2Wが認識されない場合

症状: Thonny IDEでRaspberry Pi Pico 2Wが認識されない

確認ポイント:

    1. USBケーブルが正しく接続されているか
    2. Thonny IDEの右下で「MicroPython (Raspberry Pi Pico)」が選択されているか
    3. USBポートを変更してみる
    4. PCを再起動してみる
    5. Thonny IDEを再起動してみる

MicroPythonの書き込みに失敗する場合

症状: MicroPythonファームウェアの書き込みが完了しない、またはエラーが出る

確認ポイント:

    1. BOOTSELボタンを正しく押しているか
    2. 「RP2350」ドライブが表示されているか
    3. 正しい.uf2ファイルをダウンロードしているか
    4. ファイルのダウンロードが完全に終わっているか

Lチカが動作しない場合の確認ポイント

症状: プログラムは実行されるが、LEDが点滅しない

確認ポイント:

    1. Groveシールドが正しく取り付けられているか
    2. LEDモジュールが「D16」ポートに接続されているか
    3. LEDの極性は正しいか
    4. Groveケーブルがしっかり接続されているか
    5. プログラムにタイプミスがないか
    6. シェルにエラーメッセージが表示されていないか

エラーメッセージの例:

    • NameError: name 'Pin' isn't defined → Pinの大文字小文字が間違っている、またはimportしていない
    • IndentationError → インデント(字下げ)が間違っている
    • AttributeError: 'Pin' object has no attribute 'on' → ledオブジェクトが正しく作成されていない

これらのエラーメッセージを見て、該当する行を修正してください。


まとめと次回予告

第2回で達成したこと

今回の記事では、以下の内容を実現しました。

✅ Thonny IDEをインストール - Python開発環境を整えました
✅ MicroPythonをRaspberry Pi Pico 2Wに書き込み - プログラムを実行できる環境を作りました
✅ Groveシールドを取り付け - はんだ付け不要で拡張可能にしました
✅ LEDを接続 - Grove LEDモジュールを配線しました
✅ Lチカプログラムを実行 - 初めてのIoTプログラムを動かしました
✅ LEDの点滅に成功! - IoT電子工作の第一歩を踏み出しました

おめでとうございます!あなたはIoT電子工作の基礎を身につけました。

次回予告:ボタンでLEDを制御するデジタル入力の基礎

第3回では、さらにステップアップして、ボタンでLEDを制御する方法を学びます。

次回の内容:

デジタル入力の基礎

    • デジタル入力とは何か
    • Grove ボタンモジュールの使い方

ボタン制御

    • ボタンを押したらLED点灯
    • トグルスイッチの作成(ボタンを押すたびにON/OFF切り替え)

応用

    • チャタリング対策
    • 複数のボタンとLEDの組み合わせ

次回は、「入力」を扱うことで、よりインタラクティブなIoT電子工作に挑戦します。

次回までに準備しておくこと

次回までに、以下の準備をしておくとスムーズです:

    1. 今回のLチカプログラムを色々変更してみる
    2. Thonnyの操作に慣れる
    3. 特に新しい機材は不要!


関連リソース

サンプルコード(GitHub)

本記事で使用したサンプルコードは、GitHubで公開しています。

リポジトリ: https://github.com/Python-Electronics-Thunderblog/raspberrypi-pico2w-iot-course

動画解説(YouTube)

本記事の内容は、YouTube動画でも詳しく解説しています。

チャンネル: ThunderBlog YouTube

実際の画面を見ながら学習できます

分からないところは何度でも見返せます

この記事が役に立ったら、ぜひチャンネル登録と高評価をお願いします!

参考リンク集

    • Thonny IDE 公式サイト: https://thonny.org/
    • MicroPython 公式サイト: https://micropython.org/
    • Raspberry Pi Pico 2W 公式ドキュメント: [Raspberry Pi公式サイト]
    • Groveシステム: [Seeed Studio公式サイト]

お問い合わせ

質問や不明点がありましたら、お気軽にご連絡ください。


次回もお楽しみに!

https://www.youtube.com/watch?v=OkLp90YZhvI

  • この記事を書いた人
SNSアイコン

サンダー

電気機器メーカーに就職し、ハードエンジニアとして勤務しています。 ブログでは電気、プログラミング、データサイエンスについて書いています。 電気×プログラミング×データサイエンスの3本柱で日本の製造業を盛り上げたいです!

-IoT電子工作入門, 電子工作