import{s as Tl,n as Jl,o as bl}from"../chunks/scheduler.eb244325.js";import{S as wl,i as Cl,e as U,s as M,c as n,h as hl,a as d,d as l,b as s,f as jl,g as i,j as m,k as It,l as cl,m as a,n as p,t as o,o as y,p as r}from"../chunks/index.3fe63ad3.js";import{C as fl}from"../chunks/CopyLLMTxtMenu.88bde5f2.js";import{C as T}from"../chunks/CodeBlock.934d290d.js";import{H as j,E as ul}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.341974a5.js";function Al(We){let J,Rt,$t,vt,h,St,c,Lt,f,Qt,u,Ve='<li><a href="https://github.com/TheRobotStudio/HOPEJr" rel="nofollow">Hardware Setup</a></li>',Gt,A,Zt,$,Xe='Follow the <a href="https://github.com/huggingface/lerobot#installation" rel="nofollow">installation instructions</a> to install LeRobot.',Nt,g,Be="Install LeRobot with HopeJR dependencies:",xt,I,_t,R,Et,v,ke="Before starting calibration and operation, you need to identify the USB ports for each HopeJR component. Run this script to find the USB ports for the arm, hand, glove, and exoskeleton:",Wt,S,Vt,L,ze="This will display the available USB ports and their associated devices. Make note of the port paths (e.g., <code>/dev/tty.usbmodem58760433331</code>, <code>/dev/tty.usbmodem11301</code>) as you’ll need to specify them in the <code>--robot.port</code> and <code>--teleop.port</code> parameters when recording data, replaying episodes, or running teleoperation scripts.",Xt,Q,Bt,G,He="Before performing teleoperation, HopeJR’s limbs need to be calibrated. Calibration files will be saved in <code>~/.cache/huggingface/lerobot/calibration</code>",kt,Z,zt,N,Ht,x,De="When running the calibration script, a calibration GUI will pop up. Finger joints are named as follows:",Dt,_,Ye="<strong>Thumb</strong>:",Yt,E,Fe="<li><strong>CMC</strong>: base joint connecting thumb to hand</li> <li><strong>MCP</strong>: knuckle joint</li> <li><strong>PIP</strong>: first finger joint</li> <li><strong>DIP</strong> : fingertip joint</li>",Ft,W,qe="<strong>Index, Middle, Ring, and Pinky fingers</strong>:",qt,V,Pe="<li><strong>Radial flexor</strong>: Moves base of finger towards the thumb</li> <li><strong>Ulnar flexor</strong>: Moves base of finger towards the pinky</li> <li><strong>PIP/DIP</strong>: Flexes the distal and proximal phalanx of the finger</li>",Pt,X,Oe=`Each one of these will need to be calibrated individually via the GUI.
Note that ulnar and radial flexors should have ranges of the same size (but with different offsets) in order to get symmetric movement.`,Ot,b,Ke='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/lerobot/calibration_gui_1.png" alt="Setting boundaries in the hand calibration GUI" title="Setting boundaries in the hand calibration GUI" width="100%"/>',Kt,B,tl="Use the calibration interface to set the range boundaries for each joint as shown above.",te,w,el='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/lerobot/calibration_gui_2.png" alt="Saving calibration values" title="Saving calibration values" width="100%"/>',ee,k,ll="Once you have set the appropriate boundaries for all joints, click “Save” to save the calibration values to the motors.",le,z,ae,H,Me,D,al="Move each finger through its full range of motion, starting from the thumb.",se,Y,ne,F,Ml="Continue with each finger:",ie,q,pe,P,sl="Once calibration is complete, the system will save the calibration to <code>/Users/your_username/.cache/huggingface/lerobot/calibration/teleoperators/homunculus_glove/red.json</code>",oe,O,ye,K,re,tt,nl="This will open a calibration GUI where you can set the range limits for each motor. The arm motions are organized as follows:",Ue,et,il="<li><strong>Shoulder</strong>: pitch, yaw, and roll</li> <li><strong>Elbow</strong>: flex</li> <li><strong>Wrist</strong>: pitch, yaw, and roll</li>",de,C,pl='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/lerobot/calibration_gui_2.png" alt="Setting boundaries in the arm calibration GUI" title="Setting boundaries in the arm calibration GUI" width="100%"/>',me,lt,ol="Use the calibration interface to set the range boundaries for each joint. Move each joint through its full range of motion and adjust the minimum and maximum values accordingly. Once you have set the appropriate boundaries for all joints, save the calibration.",je,at,Te,Mt,Je,st,yl="The exoskeleton allows one to control the robot arm. During calibration, you’ll be prompted to move all joints through their full range of motion:",be,nt,we,it,Ce,pt,rl="Due to global variable conflicts in the Feetech middleware, teleoperation for arm and hand must run in separate shell sessions:",he,ot,ce,yt,fe,rt,ue,Ut,Ae,dt,$e,mt,Ul="Record, Replay and Train with Hope-JR is still experimental.",ge,jt,Ie,Tt,dl='This step records the dataset, which can be seen as an example <a href="https://huggingface.co/datasets/nepyope/hand_record_test_with_video_data/settings" rel="nofollow">here</a>.',Re,Jt,ve,bt,Se,wt,Le,Ct,Qe,ht,Ge,ct,Ze,ft,ml='This training run can be viewed as an example <a href="https://wandb.ai/tino/lerobot/runs/rp0k8zvw?nw=nwusertino" rel="nofollow">here</a>.',Ne,ut,xe,At,_e,gt,Ee;return h=new fl({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),c=new j({props:{title:"HopeJR",local:"hopejr",headingTag:"h1"}}),f=new j({props:{title:"Prerequisites",local:"prerequisites",headingTag:"h2"}}),A=new j({props:{title:"Install LeRobot",local:"install-lerobot",headingTag:"h2"}}),I=new T({props:{code:"cGlwJTIwaW5zdGFsbCUyMC1lJTIwJTIyLiU1QmhvcGVqciU1RCUyMg==",highlighted:'pip install -e <span class="hljs-string">&quot;.[hopejr]&quot;</span>',wrap:!1}}),R=new j({props:{title:"Device Configuration",local:"device-configuration",headingTag:"h2"}}),S=new T({props:{code:"bGVyb2JvdC1maW5kLXBvcnQ=",highlighted:"lerobot-find-port",wrap:!1}}),Q=new j({props:{title:"Step 1: Calibration",local:"step-1-calibration",headingTag:"h2"}}),Z=new j({props:{title:"1.1 Calibrate Robot Hand",local:"11-calibrate-robot-hand",headingTag:"h3"}}),N=new T({props:{code:"bGVyb2JvdC1jYWxpYnJhdGUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnR5cGUlM0Rob3BlX2pyX2hhbmQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnBvcnQlM0QlMkZkZXYlMkZ0dHkudXNibW9kZW01ODc2MDQzMjI4MSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QuaWQlM0RibHVlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1yb2JvdC5zaWRlJTNEcmlnaHQ=",highlighted:`lerobot-calibrate \\
    --robot.type=hope_jr_hand \\
    --robot.port=/dev/tty.usbmodem58760432281 \\
    --robot.id=blue \\
    --robot.side=right`,wrap:!1}}),z=new j({props:{title:"1.2 Calibrate Teleoperator Glove",local:"12-calibrate-teleoperator-glove",headingTag:"h3"}}),H=new T({props:{code:"bGVyb2JvdC1jYWxpYnJhdGUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRlbGVvcC50eXBlJTNEaG9tdW5jdWx1c19nbG92ZSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tdGVsZW9wLnBvcnQlM0QlMkZkZXYlMkZ0dHkudXNibW9kZW0xMTIwMSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tdGVsZW9wLmlkJTNEcmVkJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3Auc2lkZSUzRHJpZ2h0",highlighted:`lerobot-calibrate \\
    --teleop.type=homunculus_glove \\
    --teleop.port=/dev/tty.usbmodem11201 \\
    --teleop.id=red \\
    --teleop.side=right`,wrap:!1}}),Y=new T({props:{code:"TW92ZSUyMHRodW1iJTIwdGhyb3VnaCUyMGl0cyUyMGVudGlyZSUyMHJhbmdlJTIwb2YlMjBtb3Rpb24uJTBBUmVjb3JkaW5nJTIwcG9zaXRpb25zLiUyMFByZXNzJTIwRU5URVIlMjB0byUyMHN0b3AuLi4lMEElMEEtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBTkFNRSUyMCUyMCUyMCUyMCUyMCUyMCU3QyUyMCUyMCUyMCUyME1JTiUyMCU3QyUyMCUyMCUyMCUyMFBPUyUyMCU3QyUyMCUyMCUyMCUyME1BWCUwQXRodW1iX2NtYyUyMCU3QyUyMCUyMCUyMDE3OTAlMjAlN0MlMjAlMjAlMjAxODMxJTIwJTdDJTIwJTIwJTIwMTg1MyUwQXRodW1iX21jcCUyMCU3QyUyMCUyMCUyMDE0OTclMjAlN0MlMjAlMjAlMjAxNTE0JTIwJTdDJTIwJTIwJTIwMTUyOCUwQXRodW1iX3BpcCUyMCU3QyUyMCUyMCUyMDE0NjYlMjAlN0MlMjAlMjAlMjAxNDk2JTIwJTdDJTIwJTIwJTIwMTUxNSUwQXRodW1iX2RpcCUyMCU3QyUyMCUyMCUyMDE0NjMlMjAlN0MlMjAlMjAlMjAxNDg0JTIwJTdDJTIwJTIwJTIwMTUxNA==",highlighted:`Move thumb through its entire range of motion.
