SOLVED - Wiz550io - Unable to activate interruptions


i have been using so far my wiz55io module (with success) using a polling approach. Now i whish to use the interrupt mode but i can not go through the ESTABLISHED stage.

During the socket initialization sequence, after issuing the OPEN command and receive the SOCK_INT status, i write the desired mask to the Sn_IMR register using the code below.

WRITE_REG_WIZ550io (&CMD_WIZ.CMD_WIZ_0, (uint16_t)(Sn_IMR),(num_socket << 2)+1,1);

With this piece of code, whatever the MASK_VALUE (0x00 or 0xFF), i get stuck in an endless loop in _main() waiting the SOCK_ESTABLISHED status to come - and no IT is generated

If i remove the same piece of code, the SOCK_ESTABLISHED status comes and everything is ok.

I am missing something ?

Any help appreciated.

Best regards

I Finally found the solution. I had a bug in the SPI routine which conducts to a wrong setting of W5500 registers.
Everything now works as expected.