Duplex And Touchosc In Ad-Hoc Network

I’m trying to control Renoise via TouchOSC (on an iPad) and Duplex. I managed to get it working when the computer and the iPad connected to the same router, but the latency is too much and I read that it would be significantly improved by making an ad-hoc network and connect the iPad to the computer over wi-fi directly.

So, with the ad-hoc network created, and the two devices connected (and pinging the iPad from the computer was a success), the problem is that when I run Duplex I receive this error message:

Failed to start the OSC client for Duplex device ‘TouchOSC’. Error: ‘Socket connect failed (WSAEHOSTUNREACH: ‘No route to host’)’

I tried many times, with firewall and antivirus software turned off, but still no luck.

Any ideas? Is this possible at all?

Hey, I never heard about that trick before :slight_smile:

The connection in Duplex is established with just three arguments: the address, the port number and the protocol (the protocol being set to UPD as the default). This is what we’ve got when creating a socket client with the Renoise API - also, it’s worth noting that such a connection is always asynchronous.

I’m really not an expert in networks, but if you are able to ping the tablet from your computer and you’ve provided the exact same information for Duplex, chances are that this type of network might expect a synchronous connection - in such a case, there isn’t much that can be done here and now. But, it might be worth trying to enter a literal host name instead of an IP address, or edit the OscDevice.lua file to establish a TCP connection instead of an UDP connection?

local client, socket_error = renoise.Socket.create_client(  
 self.address, self.port_out, renoise.Socket.PROTOCOL_TCP)  

Thanks, Danoise.

I tried your suggestion switching to TCP in the socket constructor but it didn’t help.

On the other hand, I managed to make TouchOSC speak to the TouchOSC MIDI Bridge and I can control Renoise via MIDI this way. However, with MIDI the two-way communication that OSC could offer is not possible so it’s not the ideal option.

Anyway, I suspect TouchOSC and the MIDI Bridge talk themselves via OSC so it seems to be definitely possible to use OSC in an ad-hoc network and nothing on my PC in particular is obstructing it, so perhaps it’s indeed a matter of Renoise not supporting this synchronous connection you mention. Or if not this then something else that could hopefully be implemented for the next version.

Check your gateway or proxy settings or see if you have a VPN connection where the “don’t use the external gateway” option is not toggled in the TCP/IP advanced settings (It should be toggled).
Another thing could be that there is a secondary gateway that it attempts first.
By typing "route print’ in a console you pop up the complete available routing table and gateways that are currently active.
I don’t know what kind of network tools you are running or having installed, but my intuition points me towards this corner.