I'm running a docker container of version 0.9.7 on a remote machine. When I start manual_control.py there it works fine.
When I start manual_control.py on my local machine I get the following output:
```
/usr/bin/python3.6 /path/to/carla/PythonAPI/examples/manual_control.py --host x.x.x.x
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
Welcome to CARLA manual control.
Use ARROWS or WASD keys for control.
W : throttle
S : brake
AD : steer
Q : toggle reverse
Space : hand-brake
P : toggle autopilot
M : toggle manual transmission
,/. : gear up/down
TAB : change sensor position
` : next sensor
[1-9] : change to sensor [1-9]
G : toggle radar visualization
C : change weather (Shift+C reverse)
Backspace : change vehicle
R : toggle recording images to disk
CTRL + R : toggle recording of simulation (replacing any previous)
CTRL + P : start replaying last recorded simulation
CTRL + + : increments the start time of the replay by 1 second (+SHIFT = 10 seconds)
CTRL + - : decrements the start time of the replay by 1 second (+SHIFT = 10 seconds)
F1 : toggle HUD
H/? : toggle help
ESC : quit
INFO: listening to server x.x.x.x:2000
WARNING: Version mismatch detected: You are trying to connect to a simulator that might be incompatible with this API
WARNING: Client API version = 0.9.7-41-g68d7418e
WARNING: Simulator API version = 0.9.7
No recommended values for 'speed' attribute
Traceback (most recent call last):
File "/path/to/carla/PythonAPI/examples/manual_control.py", line 1034, in
main()
File "/path/to/carla/PythonAPI/examples/manual_control.py", line 1026, in main
game_loop(args)
File "/path/to/carla/PythonAPI/examples/manual_control.py", line 943, in game_loop
controller = KeyboardControl(world, args.autopilot)
File "/path/to/carla/PythonAPI/examples/manual_control.py", line 276, in __init__
world.player.set_autopilot(self._autopilot_enabled)
RuntimeError: time-out of 5000ms while waiting for the simulator, make sure the simulator is ready and connected to localhost:2000
Fatal Python error: PyEval_SaveThread: NULL tstate
Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
```
I have the same problem with spawn_npc.py. But it actually spawns some npcs at the remote machine before the connection crashes (so at the beginning there is a connection). Also I am confused that the last error message is showing localhost:2000 but I clearly gave an address.
Both, remote and locale machine, are running with Ubuntu 18.04 LTS.
Has someone seen this problem before?
I'm observing similar issue on local machine. Steps to reproduce:
./CarlaUE4.sh -opengl -carla-rpc-port=36540 -carla-streaming-port=0 -quality-level=Low -nosound
netstat -nlp|grep -i carla
tcp 0 0 0.0.0.0:44581 0.0.0.0:* LISTEN 21795/CarlaUE4-Linu
tcp 0 0 0.0.0.0:36540 0.0.0.0:* LISTEN 21795/CarlaUE4-Linu
spawn_npc.py script:PYTHONPATH=$PWD/PythonAPI/carla/dist/carla-0.9.7-py3.5-linux-x86_64.egg python3.6 ./PythonAPI/examples/spawn_npc.py -p 36540 --host 127.0.0.1
Observing:
destroying 0 vehicles
destroying 0 walkers
done.
Traceback (most recent call last):
File "./PythonAPI/examples/spawn_npc.py", line 226, in <module>
main()
File "./PythonAPI/examples/spawn_npc.py", line 124, in main
for response in client.apply_batch_sync(batch):
RuntimeError: time-out of 5000ms while waiting for the simulator, make sure the simulator is ready and connected to localhost:2000
Fatal Python error: PyEval_SaveThread: NULL tstate
On default port on localhost it works correctly.
As a temporal solution I'm using port forwarding right now:
ssh -L 2000:localhost:2000 -L 2001:localhost:2001 -L 2002:localhost:2002 user@remote_host
Hi,
A solution to this issue will be in master very soon, thanks for pointing it out!
@jackbart94 Has this bug been fixed? I use the latest version docker but still meet this bug.
@liespace It's being merged in master as we speak!
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Most helpful comment
As a temporal solution I'm using port forwarding right now:
ssh -L 2000:localhost:2000 -L 2001:localhost:2001 -L 2002:localhost:2002 user@remote_host