Improbable-AI / walk-these-ways

Sim-to-real RL training and deployment tools for the Unitree Go1 robot.

Home Page:https://gmargo11.github.io/walk-these-ways/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Minor Fixes

TextZip opened this issue · comments

@gmargo11 thanks for the amazing repo, it was very intuitive to follow. Looking forward to updates on Deploying a Custom Model. Here is a video of Go1 running around with the policy.

Here are some minor fixes that could make deployment easier:

Installing the Deployment Utility

  1. The cd go1_gym_deploy/scripts && ./send_to_unitree.sh downloads the deployment_image.tar to the scripts folder. While in the next step cd ~/go1_gym/go1_gym_deploy/installer && ./install_deployment_code.sh the script searches for the deployment_image.tar in /go1_gym/go1_gym_deploy/installer.

Running the Controller

  1. There seems to be no safe way to exit the policy, the policy continued to run even after the script was terminated.

Some information that might be helpful for others

  1. If you run out of disk space during cd ~/go1_gym/go1_gym_deploy/installer && ./install_deployment_code.sh consider changing the script to use 192.168.123.13 instead (at least in my Go1 Edu with 3 Jetson nano, I only had the required disk space to copy the tar and extract the image in only 192.168.123.13). Alternatively, consider deploying on an external PC.

  2. When deploying on an external PC/NUC, if you get the following error

➜ sudo ./start_unitree_sdk.sh
./lcm_position: 1: Syntax error: word unexpected (expecting ")")

It is likely because the ./lcm_position has been compiled for ARM aarch64 (to run on the jetson), please recompile it for your architecture(external PC/ NUC) using https://github.com/Improbable-AI/unitree_legged_sdk.

@TextZip Thrilled to see the policy running on your Go1! Thanks for sharing the video.

Will you consider submitting a pull request with these fixes and updates to the README? I would be happy to merge it so that you are attributed :)

-Gabe

Updated the readme and install_deployment_code.sh!

48267a3
5b18170

@TextZip Thanks for your advice! I am trying to deploy on an external NUC too, when I run sudo make autostart, I got an error

docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #0: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
nvidia-container-cli: initialization error: load library failed: libnvidia-ml.so.1: cannot open shared object file: no such file or directory: unknown.
make: *** [Makefile:25: autostart] Error 127

I tried to change the docker version, but still get the same error. Could you give me some suggestion to solve it?

Hi @MariaBana ,

I never faced this issue so I'm not entirely sure but did you check this out?

This is probably due to the fact that sudo privileges were used during the installation.
I was installing nvidia drivers and nvidia container toolkit with sudo and when I tried to run the docker container without sudo, I got the exact same error.

Source: https://forums.developer.nvidia.com/t/nvidia-container-cli-initialization-error-load-library-failed-libnvidia-ml-so-1/237759/2

@TextZip Thanks for your help! According to the suggestion mentioned in this comment #31 (comment), I solved this problem by directly configuring the environment on the NUC.