<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: CAVEDU Educaion</title>
    <description>The latest articles on DEV Community by CAVEDU Educaion (@cavedu).</description>
    <link>https://dev.to/cavedu</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4235101%2Fe908a584-6ac8-4fe6-80d0-6d1c06ae1c6c.jpg</url>
      <title>DEV Community: CAVEDU Educaion</title>
      <link>https://dev.to/cavedu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/cavedu"/>
    <language>en</language>
    <item>
      <title>Jetson AGX Orin and LangChain: Remote Access and AI Agent Projects on the MIC-733</title>
      <dc:creator>CAVEDU Educaion</dc:creator>
      <pubDate>Fri, 13 Nov 2026 01:00:00 +0000</pubDate>
      <link>https://dev.to/cavedu/jetson-agx-orin-and-langchain-remote-access-and-ai-agent-projects-on-the-mic-733-24hn</link>
      <guid>https://dev.to/cavedu/jetson-agx-orin-and-langchain-remote-access-and-ai-agent-projects-on-the-mic-733-24hn</guid>
      <description>&lt;p&gt;This Jetson AGX Orin LangChain tutorial demonstrates how to operate an Advantech MIC-733 remotely from a laptop and run Jupyter Notebook examples for Grove board control, voice interaction, news summaries, and product price searches.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Writing and photography: 郭俊廷 (CAVEDU)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Estimated time:&lt;/strong&gt; 2 hours. &lt;strong&gt;Difficulty:&lt;/strong&gt; 3/5.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hardware:&lt;/strong&gt; MIC-733-AO6A1 with a 64 GB NVIDIA Jetson AGX Orin, and a USB webcam with a microphone. The materials list names a C710; the voice example below uses a C170.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hardware and workflow
&lt;/h2&gt;

&lt;p&gt;This tutorial uses the Advantech MIC-733-AO6A1. Manufacturer highlights cited in the original article include up to 275 TOPS, a compact fanless design, four GbE ports with optional PoE, four USB 3.2 Gen 2 ports (10 Gbit/s), two mPCIe slots, two Nano SIM slots, Allxon remote monitoring and OTA deployment, and Microsoft Azure certification.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frqox6g70arf81wgw80f3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frqox6g70arf81wgw80f3.png" alt="Advantech MIC-733 1" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We will connect over SSH with MobaXterm, configure Wi-Fi, and use LangChain with the Arduino beginner kit to read sensors, control an LED, and interact through speech. We will also run environmental-news summarization and product-price lookup examples.&lt;/p&gt;

&lt;p&gt;Related reading: &lt;a href="https://blog.cavedu.com/2026/10/06/agx-orin-nemoclaw/" rel="noopener noreferrer"&gt;NemoClaw remote projects on the same MIC-733&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Connect to Jetson AGX Orin with MobaXterm
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Download MobaXterm
&lt;/h3&gt;

&lt;p&gt;A classroom or field setup may not have a separate monitor and keyboard. SSH lets you operate the MIC-733 from your laptop instead.&lt;/p&gt;

&lt;p&gt;The original tutorial uses the &lt;strong&gt;v26.0 Portable Edition&lt;/strong&gt;, available from the &lt;a href="https://mobaxterm.com.tw/download.html" rel="noopener noreferrer"&gt;MobaXterm download page&lt;/a&gt;. Extract the archive and run the executable.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcgpyj9h4vz41y6hvcvv7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcgpyj9h4vz41y6hvcvv7.png" alt="MobaXterm download page 1" width="800" height="363"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Connect the Ethernet cable
&lt;/h3&gt;

&lt;p&gt;Connect your laptop to the MIC-733's &lt;strong&gt;LAN2&lt;/strong&gt; port with an Ethernet cable. In this classroom setup, LAN2 has already been configured with the shared-network address &lt;strong&gt;10.42.0.1&lt;/strong&gt;. Use this address for the SSH and web connections below; it is a property of this prepared setup, not a universal device default.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1rg9opm1lx5omh8mvhel.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1rg9opm1lx5omh8mvhel.jpg" alt="Ethernet connection to MIC-733 1" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Start an SSH session
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Run &lt;strong&gt;MobaXterm_Personal_26.0.exe&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;If Windows displays the application's network-access prompt, the original walkthrough selects &lt;strong&gt;Allow access&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Session &amp;gt; SSH&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Set &lt;strong&gt;Remote host&lt;/strong&gt; to &lt;strong&gt;10.42.0.1&lt;/strong&gt; and select &lt;strong&gt;OK&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the prepared classroom image, both the username and password are &lt;strong&gt;mic-733ao&lt;/strong&gt;. Use the credentials configured for your own device. Password characters are not displayed while typing in the terminal; press Enter after entering the password.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzkp7042g3uw7svxqzuk8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzkp7042g3uw7svxqzuk8.png" alt="MobaXterm SSH setup and successful login 1" width="800" height="459"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjtbjzxb5d7m82kajgcoj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjtbjzxb5d7m82kajgcoj.png" alt="MobaXterm SSH setup and successful login 2" width="615" height="375"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F79rz4hhf2km8gd7x9fzg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F79rz4hhf2km8gd7x9fzg.png" alt="MobaXterm SSH setup and successful login 3" width="800" height="536"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frtshdagjebdt1b32emvo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frtshdagjebdt1b32emvo.png" alt="MobaXterm SSH setup and successful login 4" width="800" height="331"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1aaia3o5wxn0nv868r06.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1aaia3o5wxn0nv868r06.png" alt="MobaXterm SSH setup and successful login 5" width="799" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Configure Wi-Fi
&lt;/h3&gt;

