WIZ830MJ udp problem

Hi there,

Fairly new with the products.

I am using a WIZ830MJ board with the W5300. I am porting a previous project that used a WIZ820IO, but the serial link isn’t fast enough to give me enough datarate.

I currently use a 8-bit address bus, and the board is used with a Nios II processor. I am not using the W5300 driver (although I tried with similar results).

My problem is that I can’t open a UDP socket, and can’t set DHAR, DIPR and DPORT registers (they read 0’s or other when verified).

Here’s my configuration. Please note, for every write, the register is read again to double-check it is written properly. So of course, registers like IDR0 will read different (read-only) and S0_CR1 (returns to a different value once set).

Thanks in advance for any help.

[quote]Program starting

Testing IDR0 register value, writing 0xFF value should be 0x53 (not 0xFF)
WR = 0x0fe ; Data = 0xff ; Check = 0x53 DIFFERENT

Writing IMR0-1
WR = 0x004 ; Data = 0x00 ; Check = 0x00
WR = 0x005 ; Data = 0x00 ; Check = 0x00

Writing IR0-1
WR = 0x002 ; Data = 0x00 ; Check = 0x00
WR = 0x003 ; Data = 0x00 ; Check = 0x00

Writing MR0-1
WR = 0x000 ; Data = 0x00 ; Check = 0x00
WR = 0x001 ; Data = 0x00 ; Check = 0x00

Writing SHAR0-5
WR = 0x008 ; Data = 0x00 ; Check = 0x00
WR = 0x009 ; Data = 0x08 ; Check = 0x08
WR = 0x00a ; Data = 0xdc ; Check = 0xdc
WR = 0x00b ; Data = 0x01 ; Check = 0x01
WR = 0x00c ; Data = 0x02 ; Check = 0x02
WR = 0x00d ; Data = 0x04 ; Check = 0x04

Writing GAR0-3
WR = 0x010 ; Data = 0xc0 ; Check = 0xc0
WR = 0x011 ; Data = 0xa8 ; Check = 0xa8
WR = 0x012 ; Data = 0x0b ; Check = 0x0b
WR = 0x013 ; Data = 0x01 ; Check = 0x01

Writing SUBR0-3
WR = 0x014 ; Data = 0xff ; Check = 0xff
WR = 0x015 ; Data = 0xff ; Check = 0xff
WR = 0x016 ; Data = 0xff ; Check = 0xff
WR = 0x017 ; Data = 0x00 ; Check = 0x00

Writing SIPR0-3
WR = 0x018 ; Data = 0xc0 ; Check = 0xc0
WR = 0x019 ; Data = 0xa8 ; Check = 0xa8
WR = 0x01a ; Data = 0x0b ; Check = 0x0b
WR = 0x01b ; Data = 0x02 ; Check = 0x02

Setting TMSR0 to 7
WR = 0x020 ; Data = 0x08 ; Check = 0x08
WR = 0x021 ; Data = 0x08 ; Check = 0x08
WR = 0x022 ; Data = 0x08 ; Check = 0x08
WR = 0x023 ; Data = 0x08 ; Check = 0x08
WR = 0x024 ; Data = 0x08 ; Check = 0x08
WR = 0x025 ; Data = 0x08 ; Check = 0x08
WR = 0x026 ; Data = 0x08 ; Check = 0x08
WR = 0x027 ; Data = 0x08 ; Check = 0x08

Setting RMSR0 to 7
WR = 0x028 ; Data = 0x08 ; Check = 0x08
WR = 0x029 ; Data = 0x08 ; Check = 0x08
WR = 0x02a ; Data = 0x08 ; Check = 0x08
WR = 0x02b ; Data = 0x08 ; Check = 0x08
WR = 0x02c ; Data = 0x08 ; Check = 0x08
WR = 0x02d ; Data = 0x08 ; Check = 0x08
WR = 0x02e ; Data = 0x08 ; Check = 0x08
WR = 0x02f ; Data = 0x08 ; Check = 0x08

Setting MTYPER0 and MTYPER1
WR = 0x030 ; Data = 0x00 ; Check = 0x00
WR = 0x031 ; Data = 0xff ; Check = 0xff

Closing socket - check won’t be valid
WR = 0x203 ; Data = 0x10 ; Check = 0x00 DIFFERENT
Checking socket closed on S0_SSR1 - next should be 0x00
RD = 0x209 ; Data = 0x-- ; Check = 0x00

Writing IMR1
WR = 0x205 ; Data = 0xff ; Check = 0xff

Writing S0_MR0 and S0_MR1
WR = 0x200 ; Data = 0x00 ; Check = 0x00
WR = 0x201 ; Data = 0x02 ; Check = 0x02

Writing S0_PORTR0 and S0_PORTR1
WR = 0x20a ; Data = 0x13 ; Check = 0x13
WR = 0x20b ; Data = 0x89 ; Check = 0x89

Opening socket - check won’t be valid
WR = 0x203 ; Data = 0x01 ; Check = 0x00 DIFFERENT
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x40
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x40
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
RD = 0x209 ; Data = 0x-- ; Check = 0x00
Waiting 1s…
Waited 10 seconds, socket failed to open

Writing S0_DIPR0 to 3
WR = 0x214 ; Data = 0xc0 ; Check = 0x00 DIFFERENT
WR = 0x215 ; Data = 0xa8 ; Check = 0x00 DIFFERENT
WR = 0x216 ; Data = 0x0b ; Check = 0x00 DIFFERENT
WR = 0x217 ; Data = 0x03 ; Check = 0x00 DIFFERENT

Writing S0_DPORTR0 to 3 to 3
WR = 0x212 ; Data = 0x13 ; Check = 0x00 DIFFERENT
WR = 0x213 ; Data = 0x88 ; Check = 0x00 DIFFERENT

Opening socket - check won’t be valid
WR = 0x203 ; Data = 0x01 ; Check = 0x00 DIFFERENT
Checking socket open - next should be 0x22
RD = 0x209 ; Data = 0x-- ; Check = 0x40

Writing S0_DHAR0-5
WR = 0x20c ; Data = 0x00 ; Check = 0x38 DIFFERENT
WR = 0x20d ; Data = 0xdc ; Check = 0xff DIFFERENT
WR = 0x20e ; Data = 0x00 ; Check = 0x38 DIFFERENT
WR = 0x20f ; Data = 0x01 ; Check = 0xff DIFFERENT
WR = 0x210 ; Data = 0x02 ; Check = 0x38 DIFFERENT
WR = 0x211 ; Data = 0x0a ; Check = 0x38 DIFFERENT[/quote]