---
title: "Stm32 Eth"
url: "https://maker.wiznet.io/louis_m/projects/stm32-eth-1/"
markdown_url: "https://maker.wiznet.io/louis_m/projects/stm32-eth-1/md"
type: "UCC: User Created Content"
author: "offa"
author_url: "https://github.com/offa/stm32-eth#w5100-wiring"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "offa"
original_url: "https://github.com/offa/stm32-eth#w5100-wiring"
published: "2024-03-04"
language: "en"
hardware: ["STMicroelectronics STM32F103RCT6", "Arduino Ethernet Rev. 3"]
likes: 0
views: 363
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# Stm32 Eth

> Ethernet connectivity for Stm32F4 Boards using W5100 Ethernet controller.

Original author: offa (source: https://github.com/offa/stm32-eth#w5100-wiring)

## Components

- **STMicroelectronics STM32F103RCT6** x 1 ([docs](https://estore.st.com/en/stm32f103rct6-cpn.html))
- **Arduino Ethernet Rev. 3** x 1 ([docs](https://docs.arduino.cc/retired/boards/arduino-ethernet-rev3-without-poe))

## Article

Ethernet connectivity for *Stm32F4* Boards using W5100 Ethernet controller.

## • Requirements

<https://github.com/offa/stm32-eth#-requirements>

- [**CMake**](http://www.cmake.org/)

- [**CppUTest**](https://github.com/cpputest/cpputest) – *(Optional)*

- [**GNU ARM Embedded Toolchain**](https://developer.arm.com/open-source/gnu-toolchain/gnu-rm) (*arm-none-eabi-gcc*)

## • Testing

<https://github.com/offa/stm32-eth#-testing>

Build and execute Unit Tests:

```

```

```plaintext
mkdir build && cd build
cmake ..
make
make unittest
```

Executing tests using CTest: `make test` or `ctest`. For `unittest` it's possible to switch verbosity by CMake option.

## • Integration Test

<https://github.com/offa/stm32-eth#-integration-test>

Integration Test for *Stm32F4* are enabled by the `INTEGRATIONTEST` option. The target `stm32-eth-it` is available as *ELF* (default) and *HEX*.

## • Flashing (OpenOCD)

<https://github.com/offa/stm32-eth#-flashing-openocd>

Both *ELF*- and *HEX*-files can be flashed using [***OpenOCD***](http://openocd.org/):

```
$ openocd -f stm32f4discovery.cfg
```

```
$ telnet localhost 4444
> reset halt
> flash write_image erase <filename.[elf|hex]>
> reset run
```

reset halt > flash write_image erase > reset run" tabindex="0" role="button">

## • Wiring & Pin Assignment

<https://github.com/offa/stm32-eth#-wiring--pin-assignment>

#### W5100 Wiring

<https://github.com/offa/stm32-eth#w5100-wiring>

Connect ***Reset*** and ***3.3 V*** with **4.7 kΩ Resistor**.

[![W5100 Pin Assignment](https://github.com/offa/stm32-eth/raw/master/doc/W5100-Pin-Assignment-Scaled.png?raw=true)](https://github.com/offa/stm32-eth/blob/master/doc/W5100-Pin-Assignment.png?raw=true)

#### Stm32 Pin Assignment

<https://github.com/offa/stm32-eth#stm32-pin-assignment>

| Pin | Stm32 |
| --- | --- |
| MOSI | PB15 |
| MISO | PB14 |
| SCK | PB13 |
| SS | PB12 |

## License

<https://github.com/offa/stm32-eth#license>

**GNU General Public License (GPL)**

```

```

```plaintext
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
```

." tabindex="0" role="button">

### Third party licenses

<https://github.com/offa/stm32-eth#third-party-licenses>

The License does ***not*** apply to files of [*system*](https://github.com/offa/stm32-eth/blob/master/system) directory. Files included in the [*system*](https://github.com/offa/stm32-eth/blob/master/system) folder are licensed under different conditions – please refer to it's files for more details.

---

Source: https://maker.wiznet.io/louis_m/projects/stm32-eth-1/