&lt;p&gt;The examples need Internet access for online data and model resources. Open the network manager:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;sudo nmtui
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Choose &lt;strong&gt;Activate a connection&lt;/strong&gt;, select your Wi-Fi network, and enter its password. Press &lt;strong&gt;q&lt;/strong&gt; when finished to leave the interface.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fufkl17zw4ofxfpcskupu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fufkl17zw4ofxfpcskupu.png" alt="Network connection settings 1" width="448" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Test connectivity:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ping google.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Receiving reply packets indicates that the connection is working.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faafwykh5yv9idtnfjwq1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faafwykh5yv9idtnfjwq1.png" alt="Connectivity test 1" width="799" height="151"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Control a Grove board with LangChain
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Connect the hardware and upload the firmware
&lt;/h3&gt;

&lt;p&gt;Connect the Arduino beginner kit to a USB port on the MIC-733.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzfhy4d32sb68spue2xyg.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzfhy4d32sb68spue2xyg.jpg" alt="Arduino board connected to MIC-733 1" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If a teaching assistant has already uploaded the firmware, skip the following upload steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Download &lt;a href="https://drive.google.com/file/d/1IvvtLpy0llQiWBdKxwau51yD2ddDpdWe/view" rel="noopener noreferrer"&gt;llmcmd_blink.ino&lt;/a&gt; and the &lt;a href="https://cavedu.gitbook.io/cavedu/hangeekduino/hangeekduino_intro" rel="noopener noreferrer"&gt;Hangeekduino graphical programming package&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Open the sketch using the included Arduino IDE. Select &lt;strong&gt;Tools &amp;gt; Board: Arduino/Genuino Uno&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Use &lt;strong&gt;Get Board Info&lt;/strong&gt; to confirm the communication port, then click the upload arrow to flash the firmware.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwmmnget31481pb05vocn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwmmnget31481pb05vocn.png" alt="Arduino firmware upload 1" width="800" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6pmqdjg2x6bkccgxr71l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6pmqdjg2x6bkccgxr71l.png" alt="Arduino firmware upload 2" width="746" height="73"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr3spcpxzgpn1ly2fwrit.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr3spcpxzgpn1ly2fwrit.png" alt="Arduino firmware upload 3" width="799" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Activate the Conda environment and launch Jupyter Notebook
&lt;/h3&gt;

&lt;p&gt;In the remote terminal, enter the working directory and activate the prepared environment:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; ~/Downloads/GROVE_AGENT_LOCAL/
conda activate Grove-Agent
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flfap2c2num6wimtuc6ce.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flfap2c2num6wimtuc6ce.png" alt="Grove-Agent environment 1" width="646" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For the remote setup in this tutorial, launch Jupyter with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;jupyter notebook --ip=&lt;span class="s1"&gt;'*'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Open &lt;strong&gt;&lt;a href="http://10.42.0.1:8888" rel="noopener noreferrer"&gt;http://10.42.0.1:8888&lt;/a&gt;&lt;/strong&gt; in your laptop's browser. If the terminal displays a URL containing a token, use the complete access URL, including the token. The prepared classroom Jupyter setup may instead request its configured password, &lt;strong&gt;mic-733ao&lt;/strong&gt;. These are classroom configuration details, not general Jupyter defaults. Keep this service on a trusted network and retain authentication.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpwvofo6gil53qpsulmw6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpwvofo6gil53qpsulmw6.png" alt="Remote Jupyter Notebook access 1" width="800" height="362"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F38gn706ktfbwtybdxmvr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F38gn706ktfbwtybdxmvr.png" alt="Remote Jupyter Notebook access 2" width="800" height="292"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Run the Grove example
&lt;/h3&gt;

&lt;p&gt;Open &lt;strong&gt;Agent_Grove_Local_260907.ipynb&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Hardware detection:&lt;/strong&gt; Run the first code cell. It detects the Arduino's USB serial port, for example &lt;strong&gt;Device: /dev/ttyUSB0&lt;/strong&gt;. Update the program to match the port reported by your device.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scenario analysis and control:&lt;/strong&gt; Continue through the final cell. LangChain analyzes the environmental sensor readings, produces a risk assessment and care-related suggestions for the demonstration, and switches the board's LED on or off according to the result. Treat those suggestions as demonstration output rather than validated medical advice.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzas4cbfc3w0cqbhtfbv8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzas4cbfc3w0cqbhtfbv8.png" alt="Grove agent sensor analysis and LED control 1" width="797" height="103"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcff1bqbxy1gvbgatmtkv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcff1bqbxy1gvbgatmtkv.png" alt="Grove agent sensor analysis and LED control 2" width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Before moving to another example, run the final disconnect cell to release the board, interrupt the kernel, or close the notebook. Otherwise, the serial port may remain occupied.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faexgvxontop35ryhp1v2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faexgvxontop35ryhp1v2.png" alt="Disconnecting the board 1" width="796" height="86"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Add voice interaction
&lt;/h2&gt;

