updreceive NOT WORKING


    Dec 10 2013 | 8:52 pm
    Hello friends!
    I decided to try to jump into the world of OSC programming and was having fun until I got to the updreceive object. It does not work. I am using Max 6.1.5 on a mid 2010 MBP.
    I even downloaded a simple patch from TouchOSC that allowed me to send and receive. My iPhone receives the signal Max is sending it, but when I try to send signal from TouchOSC, Max is not receiving it. So, this tells me TouchOSC works great, while the object updreceive has dropped the ball. Unfortunately, tech support cannot help me with this problem and directed me to the forums for help. Does anyone have any thoughts or inside info they can share with me and anyone reading this post? Thanks.
    Mark

    • Dec 10 2013 | 9:34 pm
      I think it's odd that it tells you that udpreceive is broken, because normally such a problem would tell me, that there probably was a problem with the udp settings in touchosc and/or in the udpreceive arguments.
      Link us to the patch, and post all your touchosc settings here. Oh, and your network settings too. Maybe we can figure it out, but unless udpreceive was somehow broken on your machine, then I think the problem is elsewhere.
    • Dec 10 2013 | 10:34 pm
      Wetterberg! Thanks for responding and offering a set of fresh and experienced eyes to my problem. The problem could be my lack of experience, but I will try to paint as big a picture as I can here.
      First, let me address something you said in your reply. Max isn't telling me that udpreceive is "broken". Its just not telling me anything other than "binding to port 8000" When I try to send signal from my iPhone 4S it doesn't do anything. I don't even know if it has bound to port 8000.
      My TouchOSC settings are as follows
      "Connections" OSC: Receiving only > Enabled Host (left blank) Port(outgoing) 8000 Port(incoming) 9000 Local IP address 192.168.0.102
      MIDI Bridge: Not configured
      CoreMIDI In(1/1) Out(1/1)
      Here is my patch...
    • Dec 10 2013 | 10:55 pm
      You have the wrong settings. Port incoming and outgoing always have to be the same. Try this local I.P Address 127.0.0.1 (Declares its the actual host computer, always good to test it just works) so udpsend 127.0.0.1 8000 udpreceive 8000
    • Dec 10 2013 | 11:13 pm
      Andro,
      Thanks for your tip. I can send messages with udpsend, but udpreceive is getting nothing. Your advice to make the ports the same did not work for me.
      At this point, I can make a maxpatch that sends commands to my phone, but I can't get my phone to control my maxpatch. udpreceive is not receiving.
    • Dec 11 2013 | 1:43 am
      I found the solution on a different forum. I had to put my local IP address in. Once I did that, it worked like a charm. Thanks for everyone who spent even a second looking at my problem. Have a great rest of the week.
    • Jun 15 2016 | 3:46 am
      Mark, I am having the same issue you had. What exactly do you mean you put your local address in? I have done that I believe and still not working. Can you tell me a little more about this please? Thanks
    • Dec 08 2016 | 8:19 pm
      Hi, I had similar issue: Sometimes, when I close the device editing dialog and return to Live, the device does not udpreceive until I close Max application itself, which is still open after closing the device editing dialog. Sometimes it happens even in Max editor - still I have to quit Max application to make the device udpreceive again.
      Max v7.3.0 Live 9.6.1
    • Jan 11 2017 | 2:41 am
      I believe MarkGoebel means that inside the touchOSC app, put in the IP address the receiving computer. It worked for me after I did this.
    • Jan 12 2017 | 4:32 am
      Yes, with UDP-based messaging, there is kind of a simple rule which is: you send to somebody, you receive from anybody. It means a sender always needs to know its receiver's IP and port, but a receiver by default sniffs everything coming to its bounded port. That's why the other way worked: TouchOSC's receiver was just tuned to receiving anything sent to its incoming port (9000). But TouchOSC was not sending its messages to the IP where the udpreceive object was listening on port 8000.
      While we're at that, the other big source of "udpreceive not working" issues is when two receivers are setup to listen on the same port on the same computer: it doesn't work. You can setup as many senders as you want on the same port on one computer, but you can only bind one receiver per port. Multiple udpreceive objects on the same port will actually work *within Max* because the object seems smart enough to detect that and just provide multiple doors from the same actual UDP listener but, if you already have a listener on a given port in another app on the same computer (Processing, Pd, etc.), then trying to also catch those OSC messages in Max will fail.
      I hope this helps!