concurrent.futures._base.TimeoutError

Hi,

Being relatively new to the RVR and Raspberry PI , I am attempting to run some of the projects once I have gone through the guidance Method 1.

I have set up the connection between the PI and the RVR according to the guidance (and double checked).

When I run: drive_with_wasd_keys.py

I receive the following error:

(sphero-sdk-raspberrypi-python) pi@raspberrypi:~/sphero-sdk-raspberrypi-python/projects/keyboard_control $ python drive_with_wasd_keys.py
Checking RVR firmware versions…
Traceback (most recent call last):
File “drive_with_wasd_keys.py”, line 22, in
loop
File “/home/pi/sphero-sdk-raspberrypi-python/sphero_sdk/asyncio/client/toys/sphero_rvr_async.py”, line 36, in init
self._check_rvr_fw()
File “/usr/lib/python3.7/asyncio/base_events.py”, line 584, in run_until_complete
return future.result()
File “/home/pi/sphero-sdk-raspberrypi-python/sphero_sdk/asyncio/client/firmware/rvr_fw_check_async.py”, line 26, in _check_rvr_fw
rvr_nordic_version = await self.__rvr.get_main_application_version(target=SpheroRvrTargets.primary.value, timeout=3)
File “/home/pi/sphero-sdk-raspberrypi-python/sphero_sdk/asyncio/client/toys/sphero_rvr_async.py”, line 87, in get_main_application_version
return await self._dal.send_command(**command_dict)
File “/home/pi/sphero-sdk-raspberrypi-python/sphero_sdk/asyncio/client/dal/serial_async_dal.py”, line 78, in send_command
timeout=timeout
File “/home/pi/sphero-sdk-raspberrypi-python/sphero_sdk/asyncio/server/handler/api_sphero_handler.py”, line 191, in send_command
await asyncio.shield(asyncio.wait_for(future, timeout=timeout))
File “/usr/lib/python3.7/asyncio/tasks.py”, line 423, in wait_for
raise futures.TimeoutError()
concurrent.futures._base.TimeoutError

There are some are some other programs under Getting Started that work , like changing the LEDs, however a number fail with the same error above.

M

Support do you have any guidance?

I am unable to run even a simple echo.py without getting this error.

I assume the firmware is latest, and pi environment appears to have what is required.

Miron

Hi @mdp,

This is an issue we are looking at, we should know more later this month.
In the meantime, you are welcome to modify the SDK. You can track down the error, and disable the call to the function that is triggering the problem.

In home/pi/sphero-sdk-raspberrypi-python/sphero_sdk/asyncio/client/firmware/rvr_fw_check_async.py, you can disable the calls to the FW version checks, and the print statement associated with them.

I hope this helps,

Quentin

Hi many Thanks for the response I will use the workaround.

M

Hi, just to confirm removing the calls to the FW Check worked.

Thanks again for the pointers.