Drone net discovery failed issue

Hello, I install the sphinx and start to play with the simulator.
I got a “net discovery failed” error. Anyone knows why? Thanks.

Terminal 1:
sphinx --log-level=dbg /opt/parrot-sphinx/usr/share/sphinx/drones/anafi4k.drone::stolen_interface=::firmware=$HOME/Downloads/anafi-pc.ext2.zip

Terminal 2:
(olympe-python3) linz@linz:~/$ python takeoff.py

takeoff.py → ### Taking off - “Hello world” example" from User guide - 7.3

Log:
(olympe-python3) linz@linz: ~/$ python takeoff.py
2022-09-13 22:56:33,376 [INFO] olympe.backend - _create_pomp_loop - Creating pomp loop
2022-09-13 22:56:33,377 [INFO] olympe.backend - _do_create - device callbacks have been added to arsdk_ctrl
2022-09-13 22:56:33,377 [INFO] olympe.scheduler - _create_pomp_loop - Creating pomp loop
2022-09-13 22:56:33,380 [INFO] olympe.media - _create_pomp_loop - Creating pomp loop
2022-09-13 22:56:36,383 [INFO] olympe.drone - _async_discover_device - Net discovery failed for b’10.202.0.1’
2022-09-13 22:56:36,384 [INFO] olympe.drone - _async_discover_device - Trying ‘NetRaw’ discovery for b’10.202.0.1’ …
2022-09-13 22:56:39,381 [ERROR] olympe.drone - connect - ‘10.202.0.1 connection timed out
2022-09-13 22:56:39,382 [INFO] olympe.drone - disconnect - Disconnection with the device OK. IP: b’10.202.0.1’
2022-09-13 22:56:39,389 [ERROR] olympe.drone - call - Unhandled exception
Traceback (most recent call last):
File “/home/linz/code/parrot-groundsdk/out/olympe-linux/staging/usr/lib/python/site-packages/olympe/utils/init.py”, line 100, in call
return self.func(*args, **kwargs)
File “/home/linz/code/parrot-groundsdk/out/olympe-linux/staging/usr/lib/python/site-packages/olympe/arsdkng/cmd_itf.py”, line 519, in _send_command_impl
raise RuntimeError("[sendcmd] Error cmd interface seems to be destroyed")
RuntimeError: [sendcmd] Error cmd interface seems to be destroyed
2022-09-13 22:56:39,389 [ERROR] olympe.backend - run_async - Unhandled exception in async task function
Traceback (most recent call last):
File “/home/linz/code/parrot-groundsdk/out/olympe-linux/staging/usr/lib/python/site-packages/olympe/concurrent/init.py”, line 249, in run_async
ret = func(*args, **kwds)
File “/home/linz/code/parrot-groundsdk/out/olympe-linux/staging/usr/lib/python/site-packages/olympe/utils/init.py”, line 90, in
lambda *args, **kwds: self._method_call(obj, *args, **kwds)
File “/home/linz/code/parrot-groundsdk/out/olympe-linux/staging/usr/lib/python/site-packages/olympe/utils/init.py”, line 94, in _method_call
return self.call(this, *args, **kwds)
File “/home/linz/code/parrot-groundsdk/out/olympe-linux/staging/usr/lib/python/site-packages/olympe/utils/init.py”, line 100, in call
return self.func(*args, **kwargs)
File “/home/linz/code/parrot-groundsdk/out/olympe-linux/staging/usr/lib/python/site-packages/olympe/arsdkng/cmd_itf.py”, line 519, in _send_command_impl
raise RuntimeError("[sendcmd] Error cmd interface seems to be destroyed")
RuntimeError: [sendcmd] Error cmd interface seems to be destroyed
2022-09-13 22:56:39,395 [ERROR] olympe.drone - _do_connect - '10.202.0.1 connection retries failed
Traceback (most recent call last):
File “/home/linz/takeoff.py”, line 19, in
test_takeoff()
File “/home/linz/takeoff.py”, line 12, in test_takeoff
assert drone(TakeOff()).wait().success()
AssertionError
2022-09-13 22:56:49,422 [INFO] olympe.media - _shutdown - olympe.media shutdown
2022-09-13 22:56:49,535 [INFO] olympe.drone - _on_device_removed - <olympe.arsdkng.cmd_itf.DisconnectedEvent object at 0x7fd5cca5e100>
2022-09-13 22:56:49,538 [INFO] olympe.media - _destroy_pomp_loop - Pomp loop has been destroyed: Thread-3
2022-09-13 22:56:49,539 [INFO] olympe.scheduler - _destroy_pomp_loop - Pomp loop has been destroyed: subscribers_thread
2022-09-13 22:56:49,841 [INFO] olympe.backend - _destroy_pomp_loop - Pomp loop has been destroyed: Thread-2

anyone know why

Did you start an Unreal Engine application in another terminal as explained here: Quick start - 2.9.1 ?

yes, the ue4 application was started in another terminal.
I can run parrot-ue4-empty, and an empty world will pop up.
but once I run python ./takeoff, it fails.


parrot-ue4-empty works, but the python script fails

In your first screenshot everything seems fine, but in your second one, sphinx is waiting for an UE4 application to start. Can you send us the logs from sphinx and unreal ?

stolen_interface is deprecated, you should use wifi_iface instead.


Yes. The screenshot above shows the logs (one for the python takeoff script, and one for parrot-ue4-empty). I highlight the command I am using in the screenshot.

Thanks.

Can you try with wifi_iface="" instead of wifi_iface=auto ? Can you “ping 10.202.0.1” before executing your olympe script to see if it exists? You can also have a look at the firmware logs with ulogcat as explained here: Troubleshooting - 2.9.1

still the same error.

You can make sure that you have only one running firmware instance with:

fdc list instances

And verify its debug_ipaddr with:

fdc show instances <instance_name>

Are you sure that you don’t close parrot-ue4-empty? You are not supposed to close it.

You should try that:

Terminal 1:

sphinx --log-level=dbg /opt/parrot-sphinx/usr/share/sphinx/drones/anafi4k.drone::wifi_iface=::firmware=$HOME/Downloads/anafi-pc.ext2.zip & parrot-ue4-empty

Terminal 2:

python takeoff.py

ohhhhhh, I see. I should not close the parrot-ue4-empty. Just run the python script separately.

It works now, thank you so much!

1 Like