W5100 ethernet driver

Driver for W5100 ethernet devices. More...

Detailed Description

Driver for W5100 ethernet devices.

This device driver only exposes the MACRAW mode of W5100 devices, so it does not offer any support for the on-chip IPv4, UDP, and TCP capabilities of these chips. In connection with RIOT we are only interested in the RAW Ethernet packets, which we can use through netdev with any software network stack provided by RIOT (e.g. GNRC). This enables W5100 devices to communicate via IPv6, enables unlimited connections, and more...

This driver expects to be triggered by the external interrupt line of the W5100 device. On some Arduino shields this is not enabled by default, you have to close the corresponding solder bridge to make it work...


file  w5100.h
 Interface definition for the W5100 device driver.
file  w5100_params.h
 Default parameters for W5100 Ethernet devices.
file  w5100_regs.h
 Register definitions for W5100 devices.

Data Structures

struct  w5100_params_t
 W5100 device descriptor. More...
struct  w5100_t
 Device descriptor for W5100 devices. More...


enum  { W5100_ERR_BUS = -1 }
 W5100 error codes. More...


void w5100_setup (w5100_t *dev, const w5100_params_t *params, uint8_t index)
 So the initial device setup. More...

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

W5100 error codes.

Definition at line 50 of file w5100.h.

Function Documentation

◆ w5100_setup()

void w5100_setup ( w5100_t dev,
const w5100_params_t params,
uint8_t  index 

So the initial device setup.

This function pre-initializes the netdev structure, saves the configuration parameters and finally initializes the SPI bus and the used GPIO pins.

[out]devthe handle of the device to initialize
[in]paramsparameters for device initialization
[in]indexIndex of params in a global parameter struct array. If initialized manually, pass a unique identifier instead.