&lt;p&gt;This example adds microphone input and synthesized speech so the agent can interact with the user through voice.&lt;/p&gt;

&lt;h3&gt;
  
  
  Prepare the microphone
&lt;/h3&gt;

&lt;p&gt;Plug a USB webcam directly into the &lt;strong&gt;MIC-733&lt;/strong&gt;, not into your laptop. The example uses the built-in microphone of a C170 webcam.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnttl7hdb7ukj2f9d0zjg.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnttl7hdb7ukj2f9d0zjg.jpg" alt="USB webcam connected to MIC-733 1" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Run the speech notebook
&lt;/h3&gt;

&lt;p&gt;Open &lt;strong&gt;Text_Speech_Local_260826.ipynb&lt;/strong&gt;.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Test TTS:&lt;/strong&gt; Run the text-to-speech cell and click &lt;strong&gt;Convert and Play&lt;/strong&gt; (轉換並播放) to test audio output.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Record speech:&lt;/strong&gt; Run through the fourth code cell and click &lt;strong&gt;Start Recording&lt;/strong&gt; (開始錄音). In this setup, the webcam indicator lights while recording. Try a few times to become familiar with the timing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Identify USB hardware:&lt;/strong&gt; Check the Arduino connection reported by the system, such as &lt;strong&gt;/dev/ttyUSB0&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model analysis and spoken response:&lt;/strong&gt; The final cell takes the spoken request and uses the configured local model to analyze sensor data, assess the scenario, and generate suggestions followed by a spoken response. The original classroom example describes its model as “Gemma 26B”; check the actual installed model identifier and available memory in your environment.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fij7e4rhpc8w5rbftx702.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fij7e4rhpc8w5rbftx702.png" alt="Speech interaction notebook 1" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe895u0vonp2uj3dxbkz0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe895u0vonp2uj3dxbkz0.png" alt="Speech interaction notebook 2" width="799" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faq3us05vh89rsvqox861.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faq3us05vh89rsvqox861.png" alt="Speech interaction notebook 3" width="800" height="685"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1zvpiygyc70g8bd39545.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1zvpiygyc70g8bd39545.png" alt="Speech interaction notebook 4" width="799" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Summarize environmental news and look up product prices
&lt;/h2&gt;

&lt;p&gt;These examples demonstrate LangChain workflows for crawling data, organizing information, and producing structured analysis.&lt;/p&gt;

&lt;h3&gt;
  
  
  Activate Data-Agent and start Jupyter
&lt;/h3&gt;

&lt;p&gt;Open a new terminal and run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; ~/Downloads/DataAgent
conda activate Data-Agent
jupyter notebook --ip=&lt;span class="s1"&gt;'*'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn2tm7ac13mlijfn1c00s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn2tm7ac13mlijfn1c00s.png" alt="Data-Agent environment and Jupyter startup 1" width="570" height="87"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqckb4meswuoth8vz0k20.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqckb4meswuoth8vz0k20.png" alt="Data-Agent environment and Jupyter startup 2" width="799" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fg0mex22ve5p0ygrt4kfn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fg0mex22ve5p0ygrt4kfn.png" alt="Data-Agent environment and Jupyter startup 3" width="646" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open the Jupyter interface at &lt;strong&gt;&lt;a href="http://10.42.0.1:8888" rel="noopener noreferrer"&gt;http://10.42.0.1:8888&lt;/a&gt;&lt;/strong&gt;, using the address, port, and authentication information actually shown by your server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fazxxoqger31wxh3om42w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fazxxoqger31wxh3om42w.png" alt="Data-Agent notebook browser 1" width="800" height="366"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Environmental-news recap
&lt;/h3&gt;

&lt;p&gt;Open &lt;strong&gt;Agent_News_Recap_260828.ipynb&lt;/strong&gt;. The aggregation and chart-output cells perform retrieval and summarization, so they can take longer to execute. Once completed, the notebook outputs charts and a written summary of the main points.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh3ut4f0i79nmnbkv0bds.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh3ut4f0i79nmnbkv0bds.png" alt="Environmental news recap and charts 1" width="800" height="345"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5saccch559dxitcdyjga.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5saccch559dxitcdyjga.png" alt="Environmental news recap and charts 2" width="800" height="362"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Automated two-stage price search
&lt;/h3&gt;

