Upgrading AO-100 to AO-101

Hello guys,

Mods: I wasn’t sure if this should have been posted in Development/Hardware, so feel free to move the topic.

I’m planning (and taking my sweet time about it :blush: ) to make a few suggested upgrades from the blog post here: Upgrade your AO-100!

I might use this topic to ask different questions, I’m wondering if I should create new topics for each specific intended upgrade?

One upgrade is changing the GT2 Timing Pulleys to 16 teeth to improve print reliability and missed steps. According to the AO-100 BOM located here, I have 36 teeth pulleys. I haven’t disassembled one to check, can I assume the AO-100 always had 36 teeth pulleys? (counting teeth on the part not covered by the belt seems to indicate so)

Now the problem is your 16 teeth pulley has been out of stock for at least 2 months. On the other hand I can source 20 teeth pulleys in any number of places. Would that still be worthwhile?

Would that one work?

These are probably obvious questions to you guys but I’m still a newbie. :blush:

I guess next I’ll need help figuring out what value to edit and replace in Configuration.h but I’ll try searching the RepRap wiki first.



This is great for your questions. If you decide to post a upgrade log, posting in Development would be awesome!

That pulley would work, but you’d need to update some things. When you change the belts and pulleys you change the amount of steps per unit for those axes. Look for this line in Configuration.h

#define DEFAULT_AXIS_STEPS_PER_UNIT   {100.5,100.5,1512,800}

The numbers that follow are for the X axis, Y axis, Z axis, and extruder.

You could use this version of the firmware to get you close, but keep in mind the X axis and Y axis numbers will be incorrect. You’ll need to calculate the steps per unit and enter that info for those entries. You’ll also want to change the last entry, the extruder value with the value found on your printer paperwork for your extruder steps or ESTEPS. If you don’t have that information you can try using the M503 command to output the current settings (may or may not work). RichRap has a good extruder calibration guide.

You mean I have to change the belts too? I thought only the pulleys needed to be changed. Or is it because your 16 teeth pulley would be compatible with the AO-100’s belts which are designed for 32 teeth pulleys, but would not be compatible with 20 teeth pulleys?

I surely will, but it will take time. I can’t dedicate as much time to 3D printing as I’d like to, so some nights my 3D printer sits idly… :cry:

Thanks for the links.

The GT2 belts you are using will work fine.


I ended up buying the 20 teeth pulleys because the Lulzbot store does not stock the 16 teeth pulleys in Toronto, and I didn’t want to pay $20 in shipping for two $7 pulleys.

Now, I need to understand something about this setting. I searched the RepRap wiki, the Marlin documentation, the whole Internet, and nowhere, NOWHERE!!! does someone explains how DEFAULT_AXIS_STEPS_PER_UNIT is to be calculated. :unamused:

I only found this blog about Sprinter configuration, and I assume it is the same calculation.

float axis_steps_per_unit[X,Y,Z,E]

These values tell the chip the number of steps the stepper motor needs to make to move the respective axis or extruder by 1mm. There are four values and they which correlate to to “the x axis”, “the Y axis”, “the Z Axis” and the “Extruder” you will notice that there are preset values here for different types of printer.
To calculate these values we need to take a few hardware variables into account and do a few calculations.
To Calculate X & Y values

  1. Motor Step Angle/Size
  2. Motor Driver Microstepping
  3. Belt Pitch
  4. Pulley Tooth Count

We can then apply the above values into the following equation to give us the steps per mm value for the X and Y Axis
Steps per mm = ((360°/Motor step size°) * (1/Driver microstepping))/(Belt pitch * Tooth count)

We use Stepper Motors with a 1.8° Step Angle and 1/16 Microstepping on the A4988 Polulo Stepper Drivers, our belts are T5 Pitched and we use 12 tooth Pulleys so our value calculates as follows :
Steps per mm = ((360°/1.8°) * (1(1/16)))/(5 * 12)
= 53.333333 Steps per MM

As this results in a recurring number we round it to the nearest non recurring number hence our value of 53.2mm

This is the value we use for X and Y axis

So I compared with Josef Prusa’s RepRap Calclulator3 and the numbers match.

Only, why is your setting in X and Y for your 16 teeth pulley 100.5 instead of 100? 100 is what I get when I calculate manually, or with the online calculator.

I’m wondering, because it may means that the value the calulator gives me for a 20 teeth pulley (80,80) is not right… :question:

The reason we set the steps at 100.5 for X and Y is to account for plastic shrinkage(about 1%) after cooling to get dimensionally accurate parts

Thanks, I was very puzzled by this!

I’m wondering about flashing my firmware. The Upgrade your AO-100! blog post gives the link to the base AO-100 firmware, which dates from 2012. Wouldn’t it be best to use the latest Marlin though?

I used that one for mine, it seems to work.

Also, looking at that blog post again reminds me. Make sure you print the replacement Z axis end stop before you tear everythign apart or you’ll end up having to cannibalize your existing one to get your machine working far enough to print again. I found that out the hard way when I upgraded mine off that very same article.

Yep, I did print it after I printed the x-ends. Did the swap last night, but it was too late to complete the bed calibration.

I’m printing a calibration piece right now, it’s a few minutes from finishing, it doesn’t look like the upgrade got rid of all the Z ribbing. :neutral_face:

I’m planning to use your TAZ-inspired x-ends, but I’ll have to source the hardware and the soldering iron, and unless I can find a Canadian supplier, I’ll have to order through my employer, because McMaster doesn’t ship to Canadian individuals anymore. So I decided in the meanwhile to make this temporary upgrade.

I’ll say this gave me confidence in my ability to tear the printer partly down and put it back together in working order. :smiley:

The taz style ends definitly help some. The biggest benifit is the removal of the z axis hysterisys that minimizes the squished first layers. Also if you don’t already have one, a dial indicator gauge and an angle bracket to temporarily attach it to the X axis carriage for bed leveling is a great investment. You can get a cheap but accurate enough one for around $20 U.S. at any hardware store. Probably can pick up the soldering iron there as well. Then you just run it across the bed until everything is dead level, back and forth X and Y. Takes all the pain out of calibration.

The heat set inserts are more of a problem to find. I never did find a local source of the small ones.

It’s amazing how scary it is to tear the working machine apart the first time. You get used to it really quick though heh. Thats another advantage of the taz style ends in general, be it the AO or a real TAZ. You can take either side of the threaded rod off without having to dissasemble your whole x end, which really saves time and makes it easy to troubleshoot.

Did you do the Z-axis motor mounts too? I’ve been debating doing those. Everything fits just fine as is, but extra clearance never hurts.

I only had time for a single calibration print last night. I was concerned because the flow of plastic seemed restricted, then I realized one of the spool holder arms was restraining the filament… I hate coils! I have to monitor the whole print to make sure the filament doesn’t jam. I salvaged 3 empty solder reels from the shop but I haven’t found the time to wind up my three 5lbs. coils.

I noticed the whole X assembly is now a lot more stable. In my calibration print the first layers were not as squished as usual, I’ll see if it’s repeatable. It’d be great if your mod minimizes it even further.

I’m planning to, but I’m having a hard time finding a metric one apart from eBay.

There’s a specialty hardware store near my work that can probably order some for me, but I was told at work we place orders to McMaster almost weekly, so I might go that route.

No, I checked clearance when I replaced my Z couplings and saw it would fit, so I kept the AO-100 ones.