jsk-ros-pkg / jsk_robot

jsk-ros-pkg/jsk_robot
https://github.com/jsk-ros-pkg/jsk_robot
73 stars 97 forks source link

[unitree/cross] Enable to share single docker image with multiple users #1868

Closed k-okada closed 10 months ago

k-okada commented 10 months ago
sktometometo commented 10 months ago

I will check this branch today.

k-okada commented 10 months ago

Thanks for the confirmation. However, there should be a robot with the software that worked 6 months ago already installed on the main computer. You can use the robot as an embedded system, so do not work on the internal system, build your own environment on an external PC and prepare for SI first.

Unfortunately it is not working well at the moment, but the purpose of the 'cross' system is not to spend time building and debugging all the software for each use of the robot, but instead to add/copy programs to jsk_unitree_robot or unitree.repos and . /build_user.sh and . /install.sh so that we could concentrate on app development and demo creation. If SI preparation is delayed due to 'cross' trouble, it is the creator's problem, so let's give priority to SI.

tkmtnt7000 commented 10 months ago

Screenshot from 2023-10-17 19-06-55

I have confirmed that this PR works with k-okada.

a part of ./install.sh -t Pro -p xxx -d User log for debugging.

+ [[ User == \U\s\e\r ]]
+ rsync '--rsh=sshpass -p 123 ssh -o StrictHostKeyChecking=no -l unitree' -avz --delete --delete-excluded ../jsk_unitree_startup/autostart/ 192.168.123.14:Unitree/autostart/jsk_startup
sending incremental file list
./
bark.wav
jsk_startup.sh

sent 207 bytes  received 4,509 bytes  3,144.00 bytes/sec
total size is 539,534  speedup is 114.41
+ [[ Pro == \A\i\r ]]
+ sshpass -p 123 ssh -t unitree@192.168.123.14 'source /opt/jsk/User/user_setup.bash; sudo cp -f $(rospack find respeaker_ros)/config/60-respeaker.rules /etc/udev/rules.d/60-respeaker.rules'
ROS_IP=192.168.123.14
ROS_MASTER_URI=http://192.168.123.161:11311
[sudo] password for unitree: 
Connection to 192.168.123.14 closed.
+ sshpass -p 123 ssh -t unitree@192.168.123.14 'ls -al /etc/udev/rules.d/; sudo systemctl restart udev'
total 48
drwxr-xr-x 2 root root 4096 6月  24  2022 .
drwxr-xr-x 4 root root 4096 12月 10  2021 ..
-rw-r--r-- 1 root root   80 5月  22 15:16 60-respeaker.rules
-rw-r--r-- 1 root root  616 1月  16  2021 90-alsa-asound-tegra.rules
-rw-r--r-- 1 root root  175 1月  16  2021 91-xorg-conf-tegra.rules
-rw-r--r-- 1 root root  962 1月  16  2021 92-hdmi-audio-tegra.rules
-rw-r--r-- 1 root root  208 1月  16  2021 99-nv-l4t-usb-device-mode.rules
-rw-r--r-- 1 root root 1326 1月  16  2021 99-nv-l4t-usb-host-config.rules
-rw-r--r-- 1 root root  427 1月  16  2021 99-nv-ufs-mount.rules
-rw-r--r-- 1 root root  634 1月  16  2021 99-nv-wifibt.rules
-rw-r--r-- 1 root root 2036 1月  16  2021 99-tegra-devices.rules
-rw-r--r-- 1 root root  130 1月  16  2021 99-tegra-mmc-ra.rules
[sudo] password for unitree: 
Connection to 192.168.123.14 closed.
+ [[ 192.168.123.14 == \1\9\2\.\1\6\8\.\1\2\3\.\1\6\1 ]]
+ set +x
# Host 192.168.123.15 found: line 28
/home/tsukamoto/.ssh/known_hosts updated.
Original contents retained as /home/tsukamoto/.ssh/known_hosts.old
Warning: Permanently added '192.168.123.15' (ECDSA) to the list of known hosts.
Backups         camera_image_publisher.py  Documents  examples.desktop      jsk        mic.wav  Music     Public      sitepkg  startNode.sh  udpsrc.py  UnitreecameraSDK
camera_check_script.py  Desktop            Downloads  get-people-number.py  jsk_catkin_ws  mqsnn    Pictures  sample.wav  start    Templates     Unitree    Videos
patching file /home/unitree/Unitree/autostart/imageai/mLComSystemFrame/pyScripts/live_human_pose.py
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file /home/unitree/Unitree/autostart/imageai/mLComSystemFrame/pyScripts/live_human_pose.py.rej
Connection to 192.168.123.15 closed.
===
Congratulations! Please reset robot and enjoy!!
===
tkmtnt7000 commented 10 months ago