&lt;p&gt;Open &lt;strong&gt;Agent_Price_List_260828.ipynb&lt;/strong&gt;. When the last cell runs, the terminal displays a message equivalent to: &lt;strong&gt;The agent is starting a two-stage crawler for precise price lookup. Please wait...&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After crawling completes, the page presents a structured list of product-price results.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnyye231ma4624ooa3kme.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnyye231ma4624ooa3kme.png" alt="Product price lookup and structured results 1" width="800" height="291"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpe2eqwara8oa3qspwncp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpe2eqwara8oa3qspwncp.png" alt="Product price lookup and structured results 2" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment and software prerequisites
&lt;/h2&gt;

&lt;p&gt;The MIC-733 used in this class was configured in advance with the required Conda environments and packages, Ollama, AI models, and other software. That preparation allows participants to begin directly with Jupyter Notebook exercises.&lt;/p&gt;

&lt;p&gt;On a new device, first install and configure Conda, Jupyter Notebook, Ollama, the required AI models, and the remaining dependencies. You also need the example notebooks and classroom project files referenced above; this article describes how to operate that prepared environment rather than providing a complete fresh-install procedure.&lt;/p&gt;

&lt;p&gt;Some images and hardware specifications in the original article reference the &lt;a href="https://www.advantech.com/zh-tw/products/2835765f-5f67-49ab-9cc3-78911042e5a6/mic-733/mod_09861425-4950-46ab-ad39-1b5522881218" rel="noopener noreferrer"&gt;Advantech MIC-733 product page&lt;/a&gt;.&lt;/p&gt;




&lt;p&gt;Translated into English from &lt;a href="https://blog.cavedu.com/2026/10/06/agx-orin-langchain/" rel="noopener noreferrer"&gt;CAVEDU's original tutorial&lt;/a&gt;, originally published October 6, 2026. This link opens CAVEDU's website outside this platform. Author and photography credit: 郭俊廷. Minor clarifications identify classroom-specific settings and prerequisites; the example commands and filenames are preserved.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>hardware</category>
      <category>iot</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Build Your First Warehouse Scene in Isaac Sim with NVIDIA SimReady Assets</title>
      <dc:creator>CAVEDU Educaion</dc:creator>
      <pubDate>Wed, 11 Nov 2026 01:00:00 +0000</pubDate>
      <link>https://dev.to/cavedu/build-your-first-warehouse-scene-in-isaac-sim-with-nvidia-simready-assets-ged</link>
      <guid>https://dev.to/cavedu/build-your-first-warehouse-scene-in-isaac-sim-with-nvidia-simready-assets-ged</guid>
      <description>&lt;p&gt;&lt;em&gt;Download two assets from Hugging Face, assemble a scene in the GUI, and verify that your USD stage reopens correctly.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Building a robotics environment can start with a small, concrete milestone: a warehouse scene that loads correctly, keeps its materials, and can be reopened later.&lt;/p&gt;

&lt;p&gt;This CAVEDU tutorial uses a warehouse rack and a cardboard box from NVIDIA's SimReady Assets dataset. You will download the two asset folders, arrange one rack and three boxes in Isaac Sim, and save the result as &lt;code&gt;warehouse_demo.usd&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Scene assembly uses Isaac Sim's graphical interface. You will use a terminal for asset downloads, but you do not need to write an Isaac Sim Python script.&lt;/p&gt;

&lt;p&gt;The result is a static scene foundation. Dynamic physics is a separate verification step.&lt;/p&gt;

&lt;h2&gt;
  
  
  What SimReady does—and what you still need to check
&lt;/h2&gt;

&lt;p&gt;A conventional 3D model may focus on geometry, appearance, and materials. Simulation workflows can also require collision geometry, mass, friction, or other properties.&lt;/p&gt;

&lt;p&gt;SimReady assets are OpenUSD assets prepared for simulation workflows, but their capabilities vary. Check each asset's profile and contents against your intended task. The label alone does not guarantee identical rigid-body, collision, sensor, or articulation settings across assets.&lt;/p&gt;

&lt;p&gt;For this exercise, the first goal is successful asset loading and scene assembly.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Prepare your environment
&lt;/h2&gt;

&lt;p&gt;Install Isaac Sim on a supported workstation and check the requirements for your exact release. The original tutorial references Isaac Sim 6.x menu names, which can vary between versions.&lt;/p&gt;

&lt;p&gt;Consult the &lt;a href="https://docs.isaacsim.omniverse.nvidia.com/6.0.1/installation/requirements.html" rel="noopener noreferrer"&gt;Isaac Sim system requirements&lt;/a&gt; and &lt;a href="https://docs.isaacsim.omniverse.nvidia.com/6.0.1/installation/install_workstation.html" rel="noopener noreferrer"&gt;workstation installation instructions&lt;/a&gt; before proceeding.&lt;/p&gt;

&lt;p&gt;Install the Hugging Face Hub package:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python -m pip install -U huggingface_hub
hf --help
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If your terminal cannot find &lt;code&gt;hf&lt;/code&gt;, reopen it and check that the package was installed in the Python environment you are using. Also check your PATH.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Download only the two asset folders
&lt;/h2&gt;

