Why SO-101 Printed Parts Break, and What to Print Them In

Diagram comparing an SO-101 part printed upright, where load pulls across the layer welds and it fails along a layer line, with the same part printed flat, where load runs along the extruded roads and it holds
Key takeaways
  • The four common SO-101 failures (table clamp, long arm separation, forced motor pockets, stripped screw bosses) are all documented publicly by builders, and three of the four are process problems before they are material problems.
  • Layer bonds carry compression well and tension and shear poorly. Orientation decides which of those a part sees.
  • The official PLA+ at 15 percent infill spec is a good distribution default, not an engineering ceiling. It is what lets the most people print this arm on the printer they already own.
  • Perimeter count, not infill percentage, is where stiffness and thread engagement come from. A widely used community profile runs 2 walls. That is the weak spot on a long lever arm.
  • Top plus bottom solid layers have to be at least the part's total layer count, or a thin part never gets a solid core.

If you have built an SO-101, you already know which parts fail. The table clamp snaps. One of the long arm sections opens along a layer line. A motor has to be pressed into its pocket hard enough that you start questioning the whole afternoon. An M3 screw spins freely in a boss that used to have threads. These are not random. They are four specific, repeatable failures, they are documented in public by the people who hit them, and each one has a mechanical explanation and a fix that costs nothing but a different orientation, a different wall count, or a different spool.

Diagram comparing an SO-101 part printed upright, where load pulls across the layer welds and it fails along a layer line, with the same part printed flat, where load runs along the extruded roads and it holds
The same part, the same spool, two orientations. Printed upright, the load pulls directly across the layer welds. Printed flat, it runs along the extruded roads.

The four failures, in the builders' own words

1. The table clamp breaks along its layer lines. There is a replacement part on Printables that exists for exactly this reason. Its author writes that the original threaded piece "is printed in the wrong orientation by default, and breaks very easily along the layer lines," and that the remedy is to "print this one flat on the printer bed, and you shouldn't see any issues." (Table Clamp replacement for SO-ARM100/101, silver__toad, Printables.)

2. The long arm sections separate. A heavily downloaded remix of the SO-101 print plates ships a dedicated anti-separation file. The designer's notes say that "some users reported layer separation issues on the two long arms" in an earlier version, so manual supports were added, and that the wrist components were "rotated by 45 degrees" to fix surface finish. (LeRobot SO-101 Arms, updated, manfromwest, MakerWorld.)

3. The motor has to be forced into its pocket. A public build log describes it plainly: "All 3D model parts are molded to exactly the right size, so it takes quite a bit of courage and force to push the motor into the designated slot," and warns that "burrs from the printing process may get caught during assembly." (Public SO-101 build log, note.com.) A buyer of a prebuilt kit put it the same way in a review, that "removing a motor from its 3D-printed groove is challenging," and was careful to add that this was "not Partabot's fault." He is right. It is not the seller's fault. It is a tolerance stack.

4. The screws strip the boss. Same reviewer: "the screws were stripping the print and sometimes did not go inside the motor horn. I had to use longer screws (e.g., 10mm) in some cases to achieve a proper fit."

Four failures. Only one of them is really about which spool you loaded.

Why layer lines decide all of this

An FDM part is not an isotropic solid. It is a stack of extruded roads that are fully fused within a layer and only partially fused between layers, because the polymer below has already begun to cool by the time the next pass lands on it. The practical result is that the material along a road is close to the filament's bulk strength, and the bond across layers is a fraction of it.

That interface handles compression fine. Push two layers together and the weld is irrelevant. Tension and shear are where it matters, because now you are asking the weld itself to carry the load.

The table clamp is the cleanest illustration in the whole project. It is a threaded piece that gets tightened. Tightening puts the thread flanks in shear and the shaft in tension. Print it standing up, and every layer interface lies squarely across that load path, so the part fails at the weakest plane available. Print it flat, and the load runs along the roads instead of across the welds. Same file, same filament, same printer, completely different failure behavior. That is why the community fix is an orientation change and not a material change.

