Problems receiving UDP feedback on iPad

58 views
Skip to first unread message

ch...@weiglworks.com

unread,
Sep 18, 2014, 4:38:58 PM9/18/14
to comman...@googlegroups.com
Hello All,

I am having some extremely frustrating issues with a gui I've built using guiDesigner for an iPad running iViewer 4. I am communicating with multiple systems via UDP, most only one way (sending commands), but I am listening for feedback on two. Sometimes everything will work fine, but then sometimes I'll make a small change in guiDesigner (usually nothing at all to do with networking), and when I reload the gui all outgoing commands work fine but no data is received coming in. Debugger will show 0 bytes received and 0 matches, but show all outgoing bytes continuing to work. Sometimes rebooting the ipad or changing ports around in guiDesigner will make it work again, sometimes not. Other times the only thing that works is to go back to an old backup of the gui, load that (everything works again), then make my same change again and hope everything continues to work.

Are there any known bugs or anything related to incoming ports on the iPad? Any help anyone can offer is greatly appreciated!

Barry Gordon

unread,
Sep 18, 2014, 4:51:05 PM9/18/14
to comman...@googlegroups.com

I use UDP for unsolicited input from several source with no issues. All my sends are generally over TCP with feedback over TCP.  UDP from the sources is done to the LAN "all hosts" address  (192.168.1.255) to a port all of the iPads are listening for UDP messages at. My general operating philosophy is to set the receiving ports as Always on, and during initialization disable them using CF.setSystemPropeties.  When all things have been properly set up to handle the UDP messages I enable the systems.  

 

I would suggest you watch the network with a sniffer to ensure that the sources are sending

--
You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to commandfusio...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

ch...@weiglworks.com

unread,
Sep 18, 2014, 5:14:57 PM9/18/14
to comman...@googlegroups.com
I haven't tried a sniffer, but I am sure sources are sending as I can see all my commands triggered when I hit buttons.

I've seen people in other threads mentioning setting a system to always enabled for UDP and would like to try this, but I can't seem to find any documentation on the CF.setSystemProperties. Am I just missing it somewhere?

I also saw another thread where someone said the iPad will reject any incoming messages where the UDP destination port doesn't match the origin port from the hardware. I'm wondering if my devices I'm controlling are not following this, and are sending to my listening port using a different port.

Jarrod Bell

unread,
Sep 18, 2014, 5:27:39 PM9/18/14
to comman...@googlegroups.com
Try setting both port options in your UDP system to the same value, and try with 0 as the 'origin port'.
Try enabling broadcast messages in the UDP system properties also.

None of these options are exposed in the CF.setSystemProperties, you simply define them in system manager.

Also, please report versions of software you are using.

Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


ch...@weiglworks.com

unread,
Sep 18, 2014, 5:40:17 PM9/18/14
to comman...@googlegroups.com, jar...@commandfusion.com
By 0 as the 'origin port' do you mean the 'Local Port' in system manager (to have it match the remote port)?

I'm using guiDesigner 2.7.1.124 and whatever the latest version of iViewer is on the app store. It's an iPad retina, the one without the lightning port.

I will try matching the port numbers and see what happens.

Jarrod Bell

unread,
Sep 18, 2014, 5:47:27 PM9/18/14
to comman...@googlegroups.com
Yes sorry, the local port is what I meant (it was called port origin in previous releases of guiDesigner).


Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


ch...@weiglworks.com

unread,
Sep 18, 2014, 6:18:03 PM9/18/14
to comman...@googlegroups.com, jar...@commandfusion.com
No luck with either setting both ports to the same or setting local port to 0.

It is working 100% fine at my location, but I then zip up the project and send it to another location it will not receive feedback at all. All outgoing communications work fine, but 0 feedback bytes received.

Jarrod Bell

unread,
Sep 18, 2014, 6:35:37 PM9/18/14
to comman...@googlegroups.com
Are you sure both locations are using the same iViewer version?

Seems there might be other factors at play relating to the physical network otherwise.


Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


Barry Gordon

unread,
Sep 18, 2014, 6:39:13 PM9/18/14
to comman...@googlegroups.com

I agree that send is working and your commands get received. That does not mean that the sources are sending UDP messages. I only use CF.setSystemProperties to set the IP address for the system to use and the port (along with enabling and disabling the system).  Both of these can be set at design time. It is covered in the scripting manual at CommandFusion.

 

Your problem seems very strange as it seems to be dependent on a build. I assume you have run with debugging on to see if there are any problems loading JS modules such as a minor syntax error?

ch...@weiglworks.com

unread,
Sep 18, 2014, 7:10:26 PM9/18/14
to comman...@googlegroups.com, jar...@commandfusion.com
Yes, both using the latest version off the app store. They are going out to find another router to try with, but seems crazy that everything is working perfectly except it's like the iPad is refusing to receive incoming bytes. Especially when it will work fine most of the time here, but occasionally I have the exact same problem where suddenly no incoming bytes show up at all in debugger.
Reply all
Reply to author
Forward
0 new messages