Sunday, November 30, 2014

Servo Spline Adapters

My transmission design for the Mini Combat Robot uses large servo gears. Unfortunately the output from these gears is a spline shaft. I had to come up with a way to easily adapt to the spline without making a sketchy connection with the servo horns that are meant for those servo gears. My first technique for making a servo spline can be done with a milling machine. It's a fairly straight forward and doesn't require special tools.

I put a "blank" shaft into a collet block. The collet block isn't required, however holding a round part vertically in a vise can be difficult to align. It also has a good chance of slipping which could break tools and ruin the part. The first thing I did was drill a set of starter holes. I used a small carbide ball end mill because it was the only tool that could make a mark smaller than the drill bit I wanted to use. Each hole corresponds to one of the teeth in the spline. I designed the holes so the outer edge would meet up with the tip of each spline tooth.

Once I made all of the starter dents, I proceeded to use the final size drill bit. Each hole was very close, but none of the holes intersected. If the holes intersect the drill bit will likely drift and break. The final step was to mill out the center. Milling out the center creates the inner part of the spline. It is important to design the geometry such that the leftover wall between the drilled holes fits between the spline teeth. I simply plunged and endmill down to the desired depth and let it swirl around to the correct diameter. This opened all of the holes drilled to the center.

This is the final shaft. The part fit snugly on the spline and didn't seem to damage the spline even under loading conditions. I used this part on the Mini Combat Robot until a design iteration forced me to a 3D printed design (I no longer had access to a mill). Any mill with CNC or even a digital readout can produce splined holes.

This is a 3D Printed replacement for the metal adapter. I needed a different pulley, but I couldn't use the metal spline shaft for the upgraded design. I decided to 3D print an adapter instead. I used the same geometry as the metal spline and simply printed a new adapter. It also slipped right on and worked first try.

Here is the 3D printed servo adapter as well as a splined shaft that copied the original servo spline. I doubt an FDM type 3D printer could produce the details required for this spline to work, so I'm glad I went with the SLA type 3D printer (Form1+). Making giant servo splines led me to test miniature servo splines.

The first part to my process to make a servo spline is getting a picture of the spline itself. I use this picture and one reference dimension (the outside diameter of the spline) to trace the spline profile. This seems to be pretty reliable and is able to get details that my calipers can't measure.

Here is a screen shot from the CAD I used for the servo spline. I get the spline dimensions by tracing the profile that comes from the drawing. It is surprisingly fast to CAD this way. The camera image reveals a lot of details that my measuring instruments won't capture.

Here is a servo spline made for a micro size servo (9g servo). The printer was able to handle the small details required to make the spline.

The gear fit perfectly onto the servo first try. I attempted to strip the spline, however I only managed to cut myself with the 3D printed gear teeth. I was unable to get the spline to skip on the servo.

For future projects using large servos I will attempt to make more metal shafts and splines. I find them more durable than the 3D printed parts. I also know the servo gears will strip before the metal spline slips. The 3D printed splines for smaller servos are too awesome. I'm still amazed the printer can handle details like that. The cool part is these splines can be put into any 3D printed part. It doesn't matter whether the part is round, square, or even a hexapod leg!


  1. Wow, awesome work. Only having an fdm printer myself, i would not dream of trying that detail. Maybe i could make something that would be closer to a friction fit.

  2. Hi JB!
    can you send me th CAD file for the spline adaptor? I would need it for my sentry gun project!
    Many thanks,

  3. Hi JB,
    I've been trying to do this exact thing for weeks, trying to find 3D models of a 2F (21t FS90R) spline online proved hopeless. so I've been trying to recreate on in NX8 during my lunch hours at work. Measured with calipers, scanned parts. even too high quality snaps with my phone set on a kind of gantry on a level surface but I am worried that the final production might come out inaccurate. As ilap asked would it be possible for you to send me a .step .prt or .dwg file of the specs? I cant quite sort them out on your pic and you are the only one it seems to have made the 21tooth spline. Ultimately I'm trying to custom print a lego gear fitted to my fitech FS90R servo. I know there are plenty of other ways I might be able to do it with a pin or something or even go a size bigger servo and compensate my designs but if you could help me out that would be awesome. Thanks

    1. Hi,

      Here is a link to a few servo spline examples. I have .STEP and .stl files. The 505 uses the drilled hole spline technique which is only good if you're trying to machine the spline. The others are meant for 3d printing. The dimensions on these were tested a few times until they worked with my 3D printer and whatever unique calibrations I have on the printer, so the dimensions might not be perfect for every printer.


      (forgot to paste the link)

    3. JB,

      Great work. I notice in the picture above where you are doing the measurements in CAD that the servo has 21 teeth, but the example HTX900 in the folder you shared has only 20 teeth. Do you have a link to the STEP model (or solidworks) for the one with 21 teeth? I also am making a part for a FS90 servo motor and this would save some time as it is a 21 tooth device with hopefully the same dimensions as the one you pictured above.


    4. I just realized that picture is actually from a single metal gear servo I bought when testing out different servos. It was the HK15178. I just added a gear I had drawn up that contained that spline.

  4. Thanks! I did a first pass on making one and printed it last night. I'll see how well it fits and also print the new one you posted. Thanks again!

  5. I got such a good information on this topic its very interesting one. You made a good site and I have found a similar website, please check this one Splined Bushings visit the site to know more. Regards, from

  6. You made such an interesting piece to read, giving every subject enlightenment for us to gain knowledge.
    Bevel Gear Suppliers

  7. The post is written in very a good manner and it entails much useful information for me.
    Bevel Gear Suppliers