Recording positions. Press ENTER to stop...

-------------------------------------------
NAME      |    <span class="hljs-type">MIN</span> |    <span class="hljs-type">POS</span> |    <span class="hljs-type">MAX</span>
thumb_cmc |   <span class="hljs-type">1790</span> |   <span class="hljs-type">1831</span> |   <span class="hljs-type">1853</span>
thumb_mcp |   <span class="hljs-type">1497</span> |   <span class="hljs-type">1514</span> |   <span class="hljs-type">1528</span>
thumb_pip |   <span class="hljs-type">1466</span> |   <span class="hljs-type">1496</span> |   <span class="hljs-type">1515</span>
thumb_dip |   <span class="hljs-type">1463</span> |   <span class="hljs-type">1484</span> |   <span class="hljs-type">1514</span>`,wrap:!1}}),q=new T({props:{code:"TW92ZSUyMG1pZGRsZSUyMHRocm91Z2glMjBpdHMlMjBlbnRpcmUlMjByYW5nZSUyMG9mJTIwbW90aW9uLiUwQVJlY29yZGluZyUyMHBvc2l0aW9ucy4lMjBQcmVzcyUyMEVOVEVSJTIwdG8lMjBzdG9wLi4uJTBBJTBBLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSUwQU5BTUUlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0MlMjAlMjAlMjAlMjBNSU4lMjAlN0MlMjAlMjAlMjAlMjBQT1MlMjAlN0MlMjAlMjAlMjAlMjBNQVglMEFtaWRkbGVfbWNwX2FiZHVjdGlvbiUyMCU3QyUyMCUyMCUyMDE1OTglMjAlN0MlMjAlMjAlMjAxNzE4JTIwJTdDJTIwJTIwJTIwMTgyMCUwQW1pZGRsZV9tY3BfZmxleGlvbiUyMCUyMCUyMCU3QyUyMCUyMCUyMDE1MTIlMjAlN0MlMjAlMjAlMjAxNjU4JTIwJTdDJTIwJTIwJTIwMjEzNiUwQW1pZGRsZV9kaXAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0MlMjAlMjAlMjAxNDg0JTIwJTdDJTIwJTIwJTIwMTUwMCUyMCU3QyUyMCUyMCUyMDE1NDc=",highlighted:`Move middle through its entire range of motion.
Recording positions. Press ENTER to stop...