&lt;p&gt;Open the &lt;a href="https://huggingface.co/datasets/nvidia/simready-assets" rel="noopener noreferrer"&gt;NVIDIA SimReady Assets dataset&lt;/a&gt;. This example uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cardboard box: &lt;code&gt;box_corrugated_brown_b20&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Warehouse rack: &lt;code&gt;rack_large_empty_a02&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;From your chosen project directory, run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;hf download nvidia/simready-assets --repo-type dataset --include &lt;span class="s2"&gt;"box_corrugated_brown_b20/**"&lt;/span&gt; --local-dir ./simready-demo
hf download nvidia/simready-assets --repo-type dataset --include &lt;span class="s2"&gt;"rack_large_empty_a02/**"&lt;/span&gt; --local-dir ./simready-demo
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check that these main USD files exist:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;simready-demo/box_corrugated_brown_b20/simready_usd/sm_box_corrugated_brown_b20_01.usd
simready-demo/rack_large_empty_a02/simready_usd/sm_rack_large_empty_a02_01.usd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Keep the complete asset folders. The main USD files may reference textures, materials, payloads, and other dependencies. Copying only a main file can leave the scene incomplete. If the dataset changes, follow the actual downloaded structure.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Create a stage, ground plane, and lighting
&lt;/h2&gt;

&lt;p&gt;In Isaac Sim:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Choose &lt;strong&gt;File &amp;gt; New&lt;/strong&gt; to create a USD stage.&lt;/li&gt;
&lt;li&gt;If the stage does not already contain a physics scene, choose &lt;strong&gt;Create &amp;gt; Physics &amp;gt; Physics Scene&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Add a floor with &lt;strong&gt;Create &amp;gt; Physics &amp;gt; Ground Plane&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;If needed, add lighting through &lt;strong&gt;Create &amp;gt; Lights &amp;gt; Distant Light&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  4. Reference and arrange the boxes
&lt;/h2&gt;

&lt;p&gt;Choose &lt;strong&gt;File &amp;gt; Add Reference&lt;/strong&gt; and select:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;simready-demo/box_corrugated_brown_b20/simready_usd/sm_box_corrugated_brown_b20_01.usd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Confirm that the asset appears in the Stage panel and the viewport, with its materials visible. If you cannot find it in the viewport, select it in the Stage panel and press &lt;strong&gt;F&lt;/strong&gt; to frame it.&lt;/p&gt;

&lt;p&gt;Select the top-level box asset node and duplicate it twice. Use the Move Tool or Transform position fields to arrange three boxes without overlap.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Add the rack
&lt;/h2&gt;

&lt;p&gt;Use &lt;strong&gt;File &amp;gt; Add Reference&lt;/strong&gt; again and select:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;simready-demo/rack_large_empty_a02/simready_usd/sm_rack_large_empty_a02_01.usd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Move the rack behind the boxes and adjust your view so the complete scene is visible. Check the stage units and transforms if object proportions look wrong.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdxnkvbpvdnpovxpywsr5.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdxnkvbpvdnpovxpywsr5.jpg" alt="A small warehouse scene assembled in Isaac Sim" width="800" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Warehouse scene from the original CAVEDU tutorial.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Check physics before testing interactions
&lt;/h2&gt;

&lt;p&gt;Pressing Play does not guarantee that the boxes will fall or collide correctly. Before testing those behaviors, inspect:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Whether the asset supports the intended simulation profile.&lt;/li&gt;
&lt;li&gt;Whether rigid-body behavior is enabled and appropriate for the object.&lt;/li&gt;
&lt;li&gt;Whether collision geometry exists.&lt;/li&gt;
&lt;li&gt;Whether the object is configured as static or dynamic.&lt;/li&gt;
&lt;li&gt;Whether the physics scene is configured correctly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Visible geometry and collision boundaries can differ. Inspect existing settings before adding more physics components, so you do not duplicate configuration unnecessarily.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Save, reopen, and verify
&lt;/h2&gt;

&lt;p&gt;Use &lt;strong&gt;File &amp;gt; Save As&lt;/strong&gt; and save the stage to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;simready-demo/warehouse_demo.usd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then choose &lt;strong&gt;File &amp;gt; Open&lt;/strong&gt; and reopen that file.&lt;/p&gt;

&lt;p&gt;Confirm that the rack, three boxes, ground plane, and lighting remain present; materials load correctly; and there are no missing-reference errors.&lt;/p&gt;

&lt;p&gt;The stage still references external asset files. When moving the project to another computer, preserve the asset directories and valid reference paths, or use Isaac Sim's asset collection functionality to gather dependencies.&lt;/p&gt;

