[{"data":1,"prerenderedAt":822},["ShallowReactive",2],{"platform-b2":3,"all-platforms":110},{"id":4,"title":5,"body":6,"callouts":61,"codeFilename":65,"codeLanguage":66,"codeSnippet":67,"description":16,"dof":68,"extension":69,"gallery":70,"ipRating":71,"meta":72,"navigation":73,"oneLiner":74,"order":58,"path":75,"payload":76,"priceFrom":77,"seo":78,"slug":79,"specs":80,"stem":99,"summary":100,"type":101,"useCases":102,"videoCaption":107,"videoPoster":107,"videoSrc":107,"whoItsFor":108,"__hash__":109},"platforms\u002Fen\u002Fplatforms\u002Fb2.md","Unitree B2",{"type":7,"value":8,"toc":56},"minimark",[9,13,17,22,25,48],[10,11,5],"h1",{"id":12},"unitree-b2",[14,15,16],"p",{},"The B2 is the industrial quadruped. Same DDS interface as the Go2, but built\nfor the field: 40 kg+ sustained payload, IP-rated, 4–6 hour battery under work.\nIf you need a robot to do a job in a place you don't want to send a person,\nthe B2 is the answer.",[18,19,21],"h2",{"id":20},"where-the-b2-fits","Where the B2 fits",[14,23,24],{},"The B2 is over-spec'd for a research lab and exactly the right size for:",[26,27,28,36,42],"ul",{},[29,30,31,35],"li",{},[32,33,34],"strong",{},"Industrial inspection"," of substations, refineries, and chemical plants where\na person goes on a daily walk-around. The B2 takes the walk and publishes\ntelemetry.",[29,37,38,41],{},[32,39,40],{},"Agriculture"," for livestock monitoring, crop health, and perimeter patrol\nacross uneven ground.",[29,43,44,47],{},[32,45,46],{},"Construction and energy"," for tool carriage and inspection on unstructured\nsites where a wheeled robot gets stuck.",[14,49,50,51,55],{},"The programming model is identical to the Go2 — same ",[52,53,54],"code",{},"unitree_sdk2_python"," —\nwhich means a team that knows the Go2 can ship a B2 deployment in days, not\nweeks.",{"title":57,"searchDepth":58,"depth":58,"links":59},"",2,[60],{"id":20,"depth":58,"text":21},[62,63,64],"The B2 is built for sustained work. Treat it like an industrial sensor platform, not a demo.","40 kg sustained payload is the working number; 120 kg static is a max — not a recommended continuous load.","All-terrain is real (it'll walk a rocky slope), but it's not an excavator. Choose the right tool for the right job.","b2_inspect.py","python","# B2 — inspection loop with telemetry publish\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.b2.sport.sport_client import SportClient\n\nChannelFactoryInitialize(0, \"eth0\")\nsport = SportClient(); sport.Init()\n\n# Cruise through waypoints from a recorded mission\nfor wp in mission.waypoints:\n    sport.Move(*wp.velocity, duration=wp.duration)\n    telemetry.publish({\n      \"pose\": sport.GetRobotState().position,\n      \"battery\": sport.GetBatteryState().soc,\n      \"load\":    sport.GetPayloadKg(),\n    })\n","12 DoF","md",[],"IP67 (whole unit)",{},true,"40 kg+ payload, IP-rated, all-terrain endurance.","\u002Fen\u002Fplatforms\u002Fb2","40 kg+ sustained, 120 kg max static","~$100k",{"title":5,"description":16},"b2",[81,84,87,90,93,96],{"k":82,"v":83},"Weight (with battery)","≈ 60 kg",{"k":85,"v":86},"Payload (sustained walk)","40 kg+",{"k":88,"v":89},"Payload (max static)","120 kg",{"k":91,"v":92},"Top speed","≈ 1.6 m\u002Fs (loaded)",{"k":94,"v":95},"Battery life (active)","4–6 hours",{"k":97,"v":98},"Sensors","4D LiDAR, depth cameras, IMU","en\u002Fplatforms\u002Fb2","The industrial quadruped — 40 kg+ payload, IP-rated, all-terrain endurance for heavy industry, agriculture, and inspection.","Industrial quadruped",[103,104,105,106],"Industrial inspection in hazardous environments","Agriculture monitoring (livestock, crops, perimeter)","Patrol and security in outdoor \u002F unstructured terrain","Heavy-payload carriage on construction and energy sites",null,"Heavy industry, agriculture, patrol, inspection","EcgWK_mI6cDZ8gEFqQ9BiM-_CAVisr47KsWHRMdGuI0",[111,232,276,393,471,567,637,723],{"id":112,"title":113,"body":114,"callouts":174,"codeFilename":178,"codeLanguage":66,"codeSnippet":179,"description":121,"dof":68,"extension":69,"gallery":180,"ipRating":196,"meta":197,"navigation":73,"oneLiner":198,"order":199,"path":200,"payload":201,"priceFrom":202,"seo":203,"slug":204,"specs":205,"stem":221,"summary":222,"type":223,"useCases":224,"videoCaption":229,"videoPoster":184,"videoSrc":183,"whoItsFor":230,"__hash__":231},"platforms\u002Fen\u002Fplatforms\u002Fgo2.md","Unitree Go2",{"type":7,"value":115,"toc":170},[116,119,122,126,129,149,153,159],[10,117,113],{"id":118},"unitree-go2",[14,120,121],{},"The Go2 is the entry point to the Unitree quadruped family. It pairs a 4D LiDAR\nwith onboard compute and a real-world battery of 1–2 hours. For research labs,\ninspection teams, and security operators, it's the workhorse.",[18,123,125],{"id":124},"where-the-go2-fits","Where the Go2 fits",[14,127,128],{},"Most Go2 deployments we see are one of three:",[26,130,131,137,143],{},[29,132,133,136],{},[32,134,135],{},"Autonomous inspection"," of a factory floor, warehouse aisle, or perimeter. The\nGo2 walks a recorded path, the onboard LiDAR keeps it inside a virtual fence,\nand the operator gets a daily pointcloud diff.",[29,138,139,142],{},[32,140,141],{},"Research"," for SLAM, navigation, RL, or multi-agent coordination. The Python\nand C++ SDKs cover the same DDS interface the rest of the Unitree range uses.",[29,144,145,148],{},[32,146,147],{},"Security"," with a payload sensor — thermal camera, gas sniffer, radiation probe.\nThe 8 kg loadable payload is enough for a 360° camera rig plus a small compute\nbox.",[18,150,152],{"id":151},"programming-the-go2","Programming the Go2",[14,154,155,156,158],{},"The Go2 uses the same ",[52,157,54],{}," as the rest of the family. The example\nto the right is a minimal \"walk until something is close, then stop\" pattern —\nit's a starting point for the inspection case, not a finished product.",[14,160,161,162,169],{},"For the full sim-to-real workflow, see\n",[163,164,168],"a",{"href":165,"rel":166},"https:\u002F\u002Fgithub.com\u002Funitreerobotics\u002Funitree_sim_isaaclab",[167],"nofollow","the Isaac Lab integration docs",".",{"title":57,"searchDepth":58,"depth":58,"links":171},[172,173],{"id":124,"depth":58,"text":125},{"id":151,"depth":58,"text":152},[175,176,177],"IP67 means the Go2 survives puddles, dust, and rain — but not submersion.","Real-world battery is 1–2 hours active; manufacturer claims of 5–10 hours are standby-only.","4D LiDAR is wide-FOV (360° × 90°). Excellent for SLAM, less ideal for small-object detection at distance.","go2_walk.py","# Go2 — basic SDK walk with obstacle stop\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.go2.sport.sport_client import SportClient\n\nChannelFactoryInitialize(0, \"eth0\")\nsport = SportClient(); sport.SetTimeout(5.0); sport.Init()\n\nsport.Walk(true)             # stand + balance\nsport.Move(0.4, 0, 0)        # forward 0.4 m\u002Fs\n# Hook: if LiDAR reports \u003C 0.5 m clearance, stop:\nif lidar.min_clearance \u003C 0.5:\n    sport.Move(0, 0, 0)\n    sport.StopMove()\n",[181,186,191],{"label":182,"src":183,"poster":184,"caption":185},"Outdoor walk","\u002Fvideos\u002Fgo2-walk.mp4","\u002Fvideos\u002Fgo2-walk-poster.jpg","Park + lakeside · 8s",{"label":187,"src":188,"poster":189,"caption":190},"All-terrain","\u002Fvideos\u002Fgo2-terrain.mp4","\u002Fvideos\u002Fgo2-terrain-poster.jpg","Rocks + water · 5.4s",{"label":192,"src":193,"poster":194,"caption":195},"Payload + ride","\u002Fvideos\u002Fgo2-lifestyle.mp4","\u002Fvideos\u002Fgo2-lifestyle-poster.jpg","Operator on top · 3.3s","IP67",{},"4D LiDAR robot dog, ~15 kg, 2.5 m\u002Fs, climbs 30° — the accessible workhorse.",1,"\u002Fen\u002Fplatforms\u002Fgo2","≈ 8 kg (loadable)","~$1,600 (Air)",{"title":113,"description":121},"go2",[206,208,210,213,216,218],{"k":82,"v":207},"≈ 15 kg",{"k":91,"v":209},"≈ 2.5 m\u002Fs",{"k":211,"v":212},"Climb grade","30°",{"k":214,"v":215},"Battery life (real)","1–2 hours active, 5–10 hours standby",{"k":97,"v":217},"4D LiDAR (Unitree), depth cameras, optional RealSense",{"k":219,"v":220},"Compute","Onboard NVIDIA Jetson Orin Nano (EDU variants)","en\u002Fplatforms\u002Fgo2","The 4D LiDAR quadruped that's become the accessible workhorse for research, inspection, security, and education.","Quadruped",[225,226,227,228],"Autonomous inspection (factories, warehouses, perimeter)","Research platform for SLAM, navigation, RL","Education: entry-level legged robotics","Security patrol with payload sensor (thermal, gas, etc.)","Stock-clipped · outdoor walk · 12s loop","Researchers, inspection teams, security, education","igVEy-6s-0a_u9gQAUZ16wVGMY9rigjKy9wpz8J0nJk",{"id":4,"title":5,"body":233,"callouts":264,"codeFilename":65,"codeLanguage":66,"codeSnippet":67,"description":16,"dof":68,"extension":69,"gallery":265,"ipRating":71,"meta":266,"navigation":73,"oneLiner":74,"order":58,"path":75,"payload":76,"priceFrom":77,"seo":267,"slug":79,"specs":268,"stem":99,"summary":100,"type":101,"useCases":275,"videoCaption":107,"videoPoster":107,"videoSrc":107,"whoItsFor":108,"__hash__":109},{"type":7,"value":234,"toc":261},[235,237,239,241,243,257],[10,236,5],{"id":12},[14,238,16],{},[18,240,21],{"id":20},[14,242,24],{},[26,244,245,249,253],{},[29,246,247,35],{},[32,248,34],{},[29,250,251,41],{},[32,252,40],{},[29,254,255,47],{},[32,256,46],{},[14,258,50,259,55],{},[52,260,54],{},{"title":57,"searchDepth":58,"depth":58,"links":262},[263],{"id":20,"depth":58,"text":21},[62,63,64],[],{},{"title":5,"description":16},[269,270,271,272,273,274],{"k":82,"v":83},{"k":85,"v":86},{"k":88,"v":89},{"k":91,"v":92},{"k":94,"v":95},{"k":97,"v":98},[103,104,105,106],{"id":277,"title":278,"body":279,"callouts":337,"codeFilename":342,"codeLanguage":66,"codeSnippet":343,"description":286,"dof":344,"extension":69,"gallery":345,"ipRating":356,"meta":357,"navigation":73,"oneLiner":358,"order":359,"path":360,"payload":361,"priceFrom":362,"seo":363,"slug":364,"specs":365,"stem":382,"summary":383,"type":384,"useCases":385,"videoCaption":390,"videoPoster":349,"videoSrc":348,"whoItsFor":391,"__hash__":392},"platforms\u002Fen\u002Fplatforms\u002Fg1.md","Unitree G1",{"type":7,"value":280,"toc":334},[281,284,287,291,298,301,331],[10,282,278],{"id":283},"unitree-g1",[14,285,286],{},"The G1 is the humanoid platform that turned the \"humanoid for research\" category\nfrom a six-figure line item into a realistic lab purchase. 23 DoF base, up to 43\nDoF in the EDU configuration, dexterous hands. It runs the same Unitree SDK\nas the rest of the family.",[18,288,290],{"id":289},"where-the-g1-fits","Where the G1 fits",[14,292,293,294,297],{},"The G1 is the right platform when you need a full-body humanoid for ",[32,295,296],{},"indoor\nR&D"," — university manipulation research, embodied-AI training, dexterous\nmanipulation prototyping. It is not an industrial product, and you should\ntreat its marketing materials as aspirational.",[14,299,300],{},"The honest callouts:",[26,302,303,310,317,324],{},[29,304,305,306,309],{},"It's ",[32,307,308],{},"indoor only"," — no IP rating, no outdoor deployment.",[29,311,312,313,316],{},"The ",[32,314,315],{},"2-hour real battery"," matters for experiment planning; you budget\ncharging time, not just run time.",[29,318,319,320,323],{},"The 43-DoF ",[32,321,322],{},"EDU"," model is meaningfully different from the 23-DoF base.\nIf you're doing manipulation work, you want the EDU.",[29,325,326,327,330],{},"The default network configuration is ",[32,328,329],{},"not safe for connected environments",".\nThe UniPwn disclosure of 2025 affects the G1 over Bluetooth; we verify\nfirmware and isolate the robot's network on every deployment.",[14,332,333],{},"If your use case is real-world manufacturing or service work, the G1 is\nthe wrong platform — and we'll tell you that in the scoping call.",{"title":57,"searchDepth":58,"depth":58,"links":335},[336],{"id":289,"depth":58,"text":290},[338,339,340,341],"The G1 is INDOOR ONLY. No IP rating. Do not deploy outside — dust and moisture will damage it.","Real-world battery is ~2 hours active. Marketing's 5–10 hours is standby only.","The EDU configuration with 43 DoF and dexterous hands is what you want for manipulation research. The base 23-DoF model is for locomotion work.","Wi-Fi and Bluetooth are ON by default. UniPwn (2025) affects this device — verify firmware and isolate the network before deployment.","g1_arm.py","# G1 — whole-body position control via SDK\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.g1.g1_arm_action import G1ArmAction\n\nChannelFactoryInitialize(0, \"eth0\")\narm = G1ArmAction()\n\n# Move right hand to a target pose\narm.startRayCasting()\narm.MoveL(p_target, r_target, duration=2.0)  # linear in Cartesian\n# Compliance mode for contact tasks\narm.setFsmJoint()\n","23 DoF base \u002F up to 43 DoF",[346,351],{"label":347,"src":348,"poster":349,"caption":350},"Indoor R&D","\u002Fvideos\u002Fg1-demo-poster-loop.mp4","\u002Fvideos\u002Fg1-demo-poster.jpg","Studio walk + dance · 18s",{"label":352,"src":353,"poster":354,"caption":355},"Urban walk","\u002Fvideos\u002Fg1-urban-walk.mp4","\u002Fvideos\u002Fg1-urban-walk-poster.jpg","Outdoor plaza · 14s","Indoor only",{},"23 DoF base \u002F up to 43 DoF EDU, dexterous hands, indoor R&D platform.",3,"\u002Fen\u002Fplatforms\u002Fg1","n\u002Fa (research)","~$13.5–16k (base)",{"title":278,"description":286},"g1",[366,369,372,375,378,380],{"k":367,"v":368},"Height","≈ 1.32 m",{"k":370,"v":371},"Weight","≈ 35 kg (base)",{"k":373,"v":374},"Base DoF","23",{"k":376,"v":377},"Max DoF (EDU)","43",{"k":214,"v":379},"~2 hours active",{"k":97,"v":381},"Intel RealSense depth, IMU, optional wrist cameras","en\u002Fplatforms\u002Fg1","The 23-DoF-base humanoid with dexterous hands — the indoor R&D platform for universities, labs, and prototyping.","Humanoid",[386,387,388,389],"University research in humanoid control, manipulation, RL","Embodied-AI research and imitation learning","Dexterous manipulation R&D (with EDU hands)","Indoor prototyping of human-scale tasks","Stock-clipped · outdoor walk + studio gait work · 18s loop","Universities, labs, prototyping","TCnqSx3GKdqwUyM7dcXIVWtTBIKlQY7NWvNXLpDb28g",{"id":394,"title":395,"body":396,"callouts":434,"codeFilename":438,"codeLanguage":66,"codeSnippet":439,"description":403,"dof":440,"extension":69,"gallery":441,"ipRating":356,"meta":442,"navigation":73,"oneLiner":443,"order":444,"path":445,"payload":361,"priceFrom":446,"seo":447,"slug":448,"specs":449,"stem":461,"summary":462,"type":463,"useCases":464,"videoCaption":107,"videoPoster":107,"videoSrc":107,"whoItsFor":469,"__hash__":470},"platforms\u002Fen\u002Fplatforms\u002Fr1.md","Unitree R1",{"type":7,"value":397,"toc":431},[398,401,404,408,428],[10,399,395],{"id":400},"unitree-r1",[14,402,403],{},"The R1 is the lightweight, developer-friendly humanoid — the platform you hand\nto a research student on day one. It's not a production robot; it's a learning\ntool that ships with a real Unitree SDK and the same development model as the\nG1 and H1.",[18,405,407],{"id":406},"where-the-r1-fits","Where the R1 fits",[26,409,410,416,422],{},[29,411,412,415],{},[32,413,414],{},"STEM"," — university robotics clubs, K-12 outreach, makerspaces.",[29,417,418,421],{},[32,419,420],{},"HRI research"," — human-robot interaction studies where you need a\nhumanoid that fits in a lab.",[29,423,424,427],{},[32,425,426],{},"Entry-level autonomy"," — locomotion and basic manipulation research\nwhere the G1 would be overkill.",[14,429,430],{},"The R1 is the right answer when the question is \"how do we get a humanoid\nonto the lab bench this week\" and not \"how do we deploy a humanoid into\nproduction.\" For the latter, see the H1 or H2.",{"title":57,"searchDepth":58,"depth":58,"links":432},[433],{"id":406,"depth":58,"text":407},[435,436,437],"The R1 is a developer-friendly entry humanoid, not a production platform. Expect hobbyist-grade durability.","Real battery is ~1 hour active. Plan demos with the charger on the table.","Indoor only. Treat the chassis as a laptop with legs.","r1_basic.py","# R1 — basic pose + motion primitive\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.r1.robot import R1Robot\n\nChannelFactoryInitialize(0, \"eth0\")\nr1 = R1Robot(); r1.Init()\n\nr1.stand()                 # zero-torque to balanced stance\nr1.gesture(\"wave\")         # canned motion primitive\nr1.walk(velocity=0.3, duration=2.0)\n","Compact humanoid DoF",[],{},"≈ 123 cm, agile, developer-friendly entry humanoid.",4,"\u002Fen\u002Fplatforms\u002Fr1","~$4.3–4.9k",{"title":395,"description":403},"r1",[450,452,454,457,459],{"k":367,"v":451},"≈ 123 cm",{"k":370,"v":453},"≈ 29 kg",{"k":455,"v":456},"DoF","Compact humanoid configuration",{"k":214,"v":458},"~1 hour active",{"k":97,"v":460},"Depth camera, IMU, optional mic array","en\u002Fplatforms\u002Fr1","The lightweight, developer-friendly humanoid — STEM, HRI, and early autonomy entry point.","Lightweight humanoid",[465,466,467,468],"STEM education and robotics clubs","Human-Robot Interaction (HRI) studies","Entry-level autonomy research (locomotion, basic manipulation)","Demonstrator and trade-show robotics","STEM, HRI research, early autonomy","pZFBkp5IwoHjcNPZBQIJQEXru3NWOnNpZxD8jDWGO44",{"id":472,"title":473,"body":474,"callouts":527,"codeFilename":532,"codeLanguage":66,"codeSnippet":533,"description":481,"dof":534,"extension":69,"gallery":535,"ipRating":356,"meta":536,"navigation":73,"oneLiner":537,"order":538,"path":539,"payload":540,"priceFrom":541,"seo":542,"slug":10,"specs":543,"stem":557,"summary":558,"type":559,"useCases":560,"videoCaption":107,"videoPoster":107,"videoSrc":107,"whoItsFor":565,"__hash__":566},"platforms\u002Fen\u002Fplatforms\u002Fh1.md","Unitree H1 \u002F H1-2",{"type":7,"value":475,"toc":523},[476,479,482,486,506,509,513],[10,477,473],{"id":478},"unitree-h1-h1-2",[14,480,481],{},"The H1 is the full-size, fastest production humanoid on the market. 1.78 m tall,\n3.7 m\u002Fs top speed, high-torque joint modules. It's the platform enterprise\nR&D teams buy when the R1 or G1 are under-spec'd for the work.",[18,483,485],{"id":484},"where-the-h1-fits","Where the H1 fits",[26,487,488,494,500],{},[29,489,490,493],{},[32,491,492],{},"Advanced research"," in human-scale manipulation, dynamic locomotion,\nand high-speed control.",[29,495,496,499],{},[32,497,498],{},"Enterprise R&D"," where the budget is real and the use case is real —\nindustrial human-robot coexistence pilots, heavy-payload manipulation\nresearch, demonstrator work for stakeholders.",[29,501,502,505],{},[32,503,504],{},"Speed research"," — the H1 is the only production humanoid that\nsprints. If your research depends on dynamic locomotion, this is the\nplatform.",[14,507,508],{},"The H1 is also the most expensive platform in the Unitree range. We will\ntalk you out of buying one if a G1 or B2 will do the job.",[18,510,512],{"id":511},"programming-the-h1","Programming the H1",[14,514,515,516,518,519,522],{},"Same ",[52,517,54],{}," as the rest of the family. The H1's ",[52,520,521],{},"LocoClient","\nexposes high-level locomotion modes (walk, run, sprint) plus per-joint\ntorque control for researchers who need to drop down a level.",{"title":57,"searchDepth":58,"depth":58,"links":524},[525,526],{"id":484,"depth":58,"text":485},{"id":511,"depth":58,"text":512},[528,529,530,531],"The H1's 3.7 m\u002Fs top speed is the highest in any production humanoid. Sanity-check operator before enabling sprint mode.","Indoor only. The H1 is not weather-rated.","Real battery is 1–2 hours active. Marketing claims of longer run-times are under specific low-motion conditions.","Wi-Fi and Bluetooth ON by default. Apply UniPwn firmware patches and isolate the network.","h1_sprint.py","# H1 — high-speed locomotion + arm control\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.h1.loco.h1_loco_client import LocoClient\n\nChannelFactoryInitialize(0, \"eth0\")\nloco = LocoClient(); loco.Init()\n\n# Switch to high-speed mode (operator sanity-check required)\nloco.SetSpeedMode(2)  # 0=normal, 1=run, 2=sprint\nloco.Move(vx=2.0, vy=0, vyaw=0, duration=1.0)\n","High-DoF full-body",[],{},"1.78 m, fastest production humanoid (~3.7 m\u002Fs), high-torque.",5,"\u002Fen\u002Fplatforms\u002Fh1","n\u002Fa (research \u002F demo)","~$90k+",{"title":473,"description":481},[544,546,548,550,553,555],{"k":367,"v":545},"≈ 1.78 m",{"k":91,"v":547},"≈ 3.7 m\u002Fs",{"k":370,"v":549},"≈ 47 kg",{"k":551,"v":552},"Torque","High-torque joint modules",{"k":214,"v":554},"~1–2 hours active",{"k":97,"v":556},"3D LiDAR, depth cameras, IMU","en\u002Fplatforms\u002Fh1","The full-size, fastest production humanoid — enterprise and advanced research.","Full-size humanoid",[561,562,563,564],"Enterprise R&D in human-scale manipulation and locomotion","Advanced manipulation research (heavy-payload arms)","Demonstrator for industrial human-robot coexistence","Speed and dynamic-locomotion research","Enterprise, advanced research","HlsWt-g7yfR_7C268tyUYqiHhh6qtE2vaMx3BMtrllA",{"id":568,"title":569,"body":570,"callouts":601,"codeFilename":605,"codeLanguage":66,"codeSnippet":606,"description":577,"dof":534,"extension":69,"gallery":607,"ipRating":356,"meta":608,"navigation":73,"oneLiner":609,"order":610,"path":611,"payload":540,"priceFrom":612,"seo":613,"slug":18,"specs":614,"stem":627,"summary":628,"type":629,"useCases":630,"videoCaption":107,"videoPoster":107,"videoSrc":107,"whoItsFor":635,"__hash__":636},"platforms\u002Fen\u002Fplatforms\u002Fh2.md","Unitree H2 (new)",{"type":7,"value":571,"toc":597},[572,575,578,582,585,588,592],[10,573,569],{"id":574},"unitree-h2-new",[14,576,577],{},"The H2 is the refined full-size humanoid — built on the lessons of the H1-2,\nwith unified onboard compute, stronger arms, and a meaningfully better\nbattery. Same approximate form factor; meaningfully upgraded internals.",[18,579,581],{"id":580},"where-the-h2-fits","Where the H2 fits",[14,583,584],{},"The H2 is positioned as the demonstration and operator-in-the-loop research\nplatform in the Unitree humanoid line. Where the H1 was the \"fastest,\" the\nH2 is the \"most capable in a lab.\"",[14,586,587],{},"If you're choosing between H1 and H2 today, the H2 is the better research\nplatform for new projects; the H1 still wins on raw sprint speed and is\ncheaper. We'll help you pick in the scoping call.",[18,589,591],{"id":590},"programming-the-h2","Programming the H2",[14,593,515,594,596],{},[52,595,54],{}," as the rest of the family. The H2's unified\ncompute simplifies the SDK surface (one process, not three) and gives you\ncleaner hooks for teleoperation and shared-autonomy research.",{"title":57,"searchDepth":58,"depth":58,"links":598},[599,600],{"id":580,"depth":58,"text":581},{"id":590,"depth":58,"text":591},[602,603,604],"The H2 is the refined successor to the H1-2. Same family, improved compute and arms.","Real battery is improved over H1 (2–3 hours active) but still indoor-only.","Pricing varies by configuration (base, EDU, full). The base is ~$30K; full-feature configurations are higher.","h2_teleop.py","# H2 — unified-compute teleoperation hook\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.h2.teleop import H2TeleopClient\n\nChannelFactoryInitialize(0, \"eth0\")\ntele = H2TeleopClient(); tele.Init()\n\n# Stream operator pose -> robot pose at 100 Hz\ntele.start_streaming(rate_hz=100)\n# H2's unified compute handles the IK + balancing locally\n",[],{},"Refines H1-2 — unified compute, stronger arms, longer battery.",6,"\u002Fen\u002Fplatforms\u002Fh2","~$30k base",{"title":569,"description":577},[615,617,619,621,624,626],{"k":367,"v":616},"≈ 1.82 m",{"k":370,"v":618},"≈ 70 kg",{"k":219,"v":620},"Unified onboard compute (vs distributed on H1)",{"k":622,"v":623},"Arms","Stronger than H1-2 — higher payload",{"k":214,"v":625},"2–3 hours active (improved)",{"k":97,"v":556},"en\u002Fplatforms\u002Fh2","The refined full-size humanoid — unified compute, stronger arms, longer battery. Built on H1-2 lessons.","Full-size humanoid (new)",[631,632,633,634],"Research demonstrations of full-size humanoid capability","Manipulation research with the new arm design","Operator-in-the-loop teleoperation studies","Trade-show and field-trial robotics","Research, demonstrations","hoMWonWGVeYT4GV10vZwL0hjAsqrCg-JavUuDpzFjmQ",{"id":638,"title":639,"body":640,"callouts":680,"codeFilename":684,"codeLanguage":66,"codeSnippet":685,"description":647,"dof":686,"extension":69,"gallery":687,"ipRating":356,"meta":688,"navigation":73,"oneLiner":689,"order":690,"path":691,"payload":692,"priceFrom":693,"seo":694,"slug":695,"specs":696,"stem":713,"summary":714,"type":715,"useCases":716,"videoCaption":107,"videoPoster":107,"videoSrc":107,"whoItsFor":721,"__hash__":722},"platforms\u002Fen\u002Fplatforms\u002Fg1-d.md","Unitree G1-D",{"type":7,"value":641,"toc":676},[642,645,648,652,655,662,666],[10,643,639],{"id":644},"unitree-g1-d",[14,646,647],{},"The G1-D is the teleoperation rig: a G1 with dual dexterous arms, \u003C100 ms\noperator-to-robot latency, and a recording stack that writes LeRobot-compatible\ndatasets. It's the platform embodied-AI teams use to collect training data\nat scale.",[18,649,651],{"id":650},"where-the-g1-d-fits","Where the G1-D fits",[14,653,654],{},"If you're building a vision-language-action (VLA) model and you need\ntraining data, the G1-D is the platform. The 100 ms latency is real\n(we've measured it); the recording stack writes the format modern training\npipelines expect; the operator experience is good enough for sustained\ncollection sessions.",[14,656,657,658,661],{},"The output format is the key thing: ",[32,659,660],{},"ROS 2 bags and LeRobot-compatible\ndatasets",". We integrate with whatever training stack you already have.",[18,663,665],{"id":664},"programming-the-g1-d","Programming the G1-D",[14,667,668,669,671,672,675],{},"The G1-D uses the same ",[52,670,54],{}," as the G1, with an additional\n",[52,673,674],{},"teleop"," module for the recording stack. The example to the right shows\nthe minimal \"record one episode\" loop.",{"title":57,"searchDepth":58,"depth":58,"links":677},[678,679],{"id":650,"depth":58,"text":651},{"id":664,"depth":58,"text":665},[681,682,683],"Sub-100 ms latency is the working number for natural-feeling teleoperation. Marketing claims of \u003C50 ms are under specific network conditions.","Output is ROS 2 bags and LeRobot-compatible datasets — plug into any modern VLA training pipeline.","Indoor only. The G1-D is built for the lab, not the field.","g1d_record.py","# G1-D — record a teleop episode\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.g1_d.teleop import TeleopRecorder\n\nChannelFactoryInitialize(0, \"eth0\")\nrec = TeleopRecorder(out_dir=\".\u002Fepisodes\u002F2026-06-22\u002F\")\n\nrec.start_episode(task=\"pick_cube\")\nwhile operator_active:\n    rec.record_step({\n      \"rgb_left\":  cam_left.frame(),\n      \"rgb_right\": cam_right.frame(),\n      \"depth\":     cam_depth.frame(),\n      \"joints\":    arm.state(),\n      \"gripper\":   gripper.state(),\n    })\nrec.stop_episode()  # writes a LeRobot-compatible dataset\n","Dual-arm + G1 base",[],{},"Dual-arm teleoperation rig, \u003C100 ms latency, builds training datasets.",7,"\u002Fen\u002Fplatforms\u002Fg1-d","n\u002Fa (teleop + recording)","Contact for pricing",{"title":639,"description":647},"g1-d",[697,700,702,705,708,711],{"k":698,"v":699},"Latency","\u003C 100 ms (operator -> robot)",{"k":622,"v":701},"Dual dexterous arms (G1 EDU spec)",{"k":703,"v":704},"Base","G1 humanoid base",{"k":706,"v":707},"Recording","Synchronized RGB-D + joint state + timestamps",{"k":709,"v":710},"Output format","ROS 2 bags, LeRobot-compatible datasets",{"k":219,"v":712},"Onboard + workstation-grade offboard option","en\u002Fplatforms\u002Fg1-d","The dual-arm teleoperation rig for embodied-AI teams collecting training datasets — sub-100 ms latency.","Data\u002Ftraining platform",[717,718,719,720],"Imitation learning dataset collection","Teleoperation research (shared autonomy, RLHF)","Embodied-AI training data at scale","VR\u002Fleader-follower manipulation studies","Embodied-AI teams","oimAzVSAlUqwuvVsVRFrY02-5idJeuYd2KbnO8H_rRY",{"id":724,"title":725,"body":726,"callouts":780,"codeFilename":784,"codeLanguage":66,"codeSnippet":785,"description":733,"dof":786,"extension":69,"gallery":787,"ipRating":788,"meta":789,"navigation":73,"oneLiner":790,"order":791,"path":792,"payload":788,"priceFrom":793,"seo":794,"slug":795,"specs":796,"stem":812,"summary":813,"type":814,"useCases":815,"videoCaption":107,"videoPoster":107,"videoSrc":107,"whoItsFor":820,"__hash__":821},"platforms\u002Fen\u002Fplatforms\u002Farms.md","Unitree Arms (Z1, etc.)",{"type":7,"value":727,"toc":776},[728,731,734,738,758,762],[10,729,725],{"id":730},"unitree-arms-z1-etc",[14,732,733],{},"The Unitree arm family is the manipulator side of the catalogue. The Z1 is\nthe most common SKU in our integrations; other models exist with different\npayload\u002Freach\u002FIP specs. The arms are designed to be either standalone (cells,\nbenchtop) or paired with a mobile base (B2, Go2) for mobile manipulation.",[18,735,737],{"id":736},"where-the-arms-fit","Where the arms fit",[26,739,740,746,752],{},[29,741,742,745],{},[32,743,744],{},"Manufacturing cells"," — light assembly, machine tending, pick-and-place\nwhere a full industrial arm (FANUC, ABB) is over-spec'd.",[29,747,748,751],{},[32,749,750],{},"Benchtop automation"," — lab, R&D, testing, and demo work.",[29,753,754,757],{},[32,755,756],{},"Mobile manipulation"," — when paired with a B2 or Go2, the arm turns\nthe mobile base into a manipulator that can do real work, not just\ninspection.",[18,759,761],{"id":760},"programming-the-arms","Programming the arms",[14,763,764,765,767,768,771,772,775],{},"The Z1 uses the same ",[52,766,54],{}," as the rest of the Unitree\nfamily. The motion primitives are linear (",[52,769,770],{},"MoveL",") and joint-space\n(",[52,773,774],{},"MoveJ","); the gripper is a separate module. The example to the right is\na minimal \"pick from A, place at B\" sequence.",{"title":57,"searchDepth":58,"depth":58,"links":777},[778,779],{"id":736,"depth":58,"text":737},{"id":760,"depth":58,"text":761},[781,782,783],"Arm specs (payload, reach, IP) vary significantly by model. Get the datasheet for the specific SKU before specifying.","The Z1 family is the most common Unitree arm in our integrations.","Pairing an arm with a B2 or Go2 base gives you a mobile manipulator — useful for inspection tasks that need interaction.","z1_pick.py","# Z1 arm — Cartesian trajectory to a target pose\nfrom unitree_sdk2py.core.channel import ChannelFactoryInitialize\nfrom unitree_sdk2py.z1.arm import Z1Arm\n\nChannelFactoryInitialize(0, \"eth0\")\narm = Z1Arm()\n\narm.start()\narm.MoveL(p=[0.4, 0.0, 0.3], r=[0, 0, 0], duration=2.0)\narm.gripper.close(force=20)\narm.MoveL(p=[0.2, 0.2, 0.4], r=[0, 0, 0], duration=1.5)\narm.gripper.open()\narm.stop()\n","6+ DoF",[],"Varies by model",{},"6+ DoF arms for cells and benchtop automation.",8,"\u002Fen\u002Fplatforms\u002Farms","~$16k",{"title":725,"description":733},"arms",[797,799,802,804,806,809],{"k":455,"v":798},"6+ (model-dependent)",{"k":800,"v":801},"Payload","Model-dependent",{"k":803,"v":801},"Reach",{"k":219,"v":805},"Onboard controller + offboard SDK",{"k":807,"v":808},"SDK","unitree_sdk2 (Z1 family)",{"k":810,"v":811},"ROS 2","Yes (unitree_ros2)","en\u002Fplatforms\u002Farms","The 6+ DoF manipulators — for manufacturing cells, benchtop automation, and as a complement to a mobile base.","Manipulator",[816,817,818,819],"Manufacturing cells (machine tending, light assembly)","Benchtop automation (lab, testing, R&D)","Mobile manipulation when paired with a B2 or Go2 base","Light-payload pick-and-place","Manufacturing, integration","nedGEriEP2r9lEVvpWpEQy6FUsu9fAQVHr92B3_9W44",1782174234909]