summaryrefslogtreecommitdiff
path: root/mech
AgeCommit message (Collapse)Author
2024-02-02Switch completely to CERN-OHL-Sxengineering
The CERN Open Hardware License is not restricted to mechanical or electrical design files but instead has a very wide scope (see section 1.3 of the OHL). Thus it can be applied to all contents of this repository. Having only one license makes the license structure for this project way easier. Since the OHL is written with hardware in mind it likely fits better to this open hardware project.
2024-01-27mech: Fix chinch hole positionxengineering
2024-01-26mech: Fix wrong case y dimension calculationxengineering
The y dimension of the shell connectors was assumed to be bolt_l. But this ignores that their thickness is bolt_l-t because the bolt has to go through the shell with thickness t before entering the shell connector.
2024-01-10mech: Rework front panelxengineering
The positions of the connectors had to be adapted to the new PCB case dimensions. Furthermore the micro USB port which is built in to supply the device with power is now the only visible micro USB port from the outside. The other one is unused and could lead to confusion. User might plug in the power cable into the wrong port. Hiding this misleading USB port is an elegant way to avoid this problem. Developers can still open the device to make use of that port if required.
2024-01-09mech: Adapt thickness and spacingxengineering
The front panel has to be very close and thin so that USB and HDMI cables can still be connected when only the ports are cut out of the panel.
2024-01-09mech: pcb_case: Add spacersxengineering
Since a proper norm-based distance bolt was not found printing spacers is the easiest way to make the case producable independent of part availability.
2024-01-09mech: pcb_case: Align connector_z and bolt lengthxengineering
This makes sure that the bolts inside the connectors align with them. Thus the bolts do not stick inside the case which might lead to PCB collisions.
2024-01-09mech: pcb_case: Fix height calculationxengineering
The height should take into account that the shell is two instead of one times the thickness high. This is relevant for the vertical spacing.
2024-01-03mech: Add assembly to mech build targetxengineering
The CAD model of the full assembly might be useful to be included in other projects or CAD files.
2024-01-03mech: Leave STL files inside build folderxengineering
Most users will not own the default printer and thus cannot work with the built gcode files with the default slicer configuration. It might be easier for those users to manually slice the STL instead of modifying the soundbox source code.
2024-01-03Move 'clean' target to root-level Makefilexengineering
This target removes the build directory and is thus repository-global.
2024-01-03mech: Switch to custom front panelxengineering
The front panel needs holes for the HDMI, micro USB and cinch connectors of the Raspberry Pi Zero W.
2024-01-02mech: Fix protruding boltsxengineering
2024-01-02mech: pcb_case: Switch shell to PCB-based paramsxengineering
After switching the panel to PCB-based dimensions the shell follows with this commit.
2024-01-02mech: pcb_case: Switch panel to PCB-based paramsxengineering
The whole case should move from case- to PCB-based parameters.
2024-01-02mech: Add PCB-oriented parametersxengineering
The long term goal is to switch from case-oriented parameters to PCB-oriented parameters to simplify re-using the pcb_case library.
2024-01-02mech: Move from multiple to single production filexengineering
This makes the file structure simpler and makes it easy to produce the whole case in one run.
2024-01-02mech: Fix margin above PCBxengineering
This value used to consider only the required space for the Raspberry Pi Zero W board, not for the required HifiBerry board.
2024-01-02mech: Set correct position for PCBxengineering
2024-01-02mech: pcb_case: Visualize PCBxengineering
This will help to identify calculation issues by human visual inspection. The PCB is not yet aligned.
2024-01-02mech: pcb_case: Fix bug in tolerance_tests.scadxengineering
Without the bolt_ds_tol the drilling is too tight to be used for tolerance testing without drilling manually.
2024-01-02mech: pcb_case: Adapt panel tolerancexengineering
Based on tolerance test printing.
2024-01-02mech: pcb_case: Adapt tolerancesxengineering
Result from test print.
2024-01-02mech: pcb_case: Adapt tolerances for panelxengineering
This is the result from a tolerance test printing.
2024-01-02mech: pcb_case: Set tolerance steps to +/- 2xengineering
Reducing from +/- 3 to +/- 2 reduces printing time for the tolerance test.
2024-01-02mech: pcb_case: Remove unnecessary height variablexengineering
2024-01-02mech: pcb_case: Set steps size to 0.15 mmxengineering
The printer resolution is set to 0.15 mm so this is a useful step size.
2024-01-02mech: pcb_case: Apply tolerances to PCB case partsxengineering
This makes the results of tolerance tests available for the actual PCB case.
2024-01-02mech: pcb_case: Use one panel in tolerance testxengineering
There used to be two panels but this is not required.
2024-01-02mech: pcb_case: Fix tolerance_tests.scadxengineering
The width and height tolerance test was unusable because the thickness tolerance was not added. Thus the test part did not fit inside the slot.
2024-01-02mech: pcb_case: Test with external tolerancesxengineering
The current tolerance values should be written down inside the files covering the related parts. The tolerance_tests.scad file should include those values.
2024-01-02mech: pcb_case: Remove nut_rxengineering
nut_d should be used exclusively to avoid handling to alternatives for the same parameter.
2024-01-02mech: pcb_case: Move tolerance tests to one filexengineering
This makes the file structure and module naming simpler and allows to easily print all tolerance tests at once. This is helpful to validate a specific printer setup.
2024-01-02mech: pcb_case: Add panel size tolerance testxengineering
This allows to check the tolerances for panel width and length.
2024-01-02mech: pcb_case: Add panel thickness tolerance testxengineering
This tests makes it easier to fine-tune the slot width which holds one of the two panels.
2024-01-02mech: pcb_case: Add bolt_tolerance_test.scadxengineering
This should make sure the right hole diameter is selected for bolts.
2024-01-02mech: pcb_case: Specify bolt as ISO 4762 M3x10xengineering
This bolt is a good starting point for most PCB cases.
2024-01-02mech: pcb_case: Set $fn variables for cylindersxengineering
This special variable decides on the level of detail these cylinders are rendered with. Since this depends also on the size and thus on the individual cylinder it is also set per cylinder individually.
2024-01-02mech: Adapt nut_d_tol based on test printxengineering
2024-01-02mech: Enable printer configurationxengineering
The printer configuration should not only be added to the repository but instead should also be used for the default Make-based builds of mechanical parts.
2024-01-02mech: Add slicer config anycubic_i3_mega_s.inixengineering
Adding a slicer configuration is important to have reproducable printing results. While a default configuration should be sufficient to print the part roughly it is especially important for correct tolerances that the printer settings are exactly the same. Starting with the i3 Mega S provides only configuration for one 3D printer. Nevertheless additional configurations for other printers can be added easily.
2024-01-02mech: Stop build on openscad warningsxengineering
It is quite easy to add bugs to *.scad files and miss them. Warnings can be hidden inside the long log output. This commit will ensure that bugs are detected earlier.
2024-01-02mech: pcb_case: Fix bug if no sockets are givenxengineering
2024-01-02mech: Order include statements before usexengineering
2024-01-02mech: Fix wrong file referencexengineering
2024-01-02mech: pcb_case: Fix nut_tolerance_test.scadxengineering
The holes used to be all the same size. This is clearly a bug since the test's intention is to check different sizes.
2024-01-02mech: pcb_case: Move tolerance test for nut to own filexengineering
That way it is easier to get that the test is built and not nut when building the corresponding file.
2024-01-02mech: Rename common.scad to parameters.scadxengineering
The old name was not descriptive and now the file contains only parameters.
2024-01-02mech: Add use statements only where requiredxengineering
This avoids unrequired usage of other source files and cleans up the common.scad file.
2024-01-02mech: Remove global $fa und $fs variablesxengineering
According to the 'Mastering OpenSCAD' [1] book it is not recommended to set these variables globally. They should be used as local as possible and only if needed. This rule makes sense to allow making the model as rough as possible and only increase the detail level if required to reduce build times. [1]: https://mastering-openscad.eu