-------------------------------------------
NAME                 |    <span class="hljs-type">MIN</span> |    <span class="hljs-type">POS</span> |    <span class="hljs-type">MAX</span>
middle_mcp_abduction |   <span class="hljs-type">1598</span> |   <span class="hljs-type">1718</span> |   <span class="hljs-type">1820</span>
middle_mcp_flexion   |   <span class="hljs-type">1512</span> |   <span class="hljs-type">1658</span> |   <span class="hljs-type">2136</span>
middle_dip           |   <span class="hljs-type">1484</span> |   <span class="hljs-type">1500</span> |   <span class="hljs-type">1547</span>`,wrap:!1}}),O=new j({props:{title:"1.3 Calibrate Robot Arm",local:"13-calibrate-robot-arm",headingTag:"h3"}}),K=new T({props:{code:"bGVyb2JvdC1jYWxpYnJhdGUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnR5cGUlM0Rob3BlX2pyX2FybSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QucG9ydCUzRCUyRmRldiUyRnR0eS51c2JzZXJpYWwtMTExMCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QuaWQlM0R3aGl0ZQ==",highlighted:`lerobot-calibrate \\
    --robot.type=hope_jr_arm \\
    --robot.port=/dev/tty.usbserial-1110 \\
    --robot.id=white`,wrap:!1}}),at=new j({props:{title:"1.4 Calibrate Teleoperator Exoskeleton",local:"14-calibrate-teleoperator-exoskeleton",headingTag:"h3"}}),Mt=new T({props:{code:"bGVyb2JvdC1jYWxpYnJhdGUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRlbGVvcC50eXBlJTNEaG9tdW5jdWx1c19hcm0lMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRlbGVvcC5wb3J0JTNEJTJGZGV2JTJGdHR5LnVzYm1vZGVtMTEyMDElMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRlbGVvcC5pZCUzRGJsYWNr",highlighted:`lerobot-calibrate \\
    --teleop.type=homunculus_arm \\
    --teleop.port=/dev/tty.usbmodem11201 \\
    --teleop.id=black`,wrap:!1}}),nt=new T({props:{code:"TW92ZSUyMGFsbCUyMGpvaW50cyUyMHRocm91Z2glMjB0aGVpciUyMGVudGlyZSUyMHJhbmdlJTIwb2YlMjBtb3Rpb24uJTBBUmVjb3JkaW5nJTIwcG9zaXRpb25zLiUyMFByZXNzJTIwRU5URVIlMjB0byUyMHN0b3AuLi4lMEElMEEtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSUwQU5BTUUlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0MlMjAlMjAlMjAlMjBNSU4lMjAlN0MlMjAlMjAlMjAlMjBQT1MlMjAlN0MlMjAlMjAlMjAlMjBNQVglMEFzaG91bGRlcl9waXRjaCUyMCUyMCU3QyUyMCUyMCUyMCUyMDU4NiUyMCU3QyUyMCUyMCUyMCUyMDczNiUyMCU3QyUyMCUyMCUyMCUyMDg5NSUwQXNob3VsZGVyX3lhdyUyMCUyMCUyMCUyMCU3QyUyMCUyMCUyMDEyNTclMjAlN0MlMjAlMjAlMjAxMzc0JTIwJTdDJTIwJTIwJTIwMTM5MCUwQXNob3VsZGVyX3JvbGwlMjAlMjAlMjAlN0MlMjAlMjAlMjAlMjA0NDklMjAlN0MlMjAlMjAlMjAxMDM0JTIwJTdDJTIwJTIwJTIwMjU2NCUwQWVsYm93X2ZsZXglMjAlMjAlMjAlMjAlMjAlMjAlN0MlMjAlMjAlMjAzMDIzJTIwJTdDJTIwJTIwJTIwMzExNyUyMCU3QyUyMCUyMCUyMDMxMzQlMEF3cmlzdF9yb2xsJTIwJTIwJTIwJTIwJTIwJTIwJTdDJTIwJTIwJTIwMzA3MyUyMCU3QyUyMCUyMCUyMDMwOTYlMjAlN0MlMjAlMjAlMjAzMTQ3JTBBd3Jpc3RfeWF3JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdDJTIwJTIwJTIwMjE0MyUyMCU3QyUyMCUyMCUyMDIxNzElMjAlN0MlMjAlMjAlMjAyMTg1JTBBd3Jpc3RfcGl0Y2glMjAlMjAlMjAlMjAlMjAlN0MlMjAlMjAlMjAxOTc1JTIwJTdDJTIwJTIwJTIwMTk5MyUyMCU3QyUyMCUyMCUyMDIwNzQlMEFDYWxpYnJhdGlvbiUyMHNhdmVkJTIwdG8lMjAlMkZVc2VycyUyRnlvdXJfdXNlcm5hbWUlMkYuY2FjaGUlMkZodWdnaW5nZmFjZSUyRmxlcm9ib3QlMkZjYWxpYnJhdGlvbiUyRnRlbGVvcGVyYXRvcnMlMkZob211bmN1bHVzX2FybSUyRmJsYWNrLmpzb24=",highlighted:`Move all joints through their entire range of motion.
Recording positions. Press ENTER to stop...

