
前回は無線LAN登載のRaspberry Pi Pico 2 W ボードにMicroPythonをインストール、ネットワーク接続を確認。今回は有線LAN登載のPico互換ボードW5100S_EVB_PICOで同じことを確かめてみたいと思います。有線、無線と物理メディアは異なれど、ほぼほぼ同じ手順で接続OK。お手軽。
※Pico関係投稿一覧は こちら
W5100S_EVB_PICOへのMicroPythonインストール
定番ボードであるので、以下のMicroPython公式のダウンロードページから、最新版の処理系バイナリ(uf2形式)をダウンロードすることが可能であります。
https://micropython.org/download/W5100S_EVB_PICO/
今回ダウンロードして、ボードに書き込んでみましたのは、以下の現時点での最新版であります。
W5100S_EVB_PICO-20250911-v1.26.1.uf2
なお、基本的なMicroPythonの使用方法は、Raspberry Pi Pico用のMicroPythonのページを見よ、ということみたいです。また、W5100S_EVB_PICO に特有な情報は、以下のWiznetのページを見よ、ということみたいです。
https://docs.wiznet.io/Product/iEthernet/W5100S/w5100s-evb-pico
実際に、ネットワークに接続するサンプルコードなどないのかね?というと、Github上のWiznetのページにいろいろあります。例えば、以下など。
https://github.com/Wiznet/RP2040-HAT-MicroPython/tree/main/examples/DHCP
以下のスクリプトは、上記ページの記述を参考にさせていただきつつ作成した、前回のPico 2 Wでの無線LAN接続のテスト・スクリプト(DHCP利用)と「ほぼ等価」な有線LAN接続のテスト・スクリプトであります。
import network import time from machine import Pin,SPI spi=SPI(0,2_000_000, mosi=Pin(19),miso=Pin(16),sck=Pin(18)) nic = network.WIZNET5K(spi,Pin(17),Pin(20)) nic.active(True) while not nic.isconnected(): time.sleep(1) print(nic.regs()) print(nic.ifconfig())
無線でも有線でも、MicroPythonレベルでは違いが分からんな。。。
上記を走らせる前にお約束の確認をしてまいります。
インストール済Micropython処理系
動作確認はお約束のThonny IDEからです。起動後に表示される処理系のグリーティングメッセージが以下に。
v1.26.1とな。Pico 2 Wにインストールした処理系と同じバージョンっす。
ううむ、Pico 2 Wにインストールした処理系よりも、モジュール数が少ないみたいです。まあ、使いそうなところは網羅している感じなので問題ないような気もするけれども(お惚け老人の感想っす。)
ううむ、ここはPico 2 W版に比べると明らかに小さいデス。「つくりつけのLAN制御(W5100Sチップのファーム)」が結構使っていると想像。
Flashの「余り」に乗っているストレージ(ファイルシステム)はどうよ。
こっちゃも、Pico 2 W版にくらべると1Mバイトくらい少ないデス。それだけ、W5100Sチップのファーム部分が使っているってこと。知らんけど。
有線LANの動作確認
以下の先ほどの動作確認用のスクリプトを走らせてみます。勿論、ボードはEthernetケーブルで、HUBに接続済であります。
起動当初は、当然、まだDHCPでの割り当てが完了してません。内部のレジスタのダンプがずらずらと。
しかし、しばらくすれば接続完了、IPアドレスなどをGetできたみたい(以下ではローカルな設定部分をピンクの箱で潰してますが、実際には数字が並んでます。)
有線でも接続できたね。これまた、当たり前。