---
title: "Can't connect with 100Mbit"
url: "https://maker.wiznet.io/forum/13077"
markdown_url: "https://maker.wiznet.io/forum/13077/md"
type: "Forum topic"
category: "Ethernet Chips"
author: "Daan"
created: "2018-10-09T10:03:44+09:00"
last_activity: "2018-10-09T10:31:21+09:00"
language: "en"
views: 852
replies: 2
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# Can't connect with 100Mbit

## Question

Asked by Daan on 2018-10-09 in Ethernet Chips.

Our ethernet board is working properly, but only with a speed of 10Mbit. I run the following initialisation code:

```
    wiz_PhyConf cnf;

    // Ethernet controller
    CHIPUNLOCK();
    mr2 = (uint8_t)getMR2() | 0x80;     //MR2_CLKSEL;
    setMR2(mr2);
    CHIPLOCK();

    PHYUNLOCK();
    setPHYCR0(0x02);
    setPHYCR1(0x01);
    PHYLOCK();

    cnf.mode = PHY_MODE_MANUAL;
    cnf.speed = PHY_SPEED_100;
    cnf.duplex = PHY_DUPLEX_FULL;
    ctlwizchip(CW_SET_PHYCONF, (wiz_PhyConf*)&cnf);
```

But when I read PHYSR, it returns 0x13, indicating 10Mbit has been selected. This is also confirmed at the LEDs of the router. What am I missing not to have the controller running at 100 Mbit? Or could it also be a faulty hardware design?

Thanks in advance

## Replies

### Reply 1 by Eugeny, 2018-10-09

![](https://avatars.discourse-cdn.com/v4/letter/d/b19c9b/48.png) Daan:

> setPHYCR0(0x02); setPHYCR1(0x01);

There seem to be a mistake for PHYCR0 in datasheet as it says

> Auto Negotiation
> If AUTO is set to ‘1’, SPD and DPX are ignored.
> 1 : Disable Auto Negotiation
> 0 : Enable Auto Negotiation

and it is not clear if bit should be 0 or 1. I propose you to play with this bit, and not set PHYCR0’s bit 1 to 1.

### Reply 2 by Daan, 2018-10-09

Thank you Eugeny, that was the trick! PHYCR0 bit 1 should not be set. Now it’s running at 100Mbit

---

Source: https://maker.wiznet.io/forum/13077
