SpeakerCalc is a graphing calculator that supports do-it-yourself cabinet design for a woofer or subwoofer loudspeaker system. It makes use of the Thiele-Small parameters provided by speaker manufacturers, and displays various response curves such as sound intensity levels and cone excursion. Closed-box, ported, and passive radiator designs can be analyzed. The results help to evaluate driver selection, cabinet size, and other enclosure construction choices. Crossover design is not covered. There are several Web sites and commercial software products that offer similar analyses, but SpeakerCalc is meant to be particularly easy to use.

Among SpeakerCalc's advanced features are real-time continuously plotted feedback on parameter adjustments, including off-axis directivity effects, Thiele alignment, and ease of parameter units conversions.

SpeakerCalc for Mac OS X 10.11 or later is for sale on the Apple App Store. For support or comments, please send email to Jon, at j.millen@icloud.com.

The program includes this Help file, which contains more detailed information. The FAQ section below may also help.

Version 1.5 adds the new Alignment feature: the app will suggest loudspeaker enclosure parameters based on the Thiele alignment table. Use the Alignment button on the design parameter panel. There are also minor bug fixes for the driver list.

Version 1.4 improved driver selection. Drivers are listed independently, like designs. There are more, and the list includes some passive radiators. (1.4.1 restores compatibility with 10.11.)

Version 1.3 improved design-save handling. In particular, the dialogs are simpler, and a design save immediately after a parameter value text field modification captures the modified value. In that version, as well as the previous, a right click on the design list brings up a save/delete menu. Version 1.3 also fixed a bug that disabled the Delete... buttons.


How to save, rename, and delete new drivers

To create a driver, select any similar driver, edit its parameters as desired, and save the resulting new driver specification with a new name. To rename a driver, save it under the new name and then delete the original (if it is not built in). To delete a driver, select it and use the Delete button. Any design that used that driver will still specify the same driver name, but the next time it is loaded, a warning dialog will appear and a new driver should be selected. A driver is assigned to the current design with the "Use this driver" button.

A passive radiator is created like a driver, but it must have a name ending in "-PR". Any electrical parameters, like Qes, are ignored.