OSC over ethernet on D1 mini

Hi all!

I have been struggling with getting OSC over ethernet working on a Wemos D1 mini clone with W5500 board. I have no idea where I'm going wrong here. I have my D1 connected like this:

D1 mini - W5500
5v - 5v
Ground - Ground
D4 - CS
D5 - CLK
D6 - MISO
D7 - MOSI

I have gotten a pic of the W5500 of the internet, moved the writing so I can fit in what I connected to what pin, the bottom left in this picture says NC (what is that?) but mine says GND theere.

The code I've uploaded is the following. My serial monitor got dumped full of "CUT HERE FOR EXCEPTION DECODER" with a whole lot of data after it every like second and I read that can be fixed with the yield(); like this but it didn't fix it.

#include <OSCMessage.h>
#include <Ethernet.h>
#include <EthernetUdp.h>
#include <SPI.h>

unsigned long mills;
unsigned long last;

EthernetUDP Udp;

//the Arduino's IP
IPAddress ip(192, 168, 88, 252);
//destination IP
IPAddress outIp(192, 168, 88, 250);
const unsigned int outPort = 10024;

 byte mac[] = {  
  0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // you can find this written on the board of some Arduino Ethernets or shields

bool onoff;


void setup() {
  Serial.begin(31250);
  Ethernet.begin(mac,ip);
  Udp.begin(8888);
}


void sendOscTestMessage(bool onoff){
  OSCMessage msg("/testmessage/onoff ");
  msg.add(onoff);
  Udp.beginPacket(outIp, outPort);
  msg.send(Udp); // send the bytes to the SLIP stream
  Udp.endPacket(); // mark the end of the OSC Packet
  msg.empty(); // free space occupied by message
}

void loop() {
  mills = millis();
  if(mills-100>=last){
    Serial.println(onoff);
    sendOscTestMessage(onoff);
    Serial.println();
    onoff =! onoff;
    last = mills;
  }

  while(mills-100<last){
    yield();
  }
}

What am I doing wrong here?

Cheers

use the exception decoder

Could you elaborate on what that is, and how to use it?

google

I obviously did but everything I can find is like russian to me. No worries if you don't want to explain it obviously but then I'll just hope someone else will because I have not been able to figure it out myself.

by Chat GPT:

ESP8266 Exception Decoder - Command Line Version

Installation

  1. Download Python Script:

    • Get the ESP8266 Exception Decoder script from the GitHub repository.
    • Save the decoder.py script to your local machine.
  2. Install Python (if not already installed):

    • Ensure Python 3.x is installed on your system.

Usage

  1. Obtain Exception Output:

    • When your ESP8266 crashes, the Serial Monitor will show an exception message, like:
      Exception (28):
      epc1=0x40201010 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000
      
  2. Decode Exception:

    • Copy the exception message.
    • Run the decoder from the command line:
      python decoder.py /path/to/firmware.elf "paste_exception_here"
      
    • Replace /path/to/firmware.elf with the path to your compiled .elf file.
    • The output will show decoded details, including the file names and line numbers causing the crash.

Example

python decoder.py ~/your_project.elf "Exception (28): epc1=0x40201010 ..."

Conclusion

Use this tool to quickly decode and debug ESP8266 crash reports from the command line.

Tried stuff for hours, googled my ass off, can't get it working. I don't feel like you are willing to help and you feel I should figure it out myself so I won't ask anything of you but it is clear to me I can't figure it out myself

in which step you have a problem.
what version of the IDE do you use? IDE 1 or IDE 2?