This is a customizable dispenser for Dove bar soap. The included design is for 8 bar storage which is the largest that will print in an Ender 3. Boxes are loaded from the top and pulled out from the bottom with an indicator windows showing how many boxes are stored.
You can actually store 9 boxes because the Z dimensions are pretty generous and it adds up.
The tolerance is a buffer around the box for both X and Y because there is a slight variation in the size of the bars of soap I measured and I also didn't want bars to be stuck in the dispenser. You could probably zero the tolerance in X and still be fine but the Y is pretty good. Ideally I'd redesign it with separate X and Y tolerances. My recommendation is to leave the tolerance alone and adjust the width of the bar instead.
The uploaded .stl was created with the following parameters:
soap_width = 65.12; // 148 (lines) 0.44 (line width)
soap_length = 92.84; // 211 (lines) 0.44 (line width)
soap_height = 28; // 140 (lines) * 0.2 (line width)
number_of_soaps = 8;
wall_thickness = 2.64; // 6 (lines) * 0.44 (line width)
// Distance around soap box. Increase if too tight. Decrease if too loose.
tolerance = 2.1;
If you want to store soap that comes in a box instead of a thin wrapper, try my other thing:
Print with internal supports for the lower cutout and the top of the indicator window. The bar release section is very wide and you will get drooping if you don't use supports there. The indicator window isn't as important.