---
title: "Arduino and Wiz550io with Int"
url: "https://maker.wiznet.io/forum/15551"
markdown_url: "https://maker.wiznet.io/forum/15551/md"
type: "Forum topic"
category: "IO Modules"
author: "TIMROB"
created: "2025-01-31T14:52:47+09:00"
last_activity: "2025-02-05T09:42:00+09:00"
language: "en"
tags: ["Arduino IDE"]
views: 5
replies: 2
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# Arduino and Wiz550io with Int

## Question

Asked by TIMROB on 2025-01-31 in IO Modules.

I'm trying to use the Wiz550io in interrupt mode. I assume that the Wiz550io sets Intn low when it needs service, but I never can see the Intn pin change from high state. If I need to set some register(s), could you please explain how to do that in Arduino with Ethernet3 library Oor other)?

## Replies

### Reply 1 by TIMROB, 2025-02-01

Thanks a lot for that, but I am still having trouble...

Your code sample compiled which was a welcome first step :)

When I read the datasheet it shows the IMR at 0x16 and not 0x00 like in your example code...? When I tried replacing 0x00 with 0x16 it still didn't react as expected.

I replaced your ''SS'' with my Wiz CS output. Still not working. I don't know what you mean with the ''SS'' parameter...?

I also need to understand how to clear the INT after I get it; could you please provide sample code for that too?

Finally, I need the Wiz550io to interrupt based on a normal UDP receive transaction; I saw a few other options but none just this basic interrupt.

### Reply 2 by TIMROB, 2025-02-05 (in reply to reply 1)

Can anyone help me with this? I've struggled for days now without any luck. I'm wondering if Wiz550io can even run in INTERRUPT mode when using UDP packets!? I've studied the datasheet for Wiz550io and think that this code &lt;should> work but it seems to do nothing. It's a lot different then the sample provided above by "Wiznet AI Support Team". I've tried a lot of combinations for the register address.

SPI.beginTransaction(SPISettings(14000000, MSBFIRST, SPI_MODE0));
digitalWrite(ETHCS, LOW);
SPI.transfer(0x00); //Register MSB
SPI.transfer(0x16); //Register LSB
SPI.transfer(0x40); //Control byte (0x40 is WR, 0x00 is RD) block 0
SPI.transfer(0xff);
digitalWrite(ETHCS, HIGH);
SPI.endTransaction();

---

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