How to send OSC commands from iPad/iPhone over the Internet (not Wi-Fi)

3.7k views Asked by At

I am building an Arduino based servo driver that I want to control with OSC commands from my iPad over the Internet.

Is it possible to send OSC commands over 3G / UMTS with my iPad or iPhone to control a device? So I will not be limited by the router's range when I send OSC commands to the controller when both devices are part of the same Wi-Fi network.

It seems that the applications I downloaded (TouchOSC, iOSC) can only send OSC data over Wi-Fi, however I'd like to send the commands over the Internet (with port forwarding settings in my router).

3

There are 3 answers

0
auco On

OSC typically uses UDP (User Datagram Protocol), even if some newer OSC implementations also allow TCP/IP messaging (also see Difference between TCP and UDP?).

Unfortunately (as far as I know), UDP does not work over 3G, which seems to be your problem. In other words: two mobile devices cannot talk to each other on a cellular network. So it has nothing to do with OSC apps not being able to do this, it's just not available from the cellular network.

However (I think, not tested), I see two workarounds here:

  • try to use TCP/IP instead of UDP to send your OSC packets
  • if you need UDP on the Arduino side, you could use a server in-between
5
sbonkosky On

Do port forwarding on your router to forward port x to the Arduino, and then use the IP address from whatsmyip.com and use that one in the touchOSC app when inputting the IP address. That may work.

0
bioffe On

I would get one of these. Look ma, no wi-fi :)