-------------------------------------------
-------------------------------------------
NAME            |    <span class="hljs-type">MIN</span> |    <span class="hljs-type">POS</span> |    <span class="hljs-type">MAX</span>
shoulder_pitch  |    <span class="hljs-type">586</span> |    <span class="hljs-type">736</span> |    <span class="hljs-type">895</span>
shoulder_yaw    |   <span class="hljs-type">1257</span> |   <span class="hljs-type">1374</span> |   <span class="hljs-type">1390</span>
shoulder_roll   |    <span class="hljs-type">449</span> |   <span class="hljs-type">1034</span> |   <span class="hljs-type">2564</span>
elbow_flex      |   <span class="hljs-type">3023</span> |   <span class="hljs-type">3117</span> |   <span class="hljs-type">3134</span>
wrist_roll      |   <span class="hljs-type">3073</span> |   <span class="hljs-type">3096</span> |   <span class="hljs-type">3147</span>
wrist_yaw       |   <span class="hljs-type">2143</span> |   <span class="hljs-type">2171</span> |   <span class="hljs-type">2185</span>
wrist_pitch     |   <span class="hljs-type">1975</span> |   <span class="hljs-type">1993</span> |   <span class="hljs-type">2074</span>
Calibration saved to /Users/your_username/.cache/huggingface/lerobot/calibration/teleoperators/homunculus_arm/black.json`,wrap:!1}}),it=new j({props:{title:"Step 2: Teleoperation",local:"step-2-teleoperation",headingTag:"h2"}}),ot=new j({props:{title:"Hand",local:"hand",headingTag:"h3"}}),yt=new T({props:{code:"bGVyb2JvdC10ZWxlb3BlcmF0ZSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QudHlwZSUzRGhvcGVfanJfaGFuZCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QucG9ydCUzRCUyRmRldiUyRnR0eS51c2Jtb2RlbTU4NzYwNDMyMjgxJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1yb2JvdC5pZCUzRGJsdWUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnNpZGUlM0RyaWdodCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tdGVsZW9wLnR5cGUlM0Rob211bmN1bHVzX2dsb3ZlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3AucG9ydCUzRCUyRmRldiUyRnR0eS51c2Jtb2RlbTExMjAxJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3AuaWQlM0RyZWQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRlbGVvcC5zaWRlJTNEcmlnaHQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRpc3BsYXlfZGF0YSUzRHRydWUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWZwcyUzRDMw",highlighted:`lerobot-teleoperate \\
    --robot.type=hope_jr_hand \\
    --robot.port=/dev/tty.usbmodem58760432281 \\
    --robot.id=blue \\
    --robot.side=right \\
    --teleop.type=homunculus_glove \\
    --teleop.port=/dev/tty.usbmodem11201 \\
    --teleop.id=red \\
    --teleop.side=right \\
    --display_data=<span class="hljs-literal">true</span> \\
    --fps=30`,wrap:!1}}),rt=new j({props:{title:"Arm",local:"arm",headingTag:"h3"}}),Ut=new T({props:{code:"bGVyb2JvdC10ZWxlb3BlcmF0ZSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QudHlwZSUzRGhvcGVfanJfYXJtJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1yb2JvdC5wb3J0JTNEJTJGZGV2JTJGdHR5LnVzYnNlcmlhbC0xMTEwJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1yb2JvdC5pZCUzRHdoaXRlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3AudHlwZSUzRGhvbXVuY3VsdXNfYXJtJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3AucG9ydCUzRCUyRmRldiUyRnR0eS51c2Jtb2RlbTExMjAxJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3AuaWQlM0RibGFjayUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGlzcGxheV9kYXRhJTNEdHJ1ZSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZnBzJTNEMzA=",highlighted:`lerobot-teleoperate \\
    --robot.type=hope_jr_arm \\
    --robot.port=/dev/tty.usbserial-1110 \\
    --robot.id=white \\
    --teleop.type=homunculus_arm \\
    --teleop.port=/dev/tty.usbmodem11201 \\
    --teleop.id=black \\
    --display_data=<span class="hljs-literal">true</span> \\
    --fps=30`,wrap:!1}}),dt=new j({props:{title:"Step 3: Record, Replay, Train",local:"step-3-record-replay-train",headingTag:"h2"}}),jt=new j({props:{title:"Record",local:"record",headingTag:"h3"}}),Jt=new T({props:{code:"bGVyb2JvdC1yZWNvcmQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnR5cGUlM0Rob3BlX2pyX2hhbmQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnBvcnQlM0QlMkZkZXYlMkZ0dHkudXNibW9kZW01ODc2MDQzMjI4MSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QuaWQlM0RyaWdodCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3Quc2lkZSUzRHJpZ2h0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1yb2JvdC5jYW1lcmFzJTNEJyU3QiUyMm1haW4lMjIlM0ElMjAlN0IlMjJ0eXBlJTIyJTNBJTIwJTIyb3BlbmN2JTIyJTJDJTIwJTIyaW5kZXhfb3JfcGF0aCUyMiUzQSUyMDAlMkMlMjAlMjJ3aWR0aCUyMiUzQSUyMDY0MCUyQyUyMCUyMmhlaWdodCUyMiUzQSUyMDQ4MCUyQyUyMCUyMmZwcyUyMiUzQSUyMDMwJTdEJTdEJyUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tdGVsZW9wLnR5cGUlM0Rob211bmN1bHVzX2dsb3ZlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3AucG9ydCUzRCUyRmRldiUyRnR0eS51c2Jtb2RlbTEyMDElMjAlNUMlMEElMjAlMjAlMjAlMjAtLXRlbGVvcC5pZCUzRHJpZ2h0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS10ZWxlb3Auc2lkZSUzRHJpZ2h0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0LnJlcG9faWQlM0QlM0NVU0VSJTNFJTJGaGFuZF9yZWNvcmRfdGVzdF93aXRoX3ZpZGVvX2RhdGElMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXQuc2luZ2xlX3Rhc2slM0QlMjJIYW5kJTIwcmVjb3JkaW5nJTIwdGVzdCUyMHdpdGglMjB2aWRlbyUyMGRhdGElMjIlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXQubnVtX2VwaXNvZGVzJTNEMSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldC5lcGlzb2RlX3RpbWVfcyUzRDUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXQucHVzaF90b19odWIlM0R0cnVlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0LnByaXZhdGUlM0R0cnVlJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0LnN0cmVhbWluZ19lbmNvZGluZyUzRHRydWUlMjAlNUMlMEElMjAlMjAlMjAlMjAtLWRhdGFzZXQuZW5jb2Rlcl90aHJlYWRzJTNEMiUyMCU1QyUwQSUyMCUyMCUyMCUyMCUyMyUyMC0tZGF0YXNldC52Y29kZWMlM0RhdXRvJTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kaXNwbGF5X2RhdGElM0R0cnVl",highlighted:`lerobot-record \\
    --robot.type=hope_jr_hand \\
    --robot.port=/dev/tty.usbmodem58760432281 \\
    --robot.id=right \\
    --robot.side=right \\
    --robot.cameras=<span class="hljs-string">&#x27;{&quot;main&quot;: {&quot;type&quot;: &quot;opencv&quot;, &quot;index_or_path&quot;: 0, &quot;width&quot;: 640, &quot;height&quot;: 480, &quot;fps&quot;: 30}}&#x27;</span> \\
    --teleop.type=homunculus_glove \\
    --teleop.port=/dev/tty.usbmodem1201 \\
    --teleop.id=right \\
    --teleop.side=right \\
    --dataset.repo_id=&lt;USER&gt;/hand_record_test_with_video_data \\
    --dataset.single_task=<span class="hljs-string">&quot;Hand recording test with video data&quot;</span> \\
    --dataset.num_episodes=1 \\
    --dataset.episode_time_s=5 \\
    --dataset.push_to_hub=<span class="hljs-literal">true</span> \\
    --dataset.private=<span class="hljs-literal">true</span> \\
    --dataset.streaming_encoding=<span class="hljs-literal">true</span> \\
    --dataset.encoder_threads=2 \\
    <span class="hljs-comment"># --dataset.vcodec=auto \\</span>
    --display_data=<span class="hljs-literal">true</span>`,wrap:!1}}),bt=new j({props:{title:"Replay",local:"replay",headingTag:"h3"}}),wt=new T({props:{code:"bGVyb2JvdC1yZXBsYXklMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnR5cGUlM0Rob3BlX2pyX2hhbmQlMjAlNUMlMEElMjAlMjAlMjAlMjAtLXJvYm90LnBvcnQlM0QlMkZkZXYlMkZ0dHkudXNibW9kZW01ODc2MDQzMjI4MSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3QuaWQlM0RyaWdodCUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tcm9ib3Quc2lkZSUzRHJpZ2h0JTIwJTVDJTBBJTIwJTIwJTIwJTIwLS1kYXRhc2V0LnJlcG9faWQlM0QlM0NVU0VSJTNFJTJGaGFuZF9yZWNvcmRfdGVzdF93aXRoX2NhbWVyYSUyMCU1QyUwQSUyMCUyMCUyMCUyMC0tZGF0YXNldC5lcGlzb2RlJTNEMA==",highlighted:`lerobot-replay \\
    --robot.type=hope_jr_hand \\
    --robot.port=/dev/tty.usbmodem58760432281 \\
    --robot.id=right \\
    --robot.side=right \\
    --dataset.repo_id=&lt;USER&gt;/hand_record_test_with_camera \\
    --dataset.episode=0`,wrap:!1}}),Ct=new j({props:{title:"Train",local:"train",headingTag:"h3"}}),ht=new T({props:{code:"bGVyb2JvdC10cmFpbiUyMCU1QyUwQSUyMCUyMC0tZGF0YXNldC5yZXBvX2lkJTNEJTNDVVNFUiUzRSUyRmhhbmRfcmVjb3JkX3Rlc3Rfd2l0aF92aWRlb19kYXRhJTIwJTVDJTBBJTIwJTIwLS1wb2xpY3kudHlwZSUzRGFjdCUyMCU1QyUwQSUyMCUyMC0tb3V0cHV0X2RpciUzRG91dHB1dHMlMkZ0cmFpbiUyRmhvcGVqcl9oYW5kJTIwJTVDJTBBJTIwJTIwLS1qb2JfbmFtZSUzRGhvcGVqciUyMCU1QyUwQSUyMCUyMC0tcG9saWN5LmRldmljZSUzRG1wcyUyMCU1QyUwQSUyMCUyMC0td2FuZGIuZW5hYmxlJTNEdHJ1ZSUyMCU1QyUwQSUyMCUyMC0tcG9saWN5LnJlcG9faWQlM0QlM0NVU0VSJTNFJTJGaGFuZF90ZXN0X3BvbGljeQ==",highlighted:`lerobot-train \\
  --dataset.repo_id=&lt;USER&gt;/hand_record_test_with_video_data \\
  --policy.type=act \\
  --output_dir=outputs/train/hopejr_hand \\
  --job_name=hopejr \\
  --policy.device=mps \\
  --wandb.enable=<span class="hljs-literal">true</span> \\
  --policy.repo_id=&lt;USER&gt;/hand_test_policy`,wrap:!1}}),ct=new j({props:{title:"Evaluate",local:"evaluate",headingTag:"h3"}}),ut=new T({props:{code:"bGVyb2JvdC1yZWNvcmQlMjAlNUMlMEElMjAlMjAtLXJvYm90LnR5cGUlM0Rob3BlX2pyX2hhbmQlMjAlNUMlMEElMjAlMjAtLXJvYm90LnBvcnQlM0QlMkZkZXYlMkZ0dHkudXNibW9kZW01ODc2MDQzMjI4MSUyMCU1QyUwQSUyMCUyMC0tcm9ib3QuaWQlM0RyaWdodCUyMCU1QyUwQSUyMCUyMC0tcm9ib3Quc2lkZSUzRHJpZ2h0JTIwJTVDJTBBJTIwJTIwLS1yb2JvdC5jYW1lcmFzJTNEJyU3QiUyMm1haW4lMjIlM0ElMjAlN0IlMjJ0eXBlJTIyJTNBJTIwJTIyb3BlbmN2JTIyJTJDJTIwJTIyaW5kZXhfb3JfcGF0aCUyMiUzQSUyMDAlMkMlMjAlMjJ3aWR0aCUyMiUzQSUyMDY0MCUyQyUyMCUyMmhlaWdodCUyMiUzQSUyMDQ4MCUyQyUyMCUyMmZwcyUyMiUzQSUyMDMwJTdEJTdEJyUyMCU1QyUwQSUyMCUyMC0tZGlzcGxheV9kYXRhJTNEZmFsc2UlMjAlNUMlMEElMjAlMjAtLWRhdGFzZXQucmVwb19pZCUzRCUzQ1VTRVIlM0UlMkZldmFsX2hvcGVqciUyMCU1QyUwQSUyMCUyMC0tZGF0YXNldC5zaW5nbGVfdGFzayUzRCUyMkV2YWx1YXRlJTIwaG9wZWpyJTIwaGFuZCUyMHBvbGljeSUyMiUyMCU1QyUwQSUyMCUyMC0tZGF0YXNldC5udW1fZXBpc29kZXMlM0QxMCUyMCU1QyUwQSUyMCUyMC0tZGF0YXNldC5zdHJlYW1pbmdfZW5jb2RpbmclM0R0cnVlJTIwJTVDJTBBJTIwJTIwLS1kYXRhc2V0LmVuY29kZXJfdGhyZWFkcyUzRDIlMjAlNUMlMEElMjAlMjAlMjMlMjAtLWRhdGFzZXQudmNvZGVjJTNEYXV0byUyMCU1QyUwQSUyMCUyMC0tcG9saWN5LnBhdGglM0RvdXRwdXRzJTJGdHJhaW4lMkZob3BlanJfaGFuZCUyRmNoZWNrcG9pbnRzJTJGbGFzdCUyRnByZXRyYWluZWRfbW9kZWw=",highlighted:`lerobot-record \\
  --robot.type=hope_jr_hand \\
  --robot.port=/dev/tty.usbmodem58760432281 \\
  --robot.id=right \\
  --robot.side=right \\
  --robot.cameras=<span class="hljs-string">&#x27;{&quot;main&quot;: {&quot;type&quot;: &quot;opencv&quot;, &quot;index_or_path&quot;: 0, &quot;width&quot;: 640, &quot;height&quot;: 480, &quot;fps&quot;: 30}}&#x27;</span> \\
  --display_data=<span class="hljs-literal">false</span> \\
  --dataset.repo_id=&lt;USER&gt;/eval_hopejr \\
  --dataset.single_task=<span class="hljs-string">&quot;Evaluate hopejr hand policy&quot;</span> \\
  --dataset.num_episodes=10 \\
  --dataset.streaming_encoding=<span class="hljs-literal">true</span> \\
  --dataset.encoder_threads=2 \\
  <span class="hljs-comment"># --dataset.vcodec=auto \\</span>
  --policy.path=outputs/train/hopejr_hand/checkpoints/last/pretrained_model`,wrap:!1}}),At=new ul({props:{source:"https://github.com/huggingface/lerobot/blob/main/docs/source/hope_jr.mdx"}}),{c(){J=U("meta"),Rt=M(),$t=U("p"),vt=M(),n(h.$$.fragment),St=M(),n(c.$$.fragment),Lt=M(),n(f.$$.fragment),Qt=M(),u=U("ul"),u.innerHTML=Ve,Gt=M(),n(A.$$.fragment),Zt=M(),$=U("p"),$.innerHTML=Xe,Nt=M(),g=U("p"),g.textContent=Be,xt=M(),n(I.$$.fragment),_t=M(),n(R.$$.fragment),Et=M(),v=U("p"),v.textContent=ke,Wt=M(),n(S.$$.fragment),Vt=M(),L=U("p"),L.innerHTML=ze,Xt=M(),n(Q.$$.fragment),Bt=M(),G=U("p"),G.innerHTML=He,kt=M(),n(Z.$$.fragment),zt=M(),n(N.$$.fragment),Ht=M(),x=U("p"),x.textContent=De,Dt=M(),_=U("p"),_.innerHTML=Ye,Yt=M(),E=U("ul"),E.innerHTML=Fe,Ft=M(),W=U("p"),W.innerHTML=qe,qt=M(),V=U("ul"),V.innerHTML=Pe,Pt=M(),X=U("p"),X.textContent=Oe,Ot=M(),b=U("p"),b.innerHTML=Ke,Kt=M(),B=U("p"),B.textContent=tl,te=M(),w=U("p"),w.innerHTML=el,ee=M(),k=U("p"),k.textContent=ll,le=M(),n(z.$$.fragment),ae=M(),n(H.$$.fragment),Me=M(),D=U("p"),D.textContent=al,se=M(),n(Y.$$.fragment),ne=M(),F=U("p"),F.textContent=Ml,ie=M(),n(q.$$.fragment),pe=M(),P=U("p"),P.innerHTML=sl,oe=M(),n(O.$$.fragment),ye=M(),n(K.$$.fragment),re=M(),tt=U("p"),tt.textContent=nl,Ue=M(),et=U("ul"),et.innerHTML=il,de=M(),C=U("p"),C.innerHTML=pl,me=M(),lt=U("p"),lt.textContent=ol,je=M(),n(at.$$.fragment),Te=M(),n(Mt.$$.fragment),Je=M(),st=U("p"),st.textContent=yl,be=M(),n(nt.$$.fragment),we=M(),n(it.$$.fragment),Ce=M(),pt=U("p"),pt.textContent=rl,he=M(),n(ot.$$.fragment),ce=M(),n(yt.$$.fragment),fe=M(),n(rt.$$.fragment),ue=M(),n(Ut.$$.fragment),Ae=M(),n(dt.$$.fragment),$e=M(),mt=U("p"),mt.textContent=Ul,ge=M(),n(jt.$$.fragment),Ie=M(),Tt=U("p"),Tt.innerHTML=dl,Re=M(),n(Jt.$$.fragment),ve=M(),n(bt.$$.fragment),Se=M(),n(wt.$$.fragment),Le=M(),n(Ct.$$.fragment),Qe=M(),n(ht.$$.fragment),Ge=M(),n(ct.$$.fragment),Ze=M(),ft=U("p"),ft.innerHTML=ml,Ne=M(),n(ut.$$.fragment),xe=M(),n(At.$$.fragment),_e=M(),gt=U("p"),this.h()},l(t){const e=hl("svelte-u9bgzb",document.head);J=d(e,"META",{name:!0,content:!0}),e.forEach(l),Rt=s(t),$t=d(t,"P",{}),jl($t).forEach(l),vt=s(t),i(h.$$.fragment,t),St=s(t),i(c.$$.fragment,t),Lt=s(t),i(f.$$.fragment,t),Qt=s(t),u=d(t,"UL",{"data-svelte-h":!0}),m(u)!=="svelte-19y88yv"&&(u.innerHTML=Ve),Gt=s(t),i(A.$$.fragment,t),Zt=s(t),$=d(t,"P",{"data-svelte-h":!0}),m($)!=="svelte-1smiryk"&&($.innerHTML=Xe),Nt=s(t),g=d(t,"P",{"data-svelte-h":!0}),m(g)!=="svelte-p4zjmp"&&(g.textContent=Be),xt=s(t),i(I.$$.fragment,t),_t=s(t),i(R.$$.fragment,t),Et=s(t),v=d(t,"P",{"data-svelte-h":!0}),m(v)!=="svelte-qly52u"&&(v.textContent=ke),Wt=s(t),i(S.$$.fragment,t),Vt=s(t),L=d(t,"P",{"data-svelte-h":!0}),m(L)!=="svelte-n3zrme"&&(L.innerHTML=ze),Xt=s(t),i(Q.$$.fragment,t),Bt=s(t),G=d(t,"P",{"data-svelte-h":!0}),m(G)!=="svelte-afvlf"&&(G.innerHTML=He),kt=s(t),i(Z.$$.fragment,t),zt=s(t),i(N.$$.fragment,t),Ht=s(t),x=d(t,"P",{"data-svelte-h":!0}),m(x)!=="svelte-p5ygkc"&&(x.textContent=De),Dt=s(t),_=d(t,"P",{"data-svelte-h":!0}),m(_)!=="svelte-hbtorn"&&(_.innerHTML=Ye),Yt=s(t),E=d(t,"UL",{"data-svelte-h":!0}),m(E)!=="svelte-1bpy7dy"&&(E.innerHTML=Fe),Ft=s(t),W=d(t,"P",{"data-svelte-h":!0}),m(W)!=="svelte-i73010"&&(W.innerHTML=qe),qt=s(t),V=d(t,"UL",{"data-svelte-h":!0}),m(V)!=="svelte-1r2t0wo"&&(V.innerHTML=Pe),Pt=s(t),X=d(t,"P",{"data-svelte-h":!0}),m(X)!=="svelte-174d01v"&&(X.textContent=Oe),Ot=s(t),b=d(t,"P",{align:!0,"data-svelte-h":!0}),m(b)!=="svelte-1efukv6"&&(b.innerHTML=Ke),Kt=s(t),B=d(t,"P",{"data-svelte-h":!0}),m(B)!=="svelte-1jfml6u"&&(B.textContent=tl),te=s(t),w=d(t,"P",{align:!0,"data-svelte-h":!0}),m(w)!=="svelte-1mi660d"&&(w.innerHTML=el),ee=s(t),k=d(t,"P",{"data-svelte-h":!0}),m(k)!=="svelte-104q99m"&&(k.textContent=ll),le=s(t),i(z.$$.fragment,t),ae=s(t),i(H.$$.fragment,t),Me=s(t),D=d(t,"P",{"data-svelte-h":!0}),m(D)!=="svelte-26cb9a"&&(D.textContent=al),se=s(t),i(Y.$$.fragment,t),ne=s(t),F=d(t,"P",{"data-svelte-h":!0}),m(F)!=="svelte-wcs2pr"&&(F.textContent=Ml),ie=s(t),i(q.$$.fragment,t),pe=s(t),P=d(t,"P",{"data-svelte-h":!0}),m(P)!=="svelte-tfcycx"&&(P.innerHTML=sl),oe=s(t),i(O.$$.fragment,t),ye=s(t),i(K.$$.fragment,t),re=s(t),tt=d(t,"P",{"data-svelte-h":!0}),m(tt)!=="svelte-f2vsuy"&&(tt.textContent=nl),Ue=s(t),et=d(t,"UL",{"data-svelte-h":!0}),m(et)!=="svelte-84ls1d"&&(et.innerHTML=il),de=s(t),C=d(t,"P",{align:!0,"data-svelte-h":!0}),m(C)!=="svelte-120asqd"&&(C.innerHTML=pl),me=s(t),lt=d(t,"P",{"data-svelte-h":!0}),m(lt)!=="svelte-kdkoki"&&(lt.textContent=ol),je=s(t),i(at.$$.fragment,t),Te=s(t),i(Mt.$$.fragment,t),Je=s(t),st=d(t,"P",{"data-svelte-h":!0}),m(st)!=="svelte-1lqaa6"&&(st.textContent=yl),be=s(t),i(nt.$$.fragment,t),we=s(t),i(it.$$.fragment,t),Ce=s(t),pt=d(t,"P",{"data-svelte-h":!0}),m(pt)!=="svelte-m40ir6"&&(pt.textContent=rl),he=s(t),i(ot.$$.fragment,t),ce=s(t),i(yt.$$.fragment,t),fe=s(t),i(rt.$$.fragment,t),ue=s(t),i(Ut.$$.fragment,t),Ae=s(t),i(dt.$$.fragment,t),$e=s(t),mt=d(t,"P",{"data-svelte-h":!0}),m(mt)!=="svelte-jvo6q4"&&(mt.textContent=Ul),ge=s(t),i(jt.$$.fragment,t),Ie=s(t),Tt=d(t,"P",{"data-svelte-h":!0}),m(Tt)!=="svelte-14si3ud"&&(Tt.innerHTML=dl),Re=s(t),i(Jt.$$.fragment,t),ve=s(t),i(bt.$$.fragment,t),Se=s(t),i(wt.$$.fragment,t),Le=s(t),i(Ct.$$.fragment,t),Qe=s(t),i(ht.$$.fragment,t),Ge=s(t),i(ct.$$.fragment,t),Ze=s(t),ft=d(t,"P",{"data-svelte-h":!0}),m(ft)!=="svelte-1lp6zxf"&&(ft.innerHTML=ml),Ne=s(t),i(ut.$$.fragment,t),xe=s(t),i(At.$$.fragment,t),_e=s(t),gt=d(t,"P",{}),jl(gt).forEach(l),this.h()},h(){It(J,"name","hf:doc:metadata"),It(J,"content",$l),It(b,"align","center"),It(w,"align","center"),It(C,"align","center")},m(t,e){cl(document.head,J),a(t,Rt,e),a(t,$t,e),a(t,vt,e),p(h,t,e),a(t,St,e),p(c,t,e),a(t,Lt,e),p(f,t,e),a(t,Qt,e),a(t,u,e),a(t,Gt,e),p(A,t,e),a(t,Zt,e),a(t,$,e),a(t,Nt,e),a(t,g,e),a(t,xt,e),p(I,t,e),a(t,_t,e),p(R,t,e),a(t,Et,e),a(t,v,e),a(t,Wt,e),p(S,t,e),a(t,Vt,e),a(t,L,e),a(t,Xt,e),p(Q,t,e),a(t,Bt,e),a(t,G,e),a(t,kt,e),p(Z,t,e),a(t,zt,e),p(N,t,e),a(t,Ht,e),a(t,x,e),a(t,Dt,e),a(t,_,e),a(t,Yt,e),a(t,E,e),a(t,Ft,e),a(t,W,e),a(t,qt,e),a(t,V,e),a(t,Pt,e),a(t,X,e),a(t,Ot,e),a(t,b,e),a(t,Kt,e),a(t,B,e),a(t,te,e),a(t,w,e),a(t,ee,e),a(t,k,e),a(t,le,e),p(z,t,e),a(t,ae,e),p(H,t,e),a(t,Me,e),a(t,D,e),a(t,se,e),p(Y,t,e),a(t,ne,e),a(t,F,e),a(t,ie,e),p(q,t,e),a(t,pe,e),a(t,P,e),a(t,oe,e),p(O,t,e),a(t,ye,e),p(K,t,e),a(t,re,e),a(t,tt,e),a(t,Ue,e),a(t,et,e),a(t,de,e),a(t,C,e),a(t,me,e),a(t,lt,e),a(t,je,e),p(at,t,e),a(t,Te,e),p(Mt,t,e),a(t,Je,e),a(t,st,e),a(t,be,e),p(nt,t,e),a(t,we,e),p(it,t,e),a(t,Ce,e),a(t,pt,e),a(t,he,e),p(ot,t,e),a(t,ce,e),p(yt,t,e),a(t,fe,e),p(rt,t,e),a(t,ue,e),p(Ut,t,e),a(t,Ae,e),p(dt,t,e),a(t,$e,e),a(t,mt,e),a(t,ge,e),p(jt,t,e),a(t,Ie,e),a(t,Tt,e),a(t,Re,e),p(Jt,t,e),a(t,ve,e),p(bt,t,e),a(t,Se,e),p(wt,t,e),a(t,Le,e),p(Ct,t,e),a(t,Qe,e),p(ht,t,e),a(t,Ge,e),p(ct,t,e),a(t,Ze,e),a(t,ft,e),a(t,Ne,e),p(ut,t,e),a(t,xe,e),p(At,t,e),a(t,_e,e),a(t,gt,e),Ee=!0},p:Jl,i(t){Ee||(o(h.$$.fragment,t),o(c.$$.fragment,t),o(f.$$.fragment,t),o(A.$$.fragment,t),o(I.$$.fragment,t),o(R.$$.fragment,t),o(S.$$.fragment,t),o(Q.$$.fragment,t),o(Z.$$.fragment,t),o(N.$$.fragment,t),o(z.$$.fragment,t),o(H.$$.fragment,t),o(Y.$$.fragment,t),o(q.$$.fragment,t),o(O.$$.fragment,t),o(K.$$.fragment,t),o(at.$$.fragment,t),o(Mt.$$.fragment,t),o(nt.$$.fragment,t),o(it.$$.fragment,t),o(ot.$$.fragment,t),o(yt.$$.fragment,t),o(rt.$$.fragment,t),o(Ut.$$.fragment,t),o(dt.$$.fragment,t),o(jt.$$.fragment,t),o(Jt.$$.fragment,t),o(bt.$$.fragment,t),o(wt.$$.fragment,t),o(Ct.$$.fragment,t),o(ht.$$.fragment,t),o(ct.$$.fragment,t),o(ut.$$.fragment,t),o(At.$$.fragment,t),Ee=!0)},o(t){y(h.$$.fragment,t),y(c.$$.fragment,t),y(f.$$.fragment,t),y(A.$$.fragment,t),y(I.$$.fragment,t),y(R.$$.fragment,t),y(S.$$.fragment,t),y(Q.$$.fragment,t),y(Z.$$.fragment,t),y(N.$$.fragment,t),y(z.$$.fragment,t),y(H.$$.fragment,t),y(Y.$$.fragment,t),y(q.$$.fragment,t),y(O.$$.fragment,t),y(K.$$.fragment,t),y(at.$$.fragment,t),y(Mt.$$.fragment,t),y(nt.$$.fragment,t),y(it.$$.fragment,t),y(ot.$$.fragment,t),y(yt.$$.fragment,t),y(rt.$$.fragment,t),y(Ut.$$.fragment,t),y(dt.$$.fragment,t),y(jt.$$.fragment,t),y(Jt.$$.fragment,t),y(bt.$$.fragment,t),y(wt.$$.fragment,t),y(Ct.$$.fragment,t),y(ht.$$.fragment,t),y(ct.$$.fragment,t),y(ut.$$.fragment,t),y(At.$$.fragment,t),Ee=!1},d(t){t&&(l(Rt),l($t),l(vt),l(St),l(Lt),l(Qt),l(u),l(Gt),l(Zt),l($),l(Nt),l(g),l(xt),l(_t),l(Et),l(v),l(Wt),l(Vt),l(L),l(Xt),l(Bt),l(G),l(kt),l(zt),l(Ht),l(x),l(Dt),l(_),l(Yt),l(E),l(Ft),l(W),l(qt),l(V),l(Pt),l(X),l(Ot),l(b),l(Kt),l(B),l(te),l(w),l(ee),l(k),l(le),l(ae),l(Me),l(D),l(se),l(ne),l(F),l(ie),l(pe),l(P),l(oe),l(ye),l(re),l(tt),l(Ue),l(et),l(de),l(C),l(me),l(lt),l(je),l(Te),l(Je),l(st),l(be),l(we),l(Ce),l(pt),l(he),l(ce),l(fe),l(ue),l(Ae),l($e),l(mt),l(ge),l(Ie),l(Tt),l(Re),l(ve),l(Se),l(Le),l(Qe),l(Ge),l(Ze),l(ft),l(Ne),l(xe),l(_e),l(gt)),l(J),r(h,t),r(c,t),r(f,t),r(A,t),r(I,t),r(R,t),r(S,t),r(Q,t),r(Z,t),r(N,t),r(z,t),r(H,t),r(Y,t),r(q,t),r(O,t),r(K,t),r(at,t),r(Mt,t),r(nt,t),r(it,t),r(ot,t),r(yt,t),r(rt,t),r(Ut,t),r(dt,t),r(jt,t),r(Jt,t),r(bt,t),r(wt,t),r(Ct,t),r(ht,t),r(ct,t),r(ut,t),r(At,t)}}}const $l='{"title":"HopeJR","local":"hopejr","sections":[{"title":"Prerequisites","local":"prerequisites","sections":[],"depth":2},{"title":"Install LeRobot","local":"install-lerobot","sections":[],"depth":2},{"title":"Device Configuration","local":"device-configuration","sections":[],"depth":2},{"title":"Step 1: Calibration","local":"step-1-calibration","sections":[{"title":"1.1 Calibrate Robot Hand","local":"11-calibrate-robot-hand","sections":[],"depth":3},{"title":"1.2 Calibrate Teleoperator Glove","local":"12-calibrate-teleoperator-glove","sections":[],"depth":3},{"title":"1.3 Calibrate Robot Arm","local":"13-calibrate-robot-arm","sections":[],"depth":3},{"title":"1.4 Calibrate Teleoperator Exoskeleton","local":"14-calibrate-teleoperator-exoskeleton","sections":[],"depth":3}],"depth":2},{"title":"Step 2: Teleoperation","local":"step-2-teleoperation","sections":[{"title":"Hand","local":"hand","sections":[],"depth":3},{"title":"Arm","local":"arm","sections":[],"depth":3}],"depth":2},{"title":"Step 3: Record, Replay, Train","local":"step-3-record-replay-train","sections":[{"title":"Record","local":"record","sections":[],"depth":3},{"title":"Replay","local":"replay","sections":[],"depth":3},{"title":"Train","local":"train","sections":[],"depth":3},{"title":"Evaluate","local":"evaluate","sections":[],"depth":3}],"depth":2}],"depth":1}';function gl(We){return bl(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Ql extends wl{constructor(J){super(),Cl(this,J,gl,Al,Tl,{})}}export{Ql as component};
