TouchOSC via Ardosc/Bonjour

Thanks for replying. I bought the router from ebay here in UK - the interface is definitely in Chinese!
Its still in client mode at the moment but yes AP mode would be fine.

When I said previously I had OSC working this was via Max/MSP on my laptop. So I had Touch OSC on the Ipad talking to Max/Msp which communicated with Arduino via the serial port. It worked great so I invested in the router and now trying to do it without the laptop/Max.

I'm forgetting about the bonjour stuff for now and trying to get Ardosc communication working.
I'm just using the examples. I can send a message to my laptop from Arduino but I'm not sure I can receive one.
Its hard to tell though really! I get flashing lights on the ethernet port when I send stuff from the ipad but I can't get the 'Simple Receive' patch to work.

Tried printing messages to serial port and sending osc to my laptop but nothing yet. I did the most minor of alterations to the OSC arguments example to try and relay an ipad message back to my laptop but no luck yet!

I'll keep trying, sure I'll get there soon.

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

#include <ArdOSC.h>

byte myMac[] = { 0xEC, 0x88, 0x8F, 0xDF, 0x44, 0x44 };
byte myIp[]  = { 192, 168, 1, 50 }; 
byte destIp[]  = { 192, 168, 1, 106 };


int  serverPort  = 10000;

int destPort=12000;

char oscadr[]="/ard/aaa";

OSCServer server;
OSCClient client;


void setup(){ 
  
// Serial.begin(19200);
 
 Ethernet.begin(myMac ,myIp); 
 server.begin(serverPort);
 
 //set callback function
 server.addCallback(oscadr,&func1);
 
}
  
void loop(){
  if(server.aviableCheck()>0){
//     Serial.println("alive! "); 
  }
}


void func1(OSCMessage *_mes){
  
  logIp(_mes);
  logOscAddress(_mes);
  
  //get source ip address
  byte *sourceIp = _mes->getIpAddress();

  //get 1st argument(int32)
  int tmpI=_mes->getArgInt32(0);
  
  //get 2nd argument(float)
  float tmpF=_mes->getArgFloat(1);
  
  //get 3rd argument(string)
  int strSize=_mes->getArgStringSize(2);
  char tmpStr[strSize]; //string memory allocation
  _mes->getArgString(2,tmpStr); 



  //create new osc message
  OSCMessage newMes;
  
  //set destination ip address & port no
  newMes.setAddress(destIp,destPort);
  
  //set argument
  newMes.beginMessage(oscadr);
  newMes.addArgInt32(tmpI+1);
  newMes.addArgFloat(tmpF+0.1);
  newMes.addArgString(tmpStr);
 
  //send osc message
  client.send(&newMes);

}




void logIp(OSCMessage *_mes){
  byte *ip = _mes->getIpAddress();
  Serial.print("IP:");
  Serial.print(ip[0],DEC);
  Serial.print(".");
  Serial.print(ip[1],DEC);
  Serial.print(".");
  Serial.print(ip[2],DEC);
  Serial.print(".");
  Serial.print(ip[3],DEC);
  Serial.print(" ");
}

void logOscAddress(OSCMessage *_mes){
  Serial.println(_mes->getOSCAddress());
}