&lt;h2&gt;
  
  
  Troubleshooting
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Symptom&lt;/th&gt;
&lt;th&gt;First checks&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;code&gt;hf&lt;/code&gt; is not found&lt;/td&gt;
&lt;td&gt;Python environment, PATH, and a fresh terminal session&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Asset is invisible&lt;/td&gt;
&lt;td&gt;Main USD path, Stage node, and &lt;strong&gt;F&lt;/strong&gt; to frame selection&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Materials are missing&lt;/td&gt;
&lt;td&gt;Complete asset folders, textures, and payloads&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Scale looks wrong&lt;/td&gt;
&lt;td&gt;Stage units and Transform scale&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Assets disappear after reopening&lt;/td&gt;
&lt;td&gt;Reference paths and external asset locations&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;No gravity or collisions&lt;/td&gt;
&lt;td&gt;Physics Scene, rigid bodies, collision geometry, static settings, and asset profile&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Where to go next
&lt;/h2&gt;

&lt;p&gt;This scene can become the starting point for a supported robot arm and pick-and-place task, an AMR navigation environment, or a synthetic-data workflow using Isaac Sim Replicator. Those extensions require their own robot, controller, sensor, and physics setup.&lt;/p&gt;

&lt;p&gt;For a first workshop or classroom exercise, keep the acceptance criteria concrete: the scene loads, its dependencies are intact, and it reopens successfully. That gives learners a reusable foundation for the next simulation task.&lt;/p&gt;




&lt;p&gt;Adapted into English from our &lt;a href="https://blog.cavedu.com/2026/11/09/simready-central-isaac-sim-tutorial/?utm_source=medium&amp;amp;utm_medium=referral&amp;amp;utm_campaign=simready_central_en" rel="noopener noreferrer"&gt;original illustrated CAVEDU tutorial in Traditional Chinese&lt;/a&gt;. This link opens the CAVEDU website outside this platform.&lt;/p&gt;

&lt;p&gt;For robotics simulation workshops or training inquiries, &lt;a href="https://blog.cavedu.com/contact/?utm_source=medium&amp;amp;utm_medium=referral&amp;amp;utm_campaign=simready_central_en" rel="noopener noreferrer"&gt;contact the CAVEDU team&lt;/a&gt;. This link opens our company website outside this platform.&lt;/p&gt;

&lt;h3&gt;
  
  
  References
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://huggingface.co/datasets/nvidia/simready-assets" rel="noopener noreferrer"&gt;NVIDIA SimReady Assets&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://huggingface.co/blog/nvidia/simready-central-assets-robotics-ai-factories" rel="noopener noreferrer"&gt;NVIDIA's introduction to SimReady Central&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://huggingface.co/spaces/nvidia/simready-central" rel="noopener noreferrer"&gt;SimReady Central asset search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.isaacsim.omniverse.nvidia.com/6.0.1/omniverse_usd/intro_to_usd.html" rel="noopener noreferrer"&gt;Isaac Sim: Working with USD&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://huggingface.co/docs/huggingface_hub/en/guides/cli" rel="noopener noreferrer"&gt;Hugging Face CLI documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>robotics</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>NVIDIA Jetson Agent Skills Tutorial: Installation and Hands-on Use with Cursor</title>
      <dc:creator>CAVEDU Educaion</dc:creator>
      <pubDate>Mon, 09 Nov 2026 12:28:33 +0000</pubDate>
      <link>https://dev.to/cavedu/nvidia-jetson-agent-skills-tutorial-installation-and-hands-on-use-with-cursor-3ajp</link>
      <guid>https://dev.to/cavedu/nvidia-jetson-agent-skills-tutorial-installation-and-hands-on-use-with-cursor-3ajp</guid>
      <description>&lt;p&gt;When developing AI on Jetson, a coding agent can help read device information, organize diagnostic results, prepare packages, and run tests. However, the right approach depends on the Jetson model, JetPack/L4T version, available memory, and runtime environment. Jetson Agent Skills organizes NVIDIA's Jetson workflows into agent-readable skills and helper scripts, allowing recommendations to reflect the current device rather than relying only on generic commands.&lt;/p&gt;

&lt;p&gt;This tutorial brings together Jetson AI Lab's &lt;a href="https://www.jetson-ai-lab.com/tutorials/jetson-agent-skills/" rel="noopener noreferrer"&gt;Jetson Agent Skills guide&lt;/a&gt; and &lt;a href="https://www.jetson-ai-lab.com/tutorials/ai-assisted-development-on-jetson/" rel="noopener noreferrer"&gt;AI-assisted development on NVIDIA Jetson tutorial&lt;/a&gt;. We first explain what the skills do, then connect to Jetson using Cursor Remote-SSH, install Device Skills, and get started with diagnostic and planning prompts.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Are Jetson Agent Skills?
&lt;/h2&gt;

&lt;p&gt;Agent Skills provide workflows and tool instructions for coding agents. &lt;a href="https://www.jetson-ai-lab.com/tutorials/jetson-agent-skills/" rel="noopener noreferrer"&gt;Jetson Agent Skills&lt;/a&gt; can help inspect the device model, system version, memory, power configuration, and service status, then support package selection, inference deployment, or performance testing based on the device's conditions.&lt;/p&gt;

