diff --git a/docs/icub_operating_systems/icubos/install-cmake.md b/docs/icub_operating_systems/icubos/install-cmake.md new file mode 100644 index 000000000..3a8118e9a --- /dev/null +++ b/docs/icub_operating_systems/icubos/install-cmake.md @@ -0,0 +1,32 @@ +# Install the latest CMake version (MANDATORY only for Ubuntu 20.04) + +!!! info + + This procedure should be performed after the [JetPack installation](./jetpack.md) has been completed. + +The latest YARP v3.10.0 requires CMake >= 3.19, but Ubuntu 20.04 only provides CMake 3.16, so it needs to be upgraded. + +To download the latest version, first remove CMake with: + +```bash +sudo apt purge --auto-remove cmake +``` + +Get a copy of the signing key: + +```bash +wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null +``` + +Add the repository: + +```bash +sudo apt-add-repository "deb https://apt.kitware.com/ubuntu/ $(lsb_release -cs) main" +``` + +Update the repo index and install CMake: + +```bash +sudo apt update +sudo apt install cmake +``` diff --git a/docs/icub_operating_systems/icubos/install-cuda-libraries.md b/docs/icub_operating_systems/icubos/install-cuda-libraries.md new file mode 100644 index 000000000..137acfa47 --- /dev/null +++ b/docs/icub_operating_systems/icubos/install-cuda-libraries.md @@ -0,0 +1,21 @@ +# Install the CUDA libraries + +!!! info + + This procedure should be performed after the [JetPack installation](./jetpack.md) has been completed. + +Usually the Jetpack flashing procedure takes care of installing the Cuda toolkit and libraries. If running the command `nvcc --version` returns `Command not found`, then you need to install them manually though `apt`. + +For example **Jetpack 4.5.1**, which uses **Cuda 10.2** do: + +```bash +sudo apt install cuda-libraries-dev-10-1 cuda-nvcc-10-2 +``` + +Then, within the `.bashrc`: + +```bash +export CUDA_HOME=/usr/local/cuda-10.2 +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.2/lib64:/usr/local/cuda-10.2/extras/CUPTI/lib64 +export PATH=$PATH:$CUDA_HOME/bin +``` diff --git a/docs/icub_operating_systems/icubos/install-jtop.md b/docs/icub_operating_systems/icubos/install-jtop.md new file mode 100644 index 000000000..e3f9b6984 --- /dev/null +++ b/docs/icub_operating_systems/icubos/install-jtop.md @@ -0,0 +1,15 @@ +# Install jtop + +!!! info + + This procedure should be performed after the [JetPack installation](./jetpack.md) has been completed. + +`jtop` (a.k.a [jetson-stats](https://github.com/rbonghi/jetson_stats)) is a package for monitoring and control your NVIDIA Jetson boards. + +![](../img/jtop.gif) + +For installing it: + +```bash +sudo -H pip install -U jetson-stats +``` diff --git a/docs/icub_operating_systems/icubos/install-librealsense.md b/docs/icub_operating_systems/icubos/install-librealsense.md new file mode 100644 index 000000000..849d4e559 --- /dev/null +++ b/docs/icub_operating_systems/icubos/install-librealsense.md @@ -0,0 +1,39 @@ +# Install `librealsense` with Cuda support + +!!! info + + This procedure should be performed after the [JetPack installation](./jetpack.md) has been completed. + +`librealsense` is a cross-platform library provided by Intel that can be used to take advantage of the features of the Intel Realsense cameras. +After installing the [cuda libraries](./install-cuda-libraries.md), we can make the Realsense camera use also the gpu resources for better performances, enabling the cuda support. + +In a terminal, clone the official repo with: + +```bash +git clone https://github.com/IntelRealSense/librealsense.git +``` + +Install the librealsense required development packages: + +```bash +sudo apt install libssl-dev freeglut3-dev libusb-1.0-0-dev pkg-config libgtk-3-dev unzip -y +``` + +Install the `udev` rules (the librealsense kernel patching procedure does not work with recent Jetpack versions): + +```bash +sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/ +sudo udevadm control --reload-rules && sudo udevadm trigger +``` + +Now you are ready to compile librealsense with Cuda support: + +```bash +cd librealsense +mkdir build && cd build +cmake ../ -DFORCE_LIBUVC=BOOL:ON -DCMAKE_BUILD_TYPE=Release -DBUILD_WITH_CUDA=BOOL:ON -DBUILD_EXAMPLE=BOOL:OFF +make -j2 +sudo make install +``` + +For more information, refer to the [official documentation](https://github.com/IntelRealSense/librealsense/blob/master/doc/installation_jetson.md) provided in the repository. diff --git a/docs/icub_operating_systems/icubos/jetpack.md b/docs/icub_operating_systems/icubos/jetpack.md index dc1f722f6..364c5e830 100644 --- a/docs/icub_operating_systems/icubos/jetpack.md +++ b/docs/icub_operating_systems/icubos/jetpack.md @@ -79,7 +79,7 @@ Now the board is in programming mode. With a **Nvidia Jetson Xavier NX**, instead, keep the button RST/RECOVERY pressed for several seconds and then, when released, the board will be in recovery mode. -With the **Nvidia Jetson Orin NX**, the procedure is quite the same. The recovery mode could be achieved by pressing the Force Recovery and the Reset buttons simultaneously, then release the reset when the fan starts and, after ~2 sec, release the FR button too. +With the **Nvidia Jetson Orin NX**, the procedure is quite the same. The recovery mode could be achieved by pressing the Force Recovery and the Reset buttons simultaneously, then release the reset and, after ~2 sec, release the FR button too. The fan should starts. In order to check that the board went in recovery mode, run on a terminal in the host @@ -95,6 +95,10 @@ The board is in recovery mode if it appears something like this At this point we are ready to flash. +!!! warning + + If you want to configure your `Jetson Orin NX` to be used with `FRAMOS-IMX415` cameras, please refer to the [specific procedure](./setup-framos-imx415.md) from hereinafter. + 1. From the previously folder, do `cd ..` to return to the Linux_for_Tegra directory 2. Flash the image by running `sudo ./cti-flash.sh` script (otherwise you can use the manual flashing procedure). @@ -130,121 +134,12 @@ sudo apt install -f sudo apt update && sudo apt upgrade ``` -#### Install the Cuda libraries (OPTIONAL) - -Usually the Jetpack flashing procedure takes care of installing the Cuda toolkit and libraries. If running the command `nvcc --version` returns `Command not found`, then you need to install them manually though `apt`. - -For example **Jetpack 4.5.1**, which uses **Cuda 10.2** do: - -```bash -sudo apt install cuda-libraries-dev-10-1 cuda-nvcc-10-2 -``` - -Then, within the `.bashrc`: - -```bash -export CUDA_HOME=/usr/local/cuda-10.2 -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.2/lib64:/usr/local/cuda-10.2/extras/CUPTI/lib64 -export PATH=$PATH:$CUDA_HOME/bin -``` - -#### Install the latest CMake version (MANDATORY only for Ubuntu 18.04) -The latest Robotology superbuild version requires CMake >= 3.12, but Ubuntu 18.04 only provides CMake 3.10, so it needs to be upgraded. - -To download the latest version, first remove CMake with: - -```bash -sudo apt purge --auto-remove cmake -``` - -Get a copy of the signing key: - -```bash -wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null -``` - -Add the repository: - -```bash -sudo apt-add-repository "deb https://apt.kitware.com/ubuntu/ $(lsb_release -cs) main" -``` - -Update the repo index and install CMake: - -```bash -sudo apt update -sudo apt install cmake -``` - -#### Install `librealsense` with Cuda support (OPTIONAL) - -`librealsense` is a cross-platform library provided by Intel that can be used to take advantage of the features of the Intel Realsense cameras. -After installing the [cuda libraries](#install-the-cuda-libraries-optional), we can make the Realsense camera use also the gpu resources for better performances, enabling the cuda support. - -In a terminal, clone the official repo with: - -```bash -git clone https://github.com/IntelRealSense/librealsense.git -``` - -Install the librealsense required development packages: - -```bash -sudo apt install libssl-dev freeglut3-dev libusb-1.0-0-dev pkg-config libgtk-3-dev unzip -y -``` - -Install the `udev` rules (the librealsense kernel patching procedure does not work with recent Jetpack versions): - -```bash -sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/ -sudo udevadm control --reload-rules && sudo udevadm trigger -``` - -Now you are ready to compile librealsense with Cuda support: - -```bash -cd librealsense -mkdir build && cd build -cmake ../ -DFORCE_LIBUVC=BOOL:ON -DCMAKE_BUILD_TYPE=Release -DBUILD_WITH_CUDA=BOOL:ON -DBUILD_EXAMPLE=BOOL:OFF -make -j2 -sudo make install -``` - -For more information, refer to the [official documentation](https://github.com/IntelRealSense/librealsense/blob/master/doc/installation_jetson.md) provided in the repository. - - -#### Install jtop (OPTIONAL) - -`jtop` (a.k.a [jetson-stats](https://github.com/rbonghi/jetson_stats)) is a package for monitoring and control your NVIDIA Jetson boards. - -![](../img/jtop.gif) - -For installing it: - -```bash -sudo -H pip install -U jetson-stats -``` - -## Create a backup image +# Post-flashing operations -For this step you need to have completed the [steps about the sdkManager](#jetpack-setup-on-the-host). -Make sure that the Xavier was started in [recovery mode](#booting-the-nvidia-jetson-board-in-recovery-mode) and it is found with `lsusb`. -On the host machine go to the `Linux_for_Tegra` folder and run: +After successfully flashing your NVIDIA board by following the dedicated procedure, it is optional to perform a series of post-flashing operations to ensure the system is configured correctly and ready for use. The following steps will help finalize the setup. -```bash -cd ~/nvidia/nvidia_sdk/JetPack__Linux_/Linux_for_Tegra -sudo ./flash.sh -r -k APP -G backup.img mmcblk0p1 -``` - -For example for flashing the NVIDIA Jetson Xavier NX, `board_identifier` is `jetson-xavier-nx-devkit-emmc`. - -## Flashing a backup image - -For this step you need to have completed the [steps about the sdkManager](#jetpack-setup-on-the-host) and also have successfully backed up a Jetpack image following [these steps](#create-a-backup-image). - -```bash -cd ~/nvidia/nvidia_sdk/JetPack__Linux_/Linux_for_Tegra -sudo mv bootloader/system.img* . #this save old image -sudo mv backup.img.raw bootloader/system.img #rename new image -sudo ./flash.sh -r jetson-xavier-nx-devkit-emmc mmcblk0p1 -``` +- [Install CUDA libraries](./install-cuda-libraries.md) +- [Install librealsense](./install-librealsense.md) +- [Install jtop](./install-jtop.md) +- [Install CMake (only for Ubuntu 20.04)](./install-cmake.md) +- [Setup Orin NX for FRAMOS-IMX415 (only for `iCub head v2.10`)](./setup-framos-imx415.md) diff --git a/docs/icub_operating_systems/icubos/setup-framos-imx415.md b/docs/icub_operating_systems/icubos/setup-framos-imx415.md new file mode 100644 index 000000000..4c46d5b03 --- /dev/null +++ b/docs/icub_operating_systems/icubos/setup-framos-imx415.md @@ -0,0 +1,65 @@ +# Setup Orin NX for using with FRAMOS-IMX415-C + +This guide aims to highlight the correct procedure to configure the setup for using the [`FRAMOS-IMX415`](https://www.framos.com/en/products/fsm-imx415-sensor-module-26361) cameras with the [`Orin NX`](https://www.nvidia.com/it-it/autonomous-machines/embedded-systems/jetson-orin/) from Nvidia + [`Boson for FRAMOS`](https://connecttech.com/product/boson-for-framos-carrier-board-for-nvidia-jetson-xavier-nx/) carrier from ConnectTech. + +!!! info + + Be sure that the [Jetpack installation](./jetpack.md) procedure up to the BSP installation on the setup has been completed. At this point we are ready to flash the image. + +### Flash the image + +In the host: + +1. Navigate into `/nvidia/nvidia_sdk_JetPack_5.1.2_Linux_JETSON_ORIN_NX_TARGETS/Linux_for_Tegra` +2. Run the flash script (as root or sudo): + + ``` + sudo ./cti-nvme-flash.sh cti/orin-nx/boson/fsm-imx415-2cam + ``` + +3. Once the flash has completed, the board will reboot. + +Check out the [ConnectTech tutorial](https://connecttech.com/resource-center/kdb373/) explaining the complete procedure. + +### Complete the OEM installation +After booting into the OS, follow the OEM installation with the default options. + +Set the user name to `ergocub` with the hostname `ergocub-head`. Allow login without password and let the installation process finish. + +After rebooting into the graphical OS, run the following commands in a terminal to update the system: + +```bash +sudo apt install -f +sudo apt update && sudo apt upgrade +reboot +``` + +### Switch profile on Orin NX +After the reboot process: + +1. Open a new terminal on the Orin NX and run `sudo cti-orin-nx-nano-fdt.sh` +2. Follow the interactive procedure and select `Orin NX`, then `Boson NGX007` and finally the profile for the FRAMOS IMX415 cameras, i.e. `fsm-imx415-2cam` +3. Once the script exits, run `sync` and `reboot` to finalize the changes. + + ![post-flash](../img/post-flash.png) + +## Post-flashing operations + +### Install FRAMOS drivers + +From the [`FRAMOS Resource Center`](https://www.framos.com/en/fsm-startup), download the proper software by selecting the following entries: + +![framos-sw](../img/framos-sw.png) + +Unzip the file in the folder you prefer, then navigate into and run: + +``` +sudo apt install ./framos-libsv_*_arm64.deb +``` + +As soon as the installation procedure has finished, please power off the Orin NX. Then plug-in your cameras to the `CAM1` and `CAM2` connectors, and finally power on the board again. + +!!! warning + During the flashing procedure, the profile `fsm-imx415-2cam` has been selected, which means that two cameras could be used with this configuration. For this reason, only `CAM1` and `CAM2` connectors are enabled to read the data from the FRAMOS-IMX415, while CAM3 and CAM4 are not. Please, be sure that they are properly connected. + +Check if the cameras are detected running `ls /dev/video*` from the command line. \ No newline at end of file diff --git a/docs/icub_operating_systems/img/framos-sw.png b/docs/icub_operating_systems/img/framos-sw.png new file mode 100644 index 000000000..7443d5608 Binary files /dev/null and b/docs/icub_operating_systems/img/framos-sw.png differ diff --git a/docs/icub_operating_systems/img/post-flash.png b/docs/icub_operating_systems/img/post-flash.png new file mode 100644 index 000000000..da94c2f5a Binary files /dev/null and b/docs/icub_operating_systems/img/post-flash.png differ diff --git a/docs/icub_versions/index.md b/docs/icub_versions/index.md index b9bf08910..cb1efd464 100644 --- a/docs/icub_versions/index.md +++ b/docs/icub_versions/index.md @@ -16,8 +16,8 @@ | v2.6 | v2.5.5 with new face expression (RFE master board) | | | v2.7 | v2.6 with high-performance IMU on the waist | | | v2.8 | v2.7 with beam-splitter in the eye for hosting event driven and frame based sensors | | -| v2.9 | **v2.7** with hands mk5 and forearm mk2 | | -| v2.10 | **v2.7** with hands mk5, forearm mk2, new 4k basler cameras, nvidia xavier and intel i7 11th on com express type 10 module (UKIT009) | | +| v2.9 | _obsolete_ | | +| v2.10 | **v2.7** with the 4K FRAMOS-IMX145 cameras, NVidia Orin NX [(UKIT009)](../upgrade_kits/head_4k/support.md) and intel i7 11th on com express type 10 module in the backpack | | |Special Version | Features | Notes | | :---:| :---| :---| diff --git a/docs/upgrade_kits/head_4k/img/1.JPG b/docs/upgrade_kits/head_4k/img/1.JPG index b045a648a..9df62555f 100644 Binary files a/docs/upgrade_kits/head_4k/img/1.JPG and b/docs/upgrade_kits/head_4k/img/1.JPG differ diff --git a/docs/upgrade_kits/head_4k/img/3.JPG b/docs/upgrade_kits/head_4k/img/3.JPG index b1413267c..be76dd1e5 100644 Binary files a/docs/upgrade_kits/head_4k/img/3.JPG and b/docs/upgrade_kits/head_4k/img/3.JPG differ diff --git a/docs/upgrade_kits/head_4k/support.md b/docs/upgrade_kits/head_4k/support.md index 0a7a7eb2c..73deeb53f 100644 --- a/docs/upgrade_kits/head_4k/support.md +++ b/docs/upgrade_kits/head_4k/support.md @@ -6,7 +6,7 @@ ## Upgrade Kit -This upgrade kit is meant to update the head with high-resolution cameras, bigger FOV lenses, a more reliable eyes' tilt mechanism, and new computational units. +This upgrade kit is meant to update the head with new eyes composed by high-resolution cameras, bigger FOV lenses, new GPU, new accomodation for the COM-Express in the backpack, new design for the upper cover of the backpack.
![](img/1.JPG)
@@ -26,72 +26,32 @@ This upgrade kit is meant to update the head with high-resolution cameras, bigge
![](img/3.JPG)
-Alias | Description | Code | Rev | Qty --- | -- | -- | -- | -- -V2_5-6--_-_ISO7045_CZ | screw – M2.5 x  6 – UNI7687 , DIN7985A , ISO7045 – SS A2 –  pozidriv cross recessed pan head | 2414 |   | 4 -V2-5--_-_ISO7045_CZ | screw – M 2 x 5 – UNI7687 , DIN7985A , ISO7045 – SS A2 –  pozidriv cross recessed pan head | 2429 |   | 5 -V2-6--_-_ISO7045_CZ | screw – M 2 x 6  – UNI7687 , DIN7985A , ISO7045 – SS A2 –  pozidriv cross recessed pan head | 2439 |   | 2 -V3-8--_-_U5931_GC | screw – M 3 x 8  – UNI5931 , DIN912  , ISO4762 – SS A2 – hexagon socket cap head - fully threaded | 2467 |   | 2 -V3-8--_-_U5933_C | screw – M 3 x 8 – UNI5933 , DIN7991  , ISO10642 – SS A2 – hexagon socket countersunk head | 2468 |   | 1 -D1_6--_-_I4032 | Hexagonal nut - M1.6 - stainless steel A2 - DIN934, ISO4032, UNI5588 | 2522 |   | 4 -V2_5-6--_-_ISO7046-1_CH | screw – M2.5 x 6  – UNI7688 , DIN965A  , ISO7046 – SS A2 – phillips cross recessed flat head | 2583 |   | 10 -R1-6--_-_U6592 | Washer - flat regular type - M1.8 (1.7x4x0.3) - SS A2 140HV - DIN125 A, ISO7089, UNI 6592 | 2590 |   | 2 -V1_6-4--_-_I1207_C | screw – M1.6 x 4  – UNI6107 , DIN84A  , ISO1207 – SS A2 – slotted cheese head | 2593 |   | 8 -V2-4--_-_ISO7046-1_CH | screw – M 2 x 4  – UNI7688 , DIN965A  , ISO7046 – SS A2 – phillips cross recessed flat head | 2707 |   | 3 -G2-3--_-_U5923_G | Set screw, hex socket, M2,0 x 3,0, stainless steel A2, DIN913, ISO4026, UNI5923 | 4305 |   | 10 -HELICOIL_M2-5_L2D | HELICOIL Plus M2.5x5mm , stainless steel A2 | 4884 |   | 4 -STANDOFF-HEX-MF-2_5-10_PTFE | Standoff Hex PTFE M/F M2.5 L=10 | 5990 |   | 6 -B3-6--_-_U9200_A | SNAP RIVET UNI 9200-A 3X6 | 6730 |   | 4 -PEM_SMPS_M25 | PEM self-clinging nut - SMPS M2.5 THK MIN 0.64 | 10527 |   | 40 -S1-4--_-_I2338_B | Dowel pin Ø1.0 x 4 stainless steel A2, DIN7, ISO2338B, VSM12771, UNI1707 | 11950 |   | 4 -ICUB3_020_P_121 | V2 tilt gearbox output shaft | 12332 |   | 2 -S2-5--_-_I2338_B | Dowel pin 2.0 (h8) x 5 stainless steel A2, DIN7, ISO2338B, UNI1707 | 12652 |   | 2 -IC_002_G_011 | Box for speaker PUI-Audio AS04004PO-2-R assy | 12928 |   | 1 -IC_002_P_012 | Grid for speaker | 12930 |   | 1 -IC_002_P_016 | Standard head eyes tilt frame | 12932 |   | 1 -IC_011_G_002 | head tilt and motor lips frame assembly | 12934 | A1 | 1 -IGUS_JFM-0507-03 | Iglide J Flange bushing D5x3 | 14068 |   | 2 -PEM_SO-M4-10 | PEM Thru-Holes Standoff M4x10 (Steel) | 14069 |   | 2 -KONTRON_34099-0000-99-0_R2_1 | COMe mini Active Uni Cooler (w/o HSP) | 15626 |   | 1 -M2x06-6LOBE-ISO14583-A2-70 | M2x 6 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 15853 |   | 4 -M2x08-6LOBE-ISO14583-A2-70 | M2x 8 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 15854 |   | 4 -M4x16-6LOBE-ISO14581-A2-70 | M4x16 , ISO14581, 6LOBE socket countersunk flat head screw, f. threaded, A2-70 | 15862 |   | 2 -M2_5x06-6LOBE-ISO14581-A2-70 | M2.5x 6 , ISO14581, 6LOBE socket countersunk flat head screw, f. threaded, A2-70 | 15931 |   | 6 -M2_5x04-6LOBE-ISO14583-A2-70 | M2.5x 4 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 15991 |   | 8 -M2_5x05-6LOBE-ISO14583-A2-70 | M2.5x 5 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 15992 |   | 16 -M2_5x10-6LOBE-ISO14583-A2-70 | M2.5x10 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 15995 |   | 8 -M3x08-6LOBE-ISO14583-A2-70 | M3x 8 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 16024 |   | 2 -STANDOFF_MF_M2_5-8_BRASS | Standoff - hexagonal - Brass - MF - M2.5 x 8 | 16068 |   | 4 -ECUB_004_R_002 | Fan and heatsink for board ADVANTECH_SOM-7583C7-S8A1 | 16500 |   | 1 -RS_196-5457 | Metric Nitrile 70 ShA O-Rings Ø int. 2.6mm, Ø ext. 5.4mm 1.4mm | 16512 |   | 8 -STANDOFF_MF_M2_5-5_BRASS | Standoff - hexagonal - Brass - MF - M2.5 x 5 | 16517 |   | 8 -IC_031_G_005 | icub, Head main Chassis | 16520 |   | 1 -IC_031_G_006 | icub, rear support for head chassis | 16521 |   | 1 -IC_031_G_007 | icub, Connetch support for head | 16522 |   | 1 -IC_031_P_020 | icub, head , adapter for head covers | 16523 |   | 2 -IC_031_P_028 | icub, head, Support for wiFi module | 16524 |   | 3 -IC_032_G_004 | EXPRESSIVE HEAD MAIN FRAME ASSY | 16525 |   | 1 -IC_032_G_010 | icub, head frame boards assembly | 16526 |   | 1 -IC_032_G_011 | Neuromoprphic eye | 16527 |   | 1 -IC_032_G_012 | V2 eye CCD group | 16528 |   | 1 -IC_032_G_013 | eye pan motor-gerabov assembly | 16529 |   | 1 -IC_032_G_014 | eyes and speaker assembly | 16530 |   | 1 -IC_032_G_015 | eye support main group | 16531 |   | 1 -IC_032_G_016 | Neuromoprphic eye | 16532 |   | 1 -IC_032_G_017 | eye pan motor-gerabov assembly | 16533 |   | 1 -IC_032_G_018 | V2 eye CCD group | 16534 |   | 1 -IC_032_G_019 | eyelid bushing and gear group | 16535 |   | 1 -IC_032_G_020 | eye bulb assembly with helicoil | 16536 |   | 2 -IC_032_G_025 | icub, RFE electronic board Support | 16537 |   | 1 -IC_032_P_010 | Eyelid reinforcement | 16538 |   | 1 -IC_032_P_011 | eyes pan gearbox motor base | 16539 |   | 2 -IC_032_P_012 | V2 eye tilt motor gearbox | 16540 |   | 2 -IC_032_P_013 | Eye CCD mounting plate | 16541 |   | 2 -IC_032_P_015 | lens holder | 16542 |   | 2 -IC_032_P_016 | Inner eye | 16543 |   | 2 -IC_032_P_017 | External ball eye | 16544 |   | 2 -IC_032_P_018 | eyelid upper | 16545 |   | 1 - +| Alias | Description | Code | Rev | Qty | +|-------------------------------|-----------------------------------------------------------------------------|-------|-----|-----| +| RMB_UL_255X | RMB BEARING UL 255X | 2344 | | 4 | +| V2-12--_-_ISO7045_CZ | CROSS RECESSED SCREW ISO7045 M2X12 Z | 2423 | | 2 | +| V2-6--_-_ISO7045_CZ | CROSS RECESSED SCREW ISO7045 M2X6 Z | 2439 | | 4 | +| V2-10--_-_ISO7046-1_CH | CROSS RECESSED SCREW ISO7046-1 M2X10 H | 2596 | | 2 | +| G2-2--_-_U5923_G | Set screw, hex socket, M2,0 x 2,0, stainless steel A2, DIN913, ISO4026, UNI5923 | 12766 | | 4 | +| M3X06-6LOBE-ISO14581-A2-70 | M3 x 6 , ISO14581, 6LOBE socket countersunk flat head screw, f. threaded, A2-70 | 15831 | | 2 | +| M1_6X04-6LOBE-ISO14583-A4-70 | M1.6 x 4 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A4-70 | 15841 | | 2 | +| M2X08-6LOBE-ISO14583-A2-70 | M2 x 8 , ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 15854 | | 4 | +| M2_5X06-6LOBE-ISO14583-A2-70 | M2_5 x 6, ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 15993 | | 4 | +| M3X06-6LOBE-ISO14583-A2-70 | M3 x 6, ISO14583, 6LOBE socket pan head machine screw, fully threaded, A2-70 | 16022 | | 4 | +| IC_034_G_007 | Eye bulb with inserts | 18375 | 0 | 2 | +| IC_034_G_025 | Orin NX support with inserts | 18384 | 0 | 1 | +| IC_034_M_020 | V2 eye tilt brace A | 18385 | 0 | 1 | +| IC_034_P_017 | Eye pan frame with protrusion | 18386 | 0 | 2 | +| IC_034_P_019 | Eye CCD mounting plate | 18387 | 0 | 2 | +| IC_034_P_020 | Eye tilt brace A | 18388 | 0 | 1 | +| IC_034_P_021 | Eyelid reinforcement | 18389 | 0 | 1 | +| IC_034_P_022 | Eyelid upper | 18390 | 0 | 1 | +| IC_034_P_023 | Eye pan frame | 18391 | 0 | 2 | +| IC_034_P_025 | V2 eye pan rod | 18392 | 0 | 2 | +| IC_034_G_029 | BASE FRAME for boards | 18400 | 0 | 1 | +| IC_034_G_030 | Support for COM with inserts | 18401 | 0 | 1 | +| IC_034_G_031 | Support for connector with inserts | 18402 | 0 | 1 | +| IC_034_G_034 | Cover backpack assy | 18405 | 0 | 1 | ## Content material WKIT_009 | Code | BOM | Alias | Rev | Qty | Description | @@ -159,22 +119,21 @@ T_E = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ -0 & 0 & 1 & -5.4mm \\ +0 & 0 & 1 & -12.63mm \\ 0 & 0 & 0 & 1 \\ \end{bmatrix} \end{equation} $$ -To use the [gaze controller](https://robotology.github.io/robotology-documentation/doc/html/group__iKinGazeCtrl.html), it is required the instantiation of `head_version` `"v2.10"`, available since the distro release [2022.11.0](../../sw_versioning_table/2022.11.0.md). +To use the [gaze controller](https://robotology.github.io/robotology-documentation/doc/html/group__iKinGazeCtrl.html), it is required the instantiation of `head_version` `"v2.10"`, available since the distro release 2024.11.0. ## Software instructions -This UKIT also includes an additional [NVIDIA Jetson Xavier NX](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-xavier-nx/) mounted on the top of the head, for handling the [Basler 4K cameras](https://docs.baslerweb.com/cameras.html) and performing image processing on the onboard GPU. -The NVIDIA Jetson has to be configured following [the flash procedure](../../icub_operating_systems/icubos/jetpack.md). +This UKIT also includes an additional [NVIDIA Jetson Orin NX](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-xavier-nx/) mounted on the top of the head, for handling the [FRAMOS-IMX415 cameras](https://www.framos.com/en/products/fsm-imx415-sensor-module-26361) and performing image processing on the onboard GPU. The Orin NX has to be configured following [the flash procedure](../../icub_operating_systems/icubos/jetpack.md) and then the guide to [configure the FRAMOS-IMX415](../../icub_operating_systems/icubos/setup-framos-imx415.md). If the image has been [installed from scratch](../../icub_operating_systems/icubos/jetpack.md#flash-a-new-image-from-scratch), an initial configuration is also required, which consists in: -- Set the `icub` as `host` and `icub-head-cam` as `hostname`. -- [Configure the network bridge and wifi](https://github.com/icub-tech-iit/icub-os-files/blob/master/system-files/iCubOS/ubuntu_20.04_bridge/README.md). +- Set the `icub` as `host` and `icub-head` as `hostname`. +- Configure the network. -For using the images provided by the new Basler camera over the YARP network, it is needed to compile and install [`yarp-device-pylon`](https://github.com/robotology/yarp-device-pylon#2-how-to-use-basler-pylon-cameras-as-a-yarp-device). +For using the images provided by the new `FRAMOS-IMX415` camera over the YARP network, it is needed to compile and install [`yarp-device-argus`](https://github.com/robotology/yarp-device-argus/tree/main?tab=readme-ov-file#2-how-to-use-framos-cameras-as-a-yarp-device). diff --git a/mkdocs.yml b/mkdocs.yml index d614c0f1b..ede8ab473 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -214,6 +214,11 @@ nav: - Network: ergocub_operating_systems/network.md - ergocub-head: - Jetpack installation: icub_operating_systems/icubos/jetpack.md + - Post-flashing operations: + - Install CUDA libraries : icub_operating_systems/icubos/install-cuda-libraries.md + - Install librealsense: icub_operating_systems/icubos/install-librealsense.md + - Install jtop: icub_operating_systems/icubos/install-jtop.md + - Install CMake (only for Ubuntu 20.04): icub_operating_systems/icubos/install-cmake.md - ergocub-torso: - Installation from scratch: ergocub_operating_systems/ergocub_torso/install_from_scratch.md - The OS for the iCub environment: @@ -245,6 +250,12 @@ nav: - OS images download: icub_operating_systems/download.md - iCub Setup startup procedure: icub_operating_systems/startup-procedure.md - NVIDIA JetPack installation: icub_operating_systems/icubos/jetpack.md + - Post-flashing operations: + - Install CUDA libraries : icub_operating_systems/icubos/install-cuda-libraries.md + - Install librealsense: icub_operating_systems/icubos/install-librealsense.md + - Install jtop: icub_operating_systems/icubos/install-jtop.md + - Install CMake (only for Ubuntu 20.04): icub_operating_systems/icubos/install-cmake.md + - Setup for FRAMOS-IMX415 (only for iCub head v2.10): icub_operating_systems/icubos/setup-framos-imx415.md - iCub Setup Multiple Robots: - Summary: icub_setup_multiple_robots/index.md - How to use two iCub robots in gazebo simulation: icub_setup_multiple_robots/two_robots_simulation.md