Wiznet makers

mason

Published August 16, 2023 ©

82 UCC

15 WCC

28 VAR

0 Contests

0 Followers

0 Following

How to use Ethernet in Fuzix OS with W5500 and Raspberry Pi Pico

Ethernet for Fuzix OS: A Step-by-Step Guide to Implementing Connectivity with Raspberry Pi Pico and W5500

COMPONENTS Hardware components

WIZnet - W5500-EVB-Pico

x 1


PROJECT DESCRIPTION

Fuzix OS is an operating system, inspired by the old UNIX systems, with the aim to bring the UNIX-like experience to smaller, less powerful machines. Its lightweight nature and modular architecture make it a good choice for retro and minimalistic systems.

I used the W5500 to port Ethernet based on David Given's porting of the Raspberry pi pico to FUZIX. - Fuzix on the Raspberry Pi Pico

Hardware
I used the W5500-EVB-Pico board from WIZnet, but you can also use a raspberry pi pico or RP2040 board + W5500 and connect the SPI line with a jump wire.
<W5500-EVB-Pico>
W5500-EVB-RP2040

Git Clone and Branch Checkout

git clone -b rpipico-eth-w5500 https://github.com/wiznetmaker/FUZIX.git

cd FUZIX/Kernel/platform-rpipico

Set the path to your pico-sdk

/FUZIX/Kernel/platform-rpipico/Makefile

#export PICO_SDK_PATH = /home/dg/src/pico/pico-sdk

Check the SPI pins

/FUZIX/Kernel/platform-rpipico/devsdspi.c

#define Pico_ETH_SPI_SCK 18
#define Pico_ETH_SPI_TX  19
#define Pico_ETH_SPI_RX  16
#define Pico_ETH_SPI_CS  17


#define Pico_ETH_SPI_MOD spi0

Set the network infomation
FUZIX OS does not support DHCP, so you have to inpu the IP/Gateway/Subnet Mask manually.

/FUZIX/Kernel/dev/net/net_w5x00.c netdev_init

ipa = ntohl(0xC0A80001);  //IP address
iga = ntohl(0xC0A800FE);  //gateway
igm = ntohl(0xFFFFFF00);  //subnet mask

Build and write Image
After building, write the build/fuzix.uf2 file and filesystem.uf2 file to the flash memory of the Raspberry pi pico. By default, you should put the filesystem.img file on the SD card and connect it to the Raspberry pi pico, but I did not succeed with this way.

make world -j

make image -j

Test

When I run htget, the html file is saved twice, and I'm not sure why.

You can see the demo video this:

 

Documents
  • Github Code

Comments Write