Hi,all! I found that my paparazzi can't get the datalink via my xbees while the connection of my laptop to the internet is unavailable.The GCS just keeps waiting for the telemetry and do nothing althongh the xbee do receive the data from the plane . But everything is OK when the internet connection restores.It is odd since the datalink should not be affected by the internet connection. It encounters the problem after that I upgraded my OS X from Yosemite to Sierra(10.12.3).How can I fix it ?Thank you! And here is the message comes from the paparazzi center: RUN '/Users/tom/paparazzi/sw/ground_segment/tmtc/link -d /dev/ttyUSB0 -s 57600' RUN '/Users/tom/paparazzi/sw/ground_segment/tmtc/server ' RUN '/Users/tom/paparazzi/sw/ground_segment/cockpit/gcs ' setsockopt() Cannot join group: Can't assign requested address Does your kernel support IP multicast extensions ? *** send ***: Network is unreachable _______________________________________________ Paparazzi-devel mailing list [hidden email] https://lists.nongnu.org/mailman/listinfo/paparazzi-devel |
> On 9 Apr 2017, at 18:38, Tom H <[hidden email]> wrote: > > Hi,all! > I found that my paparazzi can't get the datalink via my xbees while the connection of my laptop to the internet is unavailable.The GCS just keeps waiting for the telemetry and do nothing althongh the xbee do receive the data from the plane . But everything is OK when the internet connection restores.It is odd since the datalink should not be affected by the internet connection. It encounters the problem after that I upgraded my OS X from Yosemite to Sierra(10.12.3).How can I fix it ?Thank you! > > > And here is the message comes from the paparazzi center: > > > RUN '/Users/tom/paparazzi/sw/ground_segment/tmtc/link -d /dev/ttyUSB0 -s 57600' > RUN '/Users/tom/paparazzi/sw/ground_segment/tmtc/server ' > RUN '/Users/tom/paparazzi/sw/ground_segment/cockpit/gcs ' > setsockopt() Cannot join group: Can't assign requested address > Does your kernel support IP multicast extensions ? > *** send ***: Network is unreachable TL;DR: either use a wifi hotspot, or reconfigure lo0 to broadcast this stuff with $ sudo route -nv add -net 224.0.0.0 -interface lo0 Bear in mind that this workaround won’t resist a reboot, and you’ll loose multi hosts connectivity (tracker, …) until you $ sudo route -v delete -inet 224.0.0.0 Longer version: on OSX, the Ivy bus defaults to 224.255.255.255:2010 (cf ./sw/lib/ocaml/defivybus.ml) With a network connexion, if I run two ivy python clients, when the second arrives, the first says : $ ivyprobe.py -b 224.255.255.255:2010 Broadcasting on 224.255.255.255:2010 Go ahead! (type .help for help on commands) Ivy application 192.168.0.11:57197 (pyivyprobe) has connected Ivy applications currently on the bus: pyivyprobe If I remove the network connexion (not necessarily internet, but, wifi, e.g.), then, launching an ivyprobe: rhovanion:paparazzi yj$ ivyprobe.py -b 224.255.255.255:2010 Broadcasting on 224.255.255.255:2010 Exception in thread Thread-2: Traceback (most recent call last): File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 801, in __bootstrap_inner self.run() File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 754, in run self.__target(*self.__args, **self.__kwargs) File "/usr/local/lib/python2.7/site-packages/ivy/ivy.py", line 693, in <lambda> l=lambda server=self: UDP_init_and_listen(broadcast, port, server) File "/usr/local/lib/python2.7/site-packages/ivy/ivy.py", line 151, in UDP_init_and_listen s.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq) File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 228, in meth return getattr(self._sock,name)(*args) error: [Errno 49] Can't assign requested address Go ahead! (type .help for help on commands) Meaning the en0 interface being inactive, well, all interface except lo0 being inactive … the rendez-vous packet is not sent. If I force this interface to broadcast multicast for 224, then … rhovanion:paparazzi yj$ sudo route -nv add -net 224.0.0.0 -interface lo0 Password: u: inet 224.0.0.0; u: link lo0; u: inet 255.0.0.0; RTM_ADD: Add Route: len 136, pid: 0, seq 1, errno 0, flags:<UP,STATIC> locks: inits: sockaddrs: <DST,GATEWAY,NETMASK> 224.0.0.0 lo0 255.0.0.0 add net 224.0.0.0: gateway lo0 rhovanion:paparazzi yj$ ivyprobe.py -b 224.255.255.255:2010 Broadcasting on 224.255.255.255:2010 Go ahead! (type .help for help on commands) Ivy application 127.0.0.1:57201 (pyivyprobe) has connected Ivy applications currently on the bus: pyivyprobe — Y. _______________________________________________ Paparazzi-devel mailing list [hidden email] https://lists.nongnu.org/mailman/listinfo/paparazzi-devel |
Free forum by Nabble | Edit this page |