&lt;p&gt;They do not replace the coding agent, NVIDIA documentation, or developer judgment. Always confirm the target device and check command results. This article focuses on Device Skills for a Jetson that is already running.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.jetson-ai-lab.com%2Fimages%2Fhero%2Fjetson-family-line_50pcnt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.jetson-ai-lab.com%2Fimages%2Fhero%2Fjetson-family-line_50pcnt.png" alt="The Jetson device family shown on the Jetson AI Lab website" width="800" height="234"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Jetson device family illustration from Jetson AI Lab.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Understand Device Skills vs. BSP Skills First
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://github.com/NVIDIA-AI-IOT/jetson-device-skills" rel="noopener noreferrer"&gt;Jetson Device Skills&lt;/a&gt;:&lt;/strong&gt; For a running Jetson. These support application development, system diagnostics, memory checks, package selection, and model inference. This is the collection we install here.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://github.com/NVIDIA-AI-IOT/jetson-bsp-skills" rel="noopener noreferrer"&gt;Jetson BSP Skills&lt;/a&gt;:&lt;/strong&gt; For host-workstation platform tasks involving board support packages, custom carrier boards, pinmux, PCIe, camera configuration, building, and flashing. You do not need to install them first for ordinary application development.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you simply want to run a model or inspect the system on an Orin or Thor, start with Device Skills. When modifying low-level hardware settings or building a custom platform, consult the &lt;a href="https://github.com/NVIDIA-AI-IOT/jetson-bsp-skills" rel="noopener noreferrer"&gt;Jetson BSP Skills project&lt;/a&gt; and the relevant hardware documentation.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Recommended Workflow for Agent-assisted Development
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Inspect:&lt;/strong&gt; Read the Jetson model, JetPack/L4T version, available memory, power mode, and relevant services to establish its current state.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Plan:&lt;/strong&gt; Compare packages, models, or configuration options against the device and task requirements. List the proposed commands and their possible effects.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review, then execute:&lt;/strong&gt; Understand operations such as package installation, disabling services, changing power settings, and rebooting before deciding whether to run them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verify:&lt;/strong&gt; Use actual outputs, memory measurements, or performance tests to confirm that changes work. Do not assume success simply because the agent says it is done.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Jetson AI Lab's remote-development demonstration uses Codex with a Jetson Orin Nano, covering connection, skill installation, and device inspection. This article instead provides a Cursor example. Configuration interfaces and skill installation paths can differ between coding agents; check the version you are using.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.jetson-ai-lab.com/tutorials/ai-assisted-development-on-jetson/" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fchlvbrfutnwoamiww8wn.jpg" alt="Jetson AI Lab's Codex remote-development tutorial" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Cover image from Jetson AI Lab's Codex remote-development tutorial. The following steps demonstrate Device Skills with Cursor. Source: &lt;a href="https://www.jetson-ai-lab.com/tutorials/ai-assisted-development-on-jetson/" rel="noopener noreferrer"&gt;AI-assisted development on NVIDIA Jetson&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Before You Start: Prepare Jetson and Your Development Environment
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;An NVIDIA Jetson device, such as an Orin-series device or Jetson Thor, that has completed initial setup, is running, and is connected to a network.&lt;/li&gt;
&lt;li&gt;A Windows, macOS, or Linux development computer that can connect to Jetson over SSH.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.cursor.com/" rel="noopener noreferrer"&gt;Cursor&lt;/a&gt; installed, with Remote-SSH available. The commands in this article run in the remote terminal connected to Jetson.&lt;/li&gt;
&lt;li&gt;Access from Jetson to GitHub to download the project. If you choose individual skill installation through the NVIDIA Agent Skills catalog, you also need Node.js and npm to provide &lt;code&gt;npx&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 1: Connect to Jetson with Remote-SSH
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open Cursor on your development computer. Press &lt;strong&gt;Ctrl + Shift + P&lt;/strong&gt;, or &lt;strong&gt;Cmd + Shift + P&lt;/strong&gt; on macOS, to open the command palette.&lt;/li&gt;
&lt;li&gt;Enter &lt;strong&gt;Remote-SSH: Connect to Host...&lt;/strong&gt; and select that command.&lt;/li&gt;
&lt;li&gt;Enter Jetson's SSH address, for example &lt;code&gt;ssh jetson@192.168.1.42&lt;/code&gt;. Replace the username and IP address with your own.&lt;/li&gt;
&lt;li&gt;On the first connection, select Linux, verify the host key as prompted, and sign in. If a host key is unfamiliar or has changed, confirm the device's identity before continuing.&lt;/li&gt;
&lt;li&gt;After connecting, confirm that Cursor shows the SSH host and open the integrated terminal. Before running the remaining commands, make sure that the terminal is on Jetson rather than your development computer.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fym6ek17aj34gjwt3c750.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fym6ek17aj34gjwt3c750.png" alt="A laptop connecting to Jetson over SSH" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Conceptual illustration of Cursor Remote-SSH connecting to Jetson; not an actual software screenshot.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Choose an Installation Method
&lt;/h2&gt;