The long arm sections are the same physics with a longer lever. A slender part cantilevered off a joint sees a bending moment, which puts one face in tension. If the layer lines run across that face and the wall count is low, the crack starts at the surface and walks straight along an interface. This is why the community remix adds manual supports and reorients the wrist by 45 degrees: both changes are about getting the geometry and the layer plane into a better relationship with the load.

What the official spec is actually for

The SO-ARM100 repository specifies PLA+, a 0.4 mm nozzle at 0.2 mm layer height (or 0.6 mm at 0.4 mm), and 15 percent infill. It also ships gauge STLs so you can test your printer's dimensional accuracy against a real STS3215 servo, or against a standard Lego brick if you do not have a servo yet, before you commit to a full plate.

That is a well designed default, and it deserves respect rather than a lecture. PLA+ prints on every machine anybody owns, needs no enclosure, does not warp, and is forgiving of a bed that is not perfectly level. Specifying it is what made this arm printable by tens of thousands of people instead of by the subset who own a heated chamber. It is a distribution decision, and it succeeded. It is not a claim that PLA+ is the mechanically optimal material for a cyclic-load teleoperation arm, and the project does not claim that.

Worth noting too: the widely used community print profile for the SO-101 plates on Bambu machines runs 0.2 mm layers, 2 walls, 15 percent infill. Two perimeters on a long, thin arm section is a very small load-bearing cross section. When people report layer separation on those parts, this is a large part of the reason.

Material comparison for this specific arm

Published manufacturer values, attributed. Printed parts are anisotropic, so read these as material comparisons and not as ratings of any finished part. Our full data table, including the values manufacturers decline to publish, is on our 3D printing capabilities page.

Material Honest read for an SO-101
PLA+ Genuinely fine for a demo arm on a desk, an arm that gets teleoperated gently, or a classroom set that will be rebuilt next semester anyway. Cheapest, easiest, most dimensionally predictable, no enclosure needed. Its weaknesses are low toughness and a low softening temperature, which means it is a poor choice for an arm in a hot room, in a car, or near a window in summer, and it fractures rather than yields when something goes wrong. If your arm has not broken, you do not need to change anything.
PETG Tougher than PLA and more heat tolerant, and the usual first upgrade because it needs no enclosure. The tradeoff is that it is more prone to stringing and to slightly softer detail on small features like motor pockets, which is the last place on this arm you want extra material. Good for brackets and mounts, less ideal for the tight interference features.
ABS Published 42 MPa tensile, 7.8 percent elongation at break, 95 C heat deflection with the load not published (SUNLU). The reason to run it is toughness and heat tolerance, and the reason it is not the default for hobby printers is that it needs an actively heated chamber to avoid warping and interlayer cracking on large parts. In a chamber it is an excellent structural material for this arm. On an open frame printer it will do exactly what the long arm sections already do, only worse.
ASA Published 39 +/- 4 MPa tensile, 11 percent +/- 3 elongation, 101 C +/- 2 heat deflection, load not published (SUNLU). Same use case as ABS with better published elongation and much better UV stability. The right pick if the arm lives on a cart, near a window, or anywhere outdoors.
PCTG Published 40.4 to 45.0 MPa tensile on printed specimens per ISO 527-2, heat deflection 76 C at 0.455 MPa and 64 C at 1.82 MPa per ASTM D648 (3D Fuel Pro PCTG). The number worth your attention is elongation at break: 2.6 percent to 130 percent, depending on build orientation. That is the same material and the same printer producing a fifty-fold difference in ductility based on which way the part was laid on the plate. If you read one figure in this article and remember it, make it that one.
PA12 carbon fiber Published 86 +/- 6 MPa tensile, 5800 +/- 300 MPa flexural modulus, 175 C +/- 3 heat deflection, load not published (SUNLU). Stiff and dimensionally stable, with lower moisture pickup than PA6. Use it when your complaint is deflection under load, for example a wrist that visibly sags with a payload.
PA6 carbon fiber, 20% CF Published 112 +/- 10 MPa tensile, 8600 +/- 400 MPa flexural modulus, 203 C +/- 3 heat deflection, load not published (SUNLU). The stiffest option in this list. Stiff is not tough. Carbon filled nylon resists bending very well and takes a sharp impact poorly, so an arm that gets knocked off a bench will often survive better in ABS or PCTG. Also needs a hardened nozzle and a dry spool, so it is not a casual swap.
PPA carbon fiber A carbon fiber reinforced semi-aromatic polyamide, run when a build needs more thermal headroom and lower moisture sensitivity than PA6 or PA12 nylon. It is a specialty material rather than an upgrade path for a normal desk arm: it wants a hardened nozzle, a very dry spool and a heated chamber, and it is unforgiving of a wet filament. We do not publish figures for it here because we have not confirmed them for the lot we would run. Ask and we will send the manufacturer data sheet with the quote.
TPU 95A Not a frame material, and nobody should build an arm out of it. It earns its place on the same build plate as the rigid parts: compliant fingertips and gripper pads that grip without crushing, non-marring feet, bumpers, and cable strain relief at the joints. If your gripper keeps dropping or denting what it picks up, this is the cheapest fix available and it does not require touching the arm design at all.
PEEK Published 100 MPa tensile per ISO 527 and 140 C heat deflection at 0.45 MPa per ISO 75 (3DXTech ThermaX). Almost always more material than a teleoperation arm needs. Reach for it only when a thermal, chemical or vacuum requirement makes it necessary, not to make an arm feel premium.

