Skip to content
Pieter Bos edited this page Sep 2, 2024 · 4 revisions

Welcome to the PrintBone wiki!

How to create your own trombone bell designs

Creating a trombone bell design of your own is quite easy! This guide assumes no programming knowledge and no OpenSCAD experience.

Getting up and running

  1. Download https://github.com/pieterbos/PrintBone/releases/download/v0.1.1/printbone-v0.1.1.zip. Unzip it somewhere, sometimes also called 'decompress'
  2. Go to http://openscad.org. Click 'downloads'. Scroll down to 'development snapshots' and download the version for your OS
  3. Install openscad and open it
  4. You should see a menu with green buttons. Click the green button 'open'
  5. From the unzipped directory you obtained in step 1., go to the large_tenor directory and open large_tenor.scad
  6. to the left you should see lots of parameters. To the right you should see a yellowish window with axes with buttons underneath. Find the leftmost button, with a fast-forward symbol. Press it. A low resolution trombone should appear, or a closeup of a bell.
  7. press the button to the right of the button with the hourglass. this is the button with the magnifying glass and the square.

you should now see a model of a low resolution trombone.

Editing your trombone

Now at the left of your screen are a lot of parameters. A parameter for example is:

bell_wall_thickness = 1.6;

This means the wall thickness of the bell will be 1.6 millimeters. Note the semicolon at the end of this line - if you forget it you will get an error on the next line when previewing.

Note also the file does not contain any units. All numbers are dimensions in millimeters - sorry inch-based people, you'll have to multiply everything you think of by 25.4.

First changes: neckpipe, tuning slide and slide receiver

Let's start by changing the easiest parameter first. You can search for parameters by pressing ctrl-f and typing the name (command-f if you're an OS X user like me).

Set these to what you want first:

neck_pipe_radius - the inner radius (half the diameter) of the neck pipe tuning_slide_small_radius - the smallest inner radius (half the diameter) of the tuning slide tuning_slide_large_radius - the larges inner radius (half the diameter) of the tuning slide

You do not need to define the tubing lengths or wall thicknesses or outer diameters - that's all been set in advance.

If you press the previous button again, you'll see the result in the rightmost window.

You do need to set the correct slide receiver, as the preset one is a Bach 42. Measure your slide receiver on the slide you want to use and set: slide_receiver_small_radius slide_receiver_large_radius slide_receiver_length

Set them to the measured values of the connector on your slide. You can set clearances later to make these fit.

Defining a bell shape

So, now the bell. It is defined as a number of conic, cylindric parts, and some bell-shaped curves called bessel curves. Look for the parameter called bell_input. You should see something like this:

bell_input = [
    ["CYLINDER", tuning_slide_large_receiver_inner_radius, tuning_slide_large_length+tuning_sleeve_extra_length],
    ["CONE", 10.53, 11.05, 53.36],
    ["BESSEL", 11.05, 15.07, 1.260, 150.42],
    ["BESSEL", 15.07, 22.28, 0.894, 150.42],
    ["BESSEL", 22.28, 41.18, 0.494, 96.85],
    ["BESSEL", 41.18, bell_radius, 1.110, 55.93]
];

Don't touch the first cylinder line - That's the tuning slide receiver and it scaled automatically with the values you set before!

After the first line you can change lines. You have three options:

A cylindrical section:

["CYLINDER", radius, length],

A conical section:

["CONE", upper_radius, lower_radius, length],

And a bell-shaped section, called a bessel curve or bessel horn:

["BESSEL", upper_radius, lower_radius, flare, length]

Check the first example again, you know should be able to read and understand this. It is one tuning slide receiver, one 53.36mm long cone, and four bessel curves.

The bessel curves may seem a bit more complicated, but they aren't that hard. For example, to make a (bit simplistic) 8 inch bell:

bell_input = [
    ["CYLINDER", tuning_slide_large_receiver_inner_radius, tuning_slide_large_length+tuning_sleeve_extra_length],
    ["CONE", 10.53, 11.05, 53.36],
    ["BESSEL", 11.05, 101.6, 0.8, 453.62]
];

Note that every line but the last ends with a comma, and that in the end there is a semicolon. Keep those there, if you leave one out you'll get an error when previewing or rendering.

So this is a small conical section from 10.53 to 11.05mm radius, followed by a 453.62mm long bessel curve, ending in an 8-inch bell. The bell flare parameter is 0.8.

Press the preview button again (with the fast forward sign). You should now have an 8-inch bell. If you want a wider flare, increase the flare parameter from 0.8 to a higher value. Less wide flare? Decrease the parameter.

Change the parameter called 'steps' at the top of the file to something like 100 to get a bit smoother result. Now press preview again.

More complicated bells

A real trombone bell apparently can be often approximated by a combination of about 4 or 5 bessel curves. This is like the first example. You can play around with them and see the results immediately. You can add as many curves as you like. Keep the sum of the length of these curves and any conical sections equal to 453.62mm to get a B flat-bell.

You can measure your own trombones to get an idea of the shapes.

After you have a bell you like, go to the DETAIL PARAMETERS section, and increase the resolution. If you increase it will look very smooth, but will also take longer to preview and render. Now you have designed your own trombone bell section!

Of course, many more parameters can be set, but as long as you are trying to create a B-flat bell section and you do not want to change the length of the tuning slide, you should not need to. But if you want to create for example an E-flat alto, it should be possible just by changing the parameters.

Now you have a bell design and you need to generate files to print. These are called STL files. Basically this means setting the part parameter to all the different parts, then rendering each of them with the render button (with the hourglass) and saving the STL file. There is a possibility to do this as a script as well. More about this will follow later! Generating these STL files will take a while, about 50 minutes if you do so at very high detail on my computer.

Clone this wiki locally