How to build a dish-loading robot
You can't buy a home robot that loads the dishwasher yet. You can build one that clears a cup and a plate off the table and into a dish rack, with XLeRobot, an open-source robot built on an IKEA cart, for about $800 of parts. Loading a real dishwasher on its own is still a research problem.
Prices and links checked Oct 23, 2026. Where we couldn't confirm something, we say so. Can you buy one yet?

See how it goes together
XLeRobot is two SO-101 style arms on top of a wheeled IKEA RÅSKOG cart, with a camera head on a pan and tilt mount and a small camera on each wrist. A power station rides inside. Here it is coming apart and going back together next to a dish rack.

The main parts. White parts are 3D printed, the black blocks are STS3215 servos, and the grey body is the IKEA cart. Numbers on the arm show one side; the other arm is a mirror copy.
- 1Cart. An IKEA RÅSKOG utility cart. It carries the arms, the battery and the computer
- 2Wheels. The cart rolls on these. There are two-wheel and mecanum versions of the base too
- 3Top frame. A printed frame on the top shelf that holds both arms and the head
- 4Head. Pan and tilt joints, so the head camera can look down at the table or over at the rack
- 5Head camera. The main view of the whole work area
- 6Shoulder. The arm's base bracket and its first servo. Each arm is SO-101 style
- 7Upper arm. Printed link driven by an STS3215 servo
- 8Forearm. Sets how far the hand can reach past the cart
- 9Wrist. Pitch and roll, so a plate can be turned upright for the rack
- 10Gripper and wrist camera. The fixed jaw, with a small camera that sees what the hand sees
- 11Moving jaw. Closes on a cup handle or a plate rim. We couldn't confirm its grip strength
- 12Dish rack and plates. Stand-ins we modeled. They aren't part of the XLeRobot files
What works and what doesn't
Works now, on a hobby budget
Driving XLeRobot by hand to carry a plate from the table to the counter, and training it to do one small job on its own, like moving a cup from the table into a rack, from about 50 of your own demos. Someone has already published 50 episodes of an XLeRobot clearing a cup off a plate, plus models trained on them. No success rate is published, so plan on a few rounds of record, train, test.
Works, with a big budget
Single kitchen jobs work well on research hardware. A $32,000 Mobile ALOHA rinsed a pan and racked it 80% of the time from 50 demos. Physical Intelligence's π0.5 cleared dishes into the sink in homes it had never seen, though not always on the first try. Its weights are open, but even a LoRA fine-tune needs a GPU with more than 22.5 GB of memory.
Not yet
A robot you can buy that loads a real dishwasher with mixed, wet, stacked dishes on its own. Figure has shown its humanoid doing it, and that robot isn't for sale. Samsung showed Bot Handy loading a dishwasher in 2021 and never sold it. Dishcraft built dish robots for businesses and is no longer operating.
Why XLeRobot
Dishes start on the table and end up in the sink or a rack, so the robot needs wheels and two hands. XLeRobot is the cheapest open design we found with both, it runs on the same LeRobot tools as the SO-101 arms, and there's already public table-clearing data recorded on it. LeKiwi has wheels but one arm. OpenArm has bigger arms but no base, and a two-arm kit starts around $6,500.
How the parts fit together
You teach the robot by doing the job yourself with a controller. The robot copies you while its cameras record. A GPU turns those recordings into a policy, and the policy then drives the arms and wheels on its own. The software is LeRobot, Hugging Face's open-source robot learning library, plus the XLeRobot plugins.
Pick a setup
Cheap: one SO-101 arm at the sink
About $310
One self-sourced SO-101 pair ($229.88) plus a wrist camera ($12.98) and a C920 ($66). Before 3D printing and tax.
- Hardware
- One follower arm clamped next to a countertop dish rack, one leader arm, a wrist camera and one fixed camera. No wheels.
- Policy
- ACT, trained on your laptop GPU or a rented one.
- Goal
- Pick a plastic cup or plate from one spot on the counter and stand it in the rack.
- Time
- An evening to build one pair, then evenings of recording.
- Difficulty
- Beginner friendly.
Sources: SO-ARM100/101 repo (TheRobotStudio), LeRobot SO-101 guide, XLeRobot bill of materials
Mid: XLeRobot
About $800 to $900
The $579 kit plus the $39.99 cart and $179.99 battery comes to about $800. Add about $92 of cameras if your kit has none. The self-sourced route is about $660 before printing and tools.
- Hardware
- Two SO-101 style arms on a wheeled IKEA cart, a head camera and two wrist cameras. Teleop by keyboard, Xbox controller, Joy-Cons, Quest 3 VR or a leader arm.
- Policy
- ACT first. SmolVLA once you want one model to handle a few different dishes. Big models run on a GPU machine over Wi-Fi.
- Goal
- Drive from the table to the counter carrying a plate, and clear a cup and plate into a rack or the sink.
- Time
- Under 4 hours of assembly, the repo says. Then weeks of recording and testing.
- Difficulty
- Intermediate. More motors, more cables, and the base adds failure points.
Sources: WowRobo XLeRobot kit, XLeRobot repo, XLeRobot bill of materials, XLeRobot ACT guide
Serious: research mobile manipulator
About $32,000
What the Mobile ALOHA paper lists for its open-hardware build, including onboard power and compute.
- Hardware
- A two-arm mobile base like Mobile ALOHA. The paper says it reaches 65 to 200 cm off the ground and lifts objects up to 1.5 kg.
- Policy
- π0.5 fine-tuned in openpi. A LoRA fine-tune needs more than 22.5 GB of VRAM.
- Goal
- Rinse a pan and set it on the rack. Dishwasher loading by teleop.
- Time
- Months. This is a research project.
- Difficulty
- Hard.
Sources: Mobile ALOHA paper (arXiv 2401.02117), Mobile ALOHA project page, openpi (Physical Intelligence)
This plan follows the middle one. A single arm at the sink is a fine way to learn first, and the same LeRobot commands carry over.
Parts list for XLeRobot
USD, as listed on each source page on Oct 23, 2026. Shipping and tax not included.
| Part | Qty | Price | Source |
|---|---|---|---|
| XLeRobot kit, combo (two assembled arms plus the base kit)WowRobo Package 3. The arms alone are $349 and the base kit alone is $239. Leaves out the battery and the IKEA cart. | 1 | $579 | WowRobo XLeRobot kit ↗checked Oct 23, 2026 |
| Or: self-sourced XLeRobot, basic buildThe project's own estimate with your laptop and one head camera. Leaves out 3D printing, tools, shipping and tax. | 1 | About $660 | XLeRobot bill of materials ↗checked Oct 23, 2026 |
| IKEA RÅSKOG cartThe robot's body. The arms clamp to the top shelf. | 1 | $39.99 | XLeRobot bill of materials ↗checked Oct 23, 2026 |
| Anker SOLIX C300 power stationRides on the cart and powers everything. | 1 | $179.99 | XLeRobot bill of materials ↗checked Oct 23, 2026 |
| Head camera (Logitech C920)Price as listed in the XLeRobot parts list. We couldn't confirm whether the kit includes cameras. | 1 | $66 | XLeRobot bill of materials ↗checked Oct 23, 2026 |
| Wrist camera (small USB module)One per gripper, so the policy can see the plate edge up close. | 2 | $12.98 each | XLeRobot bill of materials ↗checked Oct 23, 2026 |
| Or: RealSense D415 depth cameraOptional head camera for the Pro build in the parts list. | 1 | $272 | XLeRobot bill of materials ↗checked Oct 23, 2026 |
| Tools: M3 screw set, flush cutter, screwdriver setFrom the tools section of the parts list. | 1 each | $14.99 + $6.99 + $6 | XLeRobot bill of materials ↗checked Oct 23, 2026 |
| Teleop controller (Joy-Con pair, Xbox controller or Quest 3)Keyboard teleop costs nothing. The 0.3.0 chore demos used Joy-Cons. We didn't check controller prices. | 1 | Unknown | XLeRobot teleop guide ↗checked Oct 23, 2026 |
| Plastic plates, cups and a countertop dish rackPractice with things that don't break. The public clean-table dataset uses a plate, a cup and a spoon. | a few | Use what you have | xlerobot_clean_table dataset ↗checked Oct 23, 2026 |
| Or: rented GPU for trainingHugging Face hardware prices. ACT fits a laptop GPU. SmolVLA wants more memory. | a few hours | From $0.40/h (T4), $0.80/h (L4) | Hugging Face pricing (GPU per hour) ↗checked Oct 23, 2026 |
Step by step
1. Watch real dish data before you buy
Install LeRobot and open the public XLeRobot clean-table dataset in the visualizer. It has 50 episodes of an XLeRobot moving a cup and spoon off a plate, seen from the head and both wrists. That's what you'll be recording.
pip install lerobot lerobot-visualize-dataset zonglin11/xlerobot_clean_table
LeRobot on GitHub, xlerobot_clean_table dataset, LeRobot dataset visualizer
2. Build the arms, the base and the head
Follow the assembly guide and video. Set every servo's ID and calibrate the arms with the SO-101 guide, then the base and head motors with the XLeRobot guide. The kit ships the arms already built.
lerobot-find-port lerobot-setup-motors ... lerobot-calibrate ...
XLeRobot assembly guide, Assembly video, LeRobot SO-101 guide
3. Install the XLeRobot plugins
XLeRobot ships as LeRobot plugins. After this, --robot.type=xlerobot works in the normal LeRobot commands. Pick the plugin that matches your base.
git clone https://github.com/Vector-Wangel/XLeRobot.git cd XLeRobot pip install -e software/plugins/xlerobot_model pip install -e software/plugins/lerobot_robot_xlerobot # or _2wheels pip install -e software/plugins/lerobot_teleoperator_xlerobot_vr
4. Drive it by hand and carry a plate
Start with the keyboard script, then try an Xbox controller or Joy-Cons. Drive to the table, pick up a plastic plate by the rim, drive to the counter and set it in the rack. If you can't do it by hand, a policy won't learn it either.
python software/examples/4_xlerobot_teleop_keyboard.py python software/examples/5_xlerobot_teleop_xbox.py python software/examples/7_xlerobot_teleop_joycon.py
5. Record 50 demos of one small job
Pick one job, like "cup from the mat into the rack". Park the base in the same spot, keep the lighting and the rack fixed, and record 50 clean episodes. The XLeRobot guide records with a leader arm or a Quest 3, and lets you delete a bad episode from the controller.
lerobot-record --robot.type=xlerobot --teleop.type=xlerobot_vr \ --dataset.single_task="Put the cup in the rack" --dataset.num_episodes=50 ...
XLeRobot ACT guide, LeRobot: imitation learning on real robots
6. Train a policy
Start with ACT. It's small and trains on a laptop GPU. SmolVLA starts from a pretrained base and wants a bigger GPU; the XLeRobot guide has the command.
lerobot-train --dataset.repo_id=you/cup_to_rack --policy.type=act ... lerobot-train --policy.path=lerobot/smolvla_base --dataset.repo_id=you/cup_to_rack ...
LeRobot compute and hardware guide, XLeRobot SmolVLA guide, ACT paper (arXiv 2304.13705)
7. Let it run, and film every try
ACT can run on the robot's own computer. For SmolVLA or π0.5, run a policy server on a GPU machine and let the robot connect over your network. Count successes over 20 tries, then record more demos of the moments it fails.
lerobot-rollout --strategy.type=base --policy.path=you/my_policy ... python -m lerobot.async_inference.policy_server --host=0.0.0.0 --port=8080
XLeRobot ACT guide, LeRobot async inference, LeRobot: imitation learning on real robots
8. Level up: chain jobs together
Once a few single jobs work, string them together: drive, clear the cup, clear the plate, drive back. A community π0.5 port for two-arm XLeRobot exists, and the docs show an LLM agent calling trained policies as tools.
XLeRobot π0.5 guide, openpi (Physical Intelligence), XLeRobot docs
The commands are shortened. The XLeRobot ACT guide and the LeRobot imitation learning guide have the full flags for ports, cameras and the Hub. Want to practice first? XLeRobot also has a simulation.
Dish robot demos and data
- XLeRobot clean-table dataset and models ↗
Hugging Face Hub user zonglin11, Jun 2026
50 episodes (121,451 frames at 30 fps) of a two-wheel XLeRobot moving a cup and spoon off a plate on a table mat, with head and wrist cameras. SmolVLA and X-VLA models trained on it are public. No success rate is published.
Open: dataset (Apache 2.0) and models. SmolVLA model, X-VLA model
- XLeRobot 0.3.0 home chores ↗
XLeRobot project, Aug 2025
Ten chores including wiping a table, getting drinks from the fridge, filling a cup with ice and picking from drawers. Every clip is teleoperated with Joy-Cons and sped up. None of them load dishes.
Open hardware and code, Apache 2.0. XLeRobot demos page
- Mobile ALOHA: Rinse Pan ↗
Stanford, Jan 2024
A $32,000 open-hardware mobile robot picks up a dirty pan, rinses it under the tap and puts it on the drying rack. 80% success from 50 demos when co-trained with older ALOHA data, and 0% without it. The paper lists loading and unloading a dishwasher among example chores the hardware can do, but it didn't train a policy for that.
Open: hardware, code and data. Mobile ALOHA paper (arXiv 2401.02117)
- π0.5 puts dishes in the sink in new homes ↗
Physical Intelligence, Apr 2025
A mobile robot clears dishes into the sink in homes that weren't in the training data. The team says it often makes mistakes and doesn't always succeed on the first try.
Closed robot. The π0.5 base weights are open in openpi. π0.5 paper (arXiv 2504.16054), openpi (Physical Intelligence)
- Helix loads the dishwasher ↗
Figure, Sep 2025
A Figure 02 humanoid singulates stacked plates, hands a glass from one hand to the other and loads a real dishwasher, recovering from misgrasps. Figure notes the racks leave centimeter tolerance.
Closed.
- Public dishwasher datasets ↗
Unitree and RoboCasa users, 2026
Unitree published 200 episodes of a G1 humanoid putting a plate into a dishwasher. There are also 501 simulated LoadDishwasher episodes from RoboCasa in LeRobot format. Neither is on XLeRobot, and neither reports a success rate.
Open datasets. RoboCasa LoadDishwasher dataset (sim)
Dish robots that didn't make it home
- Bot Handy ↗ , Samsung, Shown at CES 2021
A one-arm home robot shown loading a dishwasher. Samsung said it was in development, not for sale, and shown in test settings. We found no sign it ever shipped.
- Dishcraft ↗ , Dishcraft Robotics, No longer operating
Dishcraft built central washing hubs for businesses that use reusable dishware, not home robots. It raised more than $48M, and Unreasonable Group's venture page now lists it as no longer operating.
Also see The Verge on Bot Handy.
Open problems you can help with
No one has shown XLeRobot loading dishes
The closest public work is the clean-table dataset, which moves a cup off a plate. We found no XLeRobot clip of a plate going into a rack or a dishwasher, teleoperated or not.
How to help: Record a dish-to-rack dataset on XLeRobot, put the camera layout in the card, and post a video.
Reach into a real dishwasher
The arms sit on top of a waist-high cart. A dishwasher's bottom rack is near the floor. We couldn't confirm the arms reach it, which is why this plan aims at a countertop rack or the sink. Even the $32,000 Mobile ALOHA lists its lowest reach as 65 cm.
How to help: Measure the reach of a stock XLeRobot and share it, or design a lower arm mount.
Wet, slippery, breakable things
Figure calls out slippery and fragile items as a core difficulty. The SO-101 gripper is two printed jaws, and nobody publishes how it does on wet ceramic.
How to help: Test grip pads or a printed plate-friendly jaw and share the files and numbers.
Long jobs need many steps to go right
Clearing a table is drive, grasp, carry, place, repeat. Mobile ALOHA hit 80% on the single pan job only with extra co-training data, and dropped to 0% without it.
How to help: Report per-step success, not just whole-task success, so others can see which step breaks.
Nobody reports cheap-robot success rates
Public XLeRobot and SO-101 datasets keep growing, but we found no published success rate for a dish task on them.
How to help: Run 20 filmed tries, count the successes and post the numbers with the video.
What we couldn't confirm
- Any success rate for the public XLeRobot clean-table models, or for any dish task on XLeRobot or SO-101 arms.
- Whether stock XLeRobot arms reach a dishwasher's bottom rack, and how much a plate the SO-101 gripper can hold.
- Whether the WowRobo kit includes cameras. Its product page doesn't list them.
- Whether Samsung Bot Handy was ever sold. We found no sign it was.
- When Dishcraft stopped operating.
- Whether 1X has delivered its $20,000 NEO home robot to customers yet. 1X says an expert can supervise it remotely for harder chores.
- Controller and Quest 3 prices, and 3D printing cost for the self-sourced build.
- Prices change. Check the source before you buy.
Papers behind the policies
ACT paper (arXiv 2304.13705), SmolVLA paper (arXiv 2506.01844), π0.5 paper (arXiv 2504.16054), Mobile ALOHA paper (arXiv 2401.02117)
Starting smaller? The laundry-folding plan uses the same LeRobot loop on two fixed arms.