The honest summary: if your PLA+ arm works, keep it. If it broke, look at the orientation and wall count before you buy a different spool, because two of the four documented failures are fixed for free that way. Material becomes the answer when the arm runs a long duty cycle, carries a payload, lives somewhere warm, or gets moved and handled.

Settings that matter more than the spool

Perimeters, not infill. Stiffness and thread engagement come from the shell. A part with 2 walls and 15 percent infill and a part with 5 walls and 10 percent infill can use similar material and behave completely differently under a bending load. Our standing default is 5 perimeters at 10 percent infill for exactly this reason. Going to 100 percent infill is almost always the wrong answer: it costs hours and grams and buys very little, because the load is carried near the surface.

Solid layers are a setting, not a property. This one catches people. If a part is thinner than the combined thickness of your top and bottom solid layers, the slicer never lays down a sparse core at all, and the part comes out effectively solid. If it is thicker, the core is sparse and a large flat top can pillow over the gaps. The rule to internalize is that top plus bottom solid layer counts must be at least the part's total layer count for the part to be solid through the section, and if you want a clean large flat top over sparse infill you either add top layers or raise infill on that part alone. On the SO-101, the flat faces on the motor holders are where this shows up.

Orientation before anything else. For each part, find the plane that will see tension or shear in service, and make sure your layer lines are not lying in it. The table clamp is the worked example: flat on the bed. For the long arm sections, orient so the bending face runs along the roads, and if your slicer wants a bridge or a steep overhang there, fix the orientation rather than adding support and hoping.

Print the gauges first. The repository includes gauge STLs for a reason. Motor pockets on this arm are dimensioned for an interference fit, so a printer running 0.15 mm wide will feel like the part is simply wrong. Print the servo gauge or the Lego gauge, check the fit, and adjust before you spend a day printing a full plate. And deburr: the build log's warning about "burrs from the printing process" getting caught during assembly is real, and thirty seconds with a deburring tool on the pocket mouth saves a lot of forcing.

Screw bosses. If your M3 screws are stripping the print, more perimeters around the boss is the first change, since threads cut in a printed boss are engaging shell, not infill. A tougher material with more elongation before break helps too, and a slightly longer screw, which is what the reviewer above ended up doing, spreads the engagement over more thread.

What this means if you do not own the right printer

Every fix above assumes you can reorient parts, raise wall counts, and run a material that needs an actively heated chamber. Plenty of people building these arms are in a university lab or a startup with a machine learning budget and no shop, and the printer question is a real blocker rather than a preference.

That is the service we run. Send your files and we print them in ABS, ASA, PCTG, carbon fiber nylon, PPA-CF, TPU 95A or PEEK in Rockville, Maryland and ship domestically, with a minimum order of one and standard production of 3 to 7 business days. You can upload a file to our instant quote tool and see size, weight and price without talking to anybody. The details, including materials, file formats, what we will not do, and what we cannot promise, are on our LeRobot SO-101 printing service page. If you would rather print it yourself, everything in this article works just as well on your own machine, and the files are free from the project either way.