&lt;p&gt;Jetson AI Lab provides two entry points: select individual skills from the &lt;a href="https://docs.nvidia.com/skills" rel="noopener noreferrer"&gt;NVIDIA Agent Skills catalog&lt;/a&gt;, or install the full collection from the &lt;a href="https://github.com/NVIDIA-AI-IOT/jetson-device-skills" rel="noopener noreferrer"&gt;NVIDIA Jetson Device Skills project&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Install the skills in the environment where the agent will use them. For this Remote-SSH example, that means Jetson's remote terminal.&lt;/p&gt;

&lt;h3&gt;
  
  
  Option A: Install an Individual Skill from the NVIDIA Agent Skills Catalog
&lt;/h3&gt;

&lt;p&gt;To start with read-only device diagnostics, run this command in the Jetson terminal to install &lt;code&gt;jetson-diagnostic&lt;/code&gt; for Cursor:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx skills@latest add nvidia/skills --skill jetson-diagnostic --agent cursor --yes
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you are unsure which skill to use, browse the NVIDIA catalog first. The CLI provides interactive options for the installation target:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx skills@latest add nvidia/skills --list
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Installing a single skill is a useful way to get started. For memory auditing, headless mode, package selection, or inference workflows, check the &lt;a href="https://github.com/nvidia/skills" rel="noopener noreferrer"&gt;NVIDIA Agent Skills catalog&lt;/a&gt; for current skill names.&lt;/p&gt;

&lt;h3&gt;
  
  
  Option B: Install the Full Jetson Device Skills Collection
&lt;/h3&gt;

&lt;p&gt;Run the following commands in Jetson's remote terminal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/NVIDIA-AI-IOT/jetson-device-skills.git
&lt;span class="nb"&gt;cd&lt;/span&gt; jetson-device-skills
./install.sh --targets cursor
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The installation script places the skills in a directory Cursor can read. To use the script's default installation targets across supported agents, run &lt;code&gt;./install.sh&lt;/code&gt; without arguments. To install for selected agents, consult the latest instructions in the &lt;a href="https://github.com/NVIDIA-AI-IOT/jetson-device-skills" rel="noopener noreferrer"&gt;official Jetson Device Skills project&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;After installation, restart your Cursor Agent session and confirm that the skills are available in a location the agent can read.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv6o3cht91gj7e3hqpvmd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv6o3cht91gj7e3hqpvmd.png" alt="Installing Jetson Device Skills in an agent-readable directory" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Conceptual illustration of installing skill files in an agent-readable location on Jetson.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Run Read-only Diagnostics Before Planning Changes
&lt;/h2&gt;

&lt;p&gt;Open AI Chat in Cursor's sidebar. A common shortcut is &lt;strong&gt;Ctrl + L&lt;/strong&gt;, or &lt;strong&gt;Cmd + L&lt;/strong&gt; on macOS. First ask the agent to inspect the device without changing the system:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Read this Jetson's model, JetPack/L4T version, available memory, GPU utilization, power mode, and relevant services. List the inspection commands you use and their results, and identify your data sources. For this round, perform read-only checks only. Do not install packages or change system settings.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkt4b4pn79z1ljazxtwa5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkt4b4pn79z1ljazxtwa5.png" alt="An AI agent organizing Jetson diagnostic information" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Conceptual illustration of an agent summarizing device diagnostics; not an actual operation screenshot.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;After confirming the device information, ask for a plan that lists commands, trade-offs, and expected effects before execution:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Based on the device model, JetPack/L4T version, memory, and service status you just inspected, propose feasible options for switching to headless mode or deploying an LLM/VLM. First explain your reasoning, the required commands, possible effects, and how to revert the changes. Do not disable services, install packages, change settings, or reboot until I confirm.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Device support and actual performance vary with the model, JetPack/L4T version, model size, quantization method, and runtime environment. For inference options such as vLLM or llama.cpp, check compatibility first, then measure memory usage and performance on the target Jetson. Avoid copying another model's configuration without checking it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Takeaways
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Start with Jetson Device Skills for ordinary application development. BSP Skills cover host-side tasks such as custom platforms and flashing.&lt;/li&gt;
&lt;li&gt;Install an individual skill through the NVIDIA Agent Skills catalog, or install the complete Device Skills collection from the official project.&lt;/li&gt;
&lt;li&gt;When using Remote-SSH, make sure the terminal and skill installation location correspond to the intended Jetson and agent.&lt;/li&gt;
&lt;li&gt;Follow the sequence &lt;strong&gt;inspect, plan, review and execute, then verify&lt;/strong&gt;. Understand the effects before making system changes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Jetson Agent Skills brings platform knowledge into a coding agent's workflow, helping developers experiment based on the actual device state. Always verify results using real Jetson outputs and tests, and let the developer decide whether to adopt a change.&lt;/p&gt;




&lt;p&gt;English translation of &lt;a href="https://blog.cavedu.com/2026/11/09/nvidia-jetson-agent-skills-tutorial-cursor/" rel="noopener noreferrer"&gt;CAVEDU's original Traditional Chinese article&lt;/a&gt;, published November 9, 2026. The link opens the CAVEDU website outside this platform. Original technical commands, reference links, and image credits are retained.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
