Raspberry Pi Pico 2 W / RP2350 向けの Embassy Rust サンプル集です。
RP2350_wifi: Pico 2 W を WiFi に接続し、telnet server を起動します。RP2350_demo:RP2350_wifiをベースに、オンボード LED 制御と 20x4 I2C LCD 表示を追加したデモです。RP2350_led: Pico 2 W のオンボード LED を点滅させます。RP2350_lcd: PCF8574 I2C backpack 付き HD44780 互換 20x4 LCD に文字を表示します。RP2350_bt: Bluetooth GATT サンプルです。
RP2350_lcd と RP2350_demo は以下の配線を想定しています。
| LCD | Pico 2 W |
|---|---|
| GND | GND |
| VCC | 3V3 |
| SDA | GP4 |
| SCL | GP5 |
LCD I2C address は 0x27 を初期値にしています。使用している LCD backpack が 0x3f などの場合は、対象ソース内の LCD_ADDRESS を変更してください。
このリポジトリは再現性を優先し、Embassy project の必要なファイルを embassy/ 以下に含めて公開する構成です。clone 後に追加の submodule 初期化なしで build できます。
通常ビルド:
cargo build --release --bin RP2350_demoWiFi 接続情報を埋め込んでビルド:
WIFI_SSID='your-ssid' WIFI_PASSWORD='your-password' cargo build --release --bin RP2350_demoオープンネットワークの場合は WIFI_PASSWORD を空、または未設定にします。
picotool で pico2w.uf2 を作成します。
picotool uf2 convert target/thumbv8m.main-none-eabihf/release/RP2350_demo -t elf pico2w.uf2RP2350_demo を書き込んだ後、Pico 2 W が WiFi に接続されると telnet port 23 で待ち受けます。
telnet から通常の文字列を送信すると LCD に表示されます。以下のコマンドも使えます。
help: コマンド一覧を表示status: 接続状態を表示led on: オンボード LED を点灯led off: オンボード LED を消灯quit/exit: telnet 接続を終了
このプロジェクトは MIT OR Apache-2.0 のデュアルライセンスです。詳細は LICENSE を参照してください。
このリポジトリは Embassy project のファイルを embassy/ 以下に含み、Cargo.toml では Embassy 関連 crate を path dependency として参照しています。第三者コンポーネントの概要は THIRD_PARTY_NOTICES.md にも記載しています。
Embassy project のライセンスと notice は以下を参照してください。
embassy/LICENSE-MITembassy/LICENSE-APACHEembassy/NOTICE.md
また、Pico 2 W の WiFi / Bluetooth 用 firmware blob は embassy/cyw43-firmware/ 以下に含まれており、Infineon Permissive Binary License の対象です。詳細は以下を参照してください。
embassy/cyw43-firmware/README.mdembassy/cyw43-firmware/LICENSE-permissive-binary-license-1.0.txt