新しい環境(phobos)でmake systemして放置していましたが以下のエラーが出ていました. 僕の環境の問題?かもしれませんがmake distcleanしてやり直しましたが2回とも同じ場所で死んだので念のため報告します.

すべてのログ:https://gist.github.com/tkmtnt7000/25ff0f8d559abc69444b18bd60d7c789

<== Finished processing package [36 of 94]: 'pr2_msgs'

==> Processing plain cmake package: 'python_orocos_kdl'
==> Creating build directory: 'build_isolated/python_orocos_kdl/install'
==> Building with env: '/opt/jsk/System/ros1_inst/env.sh'
==> cmake /home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl -DCMAKE_INSTALL_PREFIX=/opt/jsk/System/ros1_inst -DCMAKE_BUILD_TYPE=Release -DCATKIN_ENABLE_TESTING=FALSE -DEUSLISP_WITHOUT_DISPLAY=TRUE -DDISABLE_DOCUMENTATION=1 -G Unix Makefiles in '/home/user/arm64v8_ws_system/build_isolated/python_orocos_kdl/install'
'import usercustomize' failed; use -v for traceback
'import usercustomize' failed; use -v for traceback
'import usercustomize' failed; use -v for traceback
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PythonInterp: /usr/bin/python2 (found suitable version "2.7.17", minimum required is "2") 
-- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython2.7.so (found suitable version "2.7.17", minimum required is "2.7") 
'import usercustomize' failed; use -v for traceback
'import usercustomize' failed; use -v for traceback
Traceback (most recent call last):
  File "/home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl/cmake/FindSIP.py", line 8, in <module>
    import sipconfig
ImportError: No module named sipconfig
CMake Error at cmake/FindSIP.cmake:63 (MESSAGE):
  Could not find SIP
Call Stack (most recent call first):
  CMakeLists.txt:14 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/user/arm64v8_ws_system/build_isolated/python_orocos_kdl/install/CMakeFiles/CMakeOutput.log".
<== Failed to process package 'python_orocos_kdl': 
  Command '['/opt/jsk/System/ros1_inst/env.sh', 'cmake', '/home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl', '-DCMAKE_INSTALL_PREFIX=/opt/jsk/System/ros1_inst', '-DCMAKE_BUILD_TYPE=Release', '-DCATKIN_ENABLE_TESTING=FALSE', '-DEUSLISP_WITHOUT_DISPLAY=TRUE', '-DDISABLE_DOCUMENTATION=1', '-G', 'Unix Makefiles']' returned non-zero exit status 1

Reproduce this error by running:
==> cd /home/user/arm64v8_ws_system/build_isolated/python_orocos_kdl && /opt/jsk/System/ros1_inst/env.sh cmake /home/user/arm64v8_ws_system/src/orocos_kinematics_dynamics/python_orocos_kdl -DCMAKE_INSTALL_PREFIX=/opt/jsk/System/ros1_inst -DCMAKE_BUILD_TYPE=Release -DCATKIN_ENABLE_TESTING=FALSE -DEUSLISP_WITHOUT_DISPLAY=TRUE -DDISABLE_DOCUMENTATION=1 -G 'Unix Makefiles'

Command failed, exiting.
make: *** [Makefile:15: system] Error 1
k-okada commented 10 months ago

sorry I forget to add usercustomze.py (https://github.com/k-okada/jsk_robot/pull/101/commits/3064dcaccd2898c802f28d1d8041a234e40f1a15), please use latest version. You may also need to remove existing start_scripts/usercustomize.py directory.

tkmtnt7000 commented 10 months ago

Thank you. I have confirmed that make system works successfully.