Frequently asked questions

What is the best material for SO-101 robot arm parts?
ABS or ASA for a working arm, PCTG if it gets handled and knocked around, carbon fiber nylon if your complaint is deflection under load, and PLA+ is genuinely fine for a demo arm on a desk. Fix orientation and wall count first, because two of the four common failures are process problems rather than material problems.

Why does my SO-101 table clamp keep breaking?
Print orientation. The author of the community replacement part states that the original "is printed in the wrong orientation by default, and breaks very easily along the layer lines," and that printing it flat on the bed resolves it. Tightening the clamp loads the layer interface in shear, which is the direction a printed part is weakest.

Why will my motor not fit in the printed part?
The motor pockets are dimensioned for an interference fit, so small differences in extrusion width or shrinkage show up as a part that will not accept the servo. Print the gauge STLs from the repository against an actual STS3215 servo before printing a full plate, and deburr the pocket mouth, since burrs from printing are a documented cause of parts catching during assembly.

Why are my screws stripping the printed part?
Threads cut into a printed boss engage the shell, not the infill, so low perimeter counts strip easily. Raise perimeters around bosses, use a material with more elongation before break, and consider a longer screw to spread engagement across more thread.

Is PLA good enough for a LeRobot arm?
Often, yes. If your arm is a desk demo, runs light duty cycles and lives in a climate controlled room, PLA+ at the official settings is a reasonable choice and the project specifies it for good reason. It becomes the wrong choice when the arm carries a payload, runs long sessions, gets moved and handled, or sits somewhere warm.

Does higher infill make SO-101 parts stronger?
Much less than people expect. Stiffness and thread engagement come mostly from perimeters, so going from 15 percent to 100 percent infill costs hours and grams for a small return. Adding walls is the higher-leverage change.

Can I print SO-101 gripper fingertips in TPU?
Yes, and it is one of the better upgrades on the whole arm. Keep the frame and the jaws rigid, and print only the contact pads or fingertips in TPU 95A. You get compliance where the arm touches the object without giving up stiffness anywhere it matters.

Should I print SO-101 parts in resin?
For a moving arm we would not. Resin gives excellent surface detail and dimensional fidelity, but standard photopolymer resins are generally more brittle than engineering thermoplastics and this arm sees repeated cyclic loading at joints and threads. If you use resin, choose a formulation the manufacturer publishes as tough or engineering grade and treat brittleness as the risk to design around.

Can I mix materials across one SO-101 arm?
Yes, and it is often the smart move. Run the load-bearing sections and the table clamp in a tougher material, put TPU on the fingertips, and leave cosmetic covers and non-structural mounts in whatever you already have on the shelf.

Cass Vega, AI Systems Specialist at DC Additive Pros

Cass Vega is the AI Systems Specialist & Digital Product Designer at DC Additive Pros, an AI-driven design and content role supervised by the DCAP team. Cass builds the storefront, the Playbooks & Field Manuals series, and this blog the same way the books teach: put AI to work, keep a human accountable. Reach the team at info@dcadditivepros.com. Educational content, not legal, financial, or professional advice.

DC Additive Pros is an independent aftermarket manufacturer in Rockville, Maryland. SO-ARM100, SO-ARM101, SO-100, SO-101, LeRobot, LeKiwi, XLeRobot and Koch are the projects and marks of their respective owners. Hugging Face, The Robot Studio, PartaBot, Seeed Studio, Waveshare, Prusa Research, Bambu Lab, SUNLU, 3D Fuel, ELEGOO, 3DXTech and Vision Miner are trademarks of their respective owners and are referenced here only descriptively, to identify open source projects, equipment, materials and the sources of published specifications and publicly posted statements. DC Additive Pros is not affiliated with, authorized by, sponsored by, or endorsed by any of them. Quoted statements are reproduced verbatim from the public pages linked in the text. Published material properties are the filament manufacturers' own figures for test specimens and are not ratings of any finished part.