RP2040(Raspi Pico 互換)ボードで Web Server の実験

先日 Elecrow から届いた RP2040(Raspi Pico 互換)基板を組み立てる。パーツが干渉したり、端子が接近しすぎたり、実装したらシルクが見えなくなったりといろいろと細かい不具合がある。

一番のパターンの誤りは、RP2040 基板の PIN 間隔を間違えたことで写真のように PIN を内側に曲げて半田付けすることで対応した。実験ボードとしては、なんとか実用に供することができそうだ。

 

さて、開発というか動かすプラットフォームをどうしようかと考える。確実に動かしたいという気持ちと新しいものを使ってみたいということが交錯する。使い慣れた Arduino にするか、Raspberry Pi 財団推奨の MicroPython、これから派生した CircuitPython などが候補になる。サンプルプログラムも動かしたり、ライブラリなどを調査した結果、新しいものをということと拡張性を考慮して、CircuitPython を使用することにした。

circuitpython.org

サンプルプログラムでのエルチカでの確認を終えて、この基板を作った最大の目的、PCB に実装した W5500 Ether ボードの確認をする。

akkiesoft.hatenablog.jp

こちらのサイトを参考に、LAN の基本的な設定 DHCP でのアドレス確認、Ping での通信確認を行う。基本的な動作確認ができたところで、このサイトから遡って次のページの記事を参考に Web Server を構築してみる。

www.hackster.io

ここのページで解説されているのは、Raspberry Pi Pico + W5500 基板で Web Server を構成してフルカラー LED をコントロールするというもの。公開されているソースコードをこちらの RP2040 基板に合わせて、フルカラー LED の PIN アサインなどを変更する。できあがったソフトをアップロードして動かすと Home ページは

 

こんなふうになる。

上の画面で Color Select をクリックするとするとカラーパレットが現れる。

希望の色を選択して Change Color をクリックすると、コマンドが送られ PR2040 基板のフルカラー LED の色がその色に設定される。

フルカラー LED の輝度が高すぎて画像では色の変化がわかりにくいが、Web からコントロールして I/O 制御ができることが確認された。まずは第一段階クリアというところ。