MasterChooser cannot find roscore on different PCs on the same network
I'm working with an android app that runs a node that publishes a ros message to use elsewhere. For some unknown reason, MasterChooser only connects to roscore when it's running on one of two machines. If roscore is running on any other machine on the same network, MasterChooser cannot connect to it. We tried assigning a static IP to one of them in case the router was doing anything weird but nothing has helped.
What could be causing this/how do we fix it?
Please check you have a working DNS setup for all involved hosts (ie: all hosts can
ping
each other by name, not IP).There does appear to be an issue with the tablet's DNS. I'll have to talk to our IT guy about it. Thanks.
We've set up the tablet properly, gave it a static IP, and tried two different DNS servers. The issue persists. Any ideas?
I'm not sure how rosjava does this internally, but with "working DNS setup" I meant that all your hosts can resolve each others names. Is that true for the tablet and all potential master machines?
We tried it with two DNS servers and it's true one way (master can resolve tablet name but tablet cannot resolve master name). It looks like we might have to screw with the tablet to get root on it. I'll talk to our OS guy and see what he can do.
I don't think it should be that difficult: DNS servers are external to your device anyway and the only thing that is needed is for the tablet to be able to resolve the DNS name of the master machine to an IP and vice-versa. The same for the master machine.
But this is only important if this is ..
.. the actual problem.
It's easy to get overly focused on one particular aspect. We're not even sure this is the problem.
Yeah, we tried it with google's DNS server and our router's own DNS server and it didn't work. I read in a generic android thread that the device needs other devices set in its own /etc/hosts for DNS to work properly. We're going to try that to diagnose this but it won't be until next week.