mirror of
https://github.com/ThorstenBr/FloppyEmuDiskIIEnclosure.git
synced 2024-11-21 07:32:31 +00:00
Several minor improvements:
- Changed "reset button" to a small round button, while the three control buttons keep their larger/rectangular shape. The reset button is barely needed. The round shape avoids confusion when operating the device. - Minor correction of the proportions of the outer shell - to match the real Disk II more closely.
This commit is contained in:
parent
33743cd6f7
commit
93cf68a780
@ -16,6 +16,22 @@ module button()
|
||||
rotate([0,180,0]) screwPost(ButtonPegDepth, ButtonPegDiameter+2, ButtonPegDiameter, ButtonPegDepth, 1);
|
||||
}
|
||||
|
||||
// single round/reset button
|
||||
module resetButton()
|
||||
{
|
||||
$fn = 30;
|
||||
|
||||
// front part of the button
|
||||
translate([0, 0, 0])
|
||||
cylinder(r=(ButtonXWidth-3)/2, ButonZDepth);
|
||||
|
||||
// slightly larger frame around the buttons rear, to keep the button from falling through the panel
|
||||
cylinder(r=(ButtonXWidth-3+ButtonLedgeWidth)/2, SKIN);
|
||||
|
||||
// connector for the button's peg
|
||||
rotate([0,180,0]) screwPost(ButtonPegDepth, ButtonPegDiameter+2, ButtonPegDiameter, ButtonPegDepth, 1);
|
||||
}
|
||||
|
||||
module makeCableStrainRelief()
|
||||
{
|
||||
StrainReliefHeight=4+SKIN;
|
||||
|
@ -13,6 +13,16 @@ module buttonCutout()
|
||||
roundedCube(buttonXWidth, buttonYHeight, SKIN, ButtonCorners);
|
||||
}
|
||||
|
||||
// front panel hole for a round button
|
||||
module resetButtonCutout()
|
||||
{
|
||||
// add 1mm spacing, so the button moves freely (results in 0.5mm clearance on each side)
|
||||
buttonWidth = ButtonXWidth-3+0.5;
|
||||
|
||||
$fn = 20;
|
||||
cylinder(r=buttonWidth/2, SKIN);
|
||||
}
|
||||
|
||||
// test / unused
|
||||
module buttonFrame()
|
||||
{
|
||||
@ -56,7 +66,7 @@ module panelCutouts()
|
||||
{
|
||||
translate([ButtonXOfs+ButtonXWidth/2+(ButtonXSpacing)*x,
|
||||
BoxY_Height-ButtonYHeight/2-ButtonYOfs-(ButtonYSpacing)*y, 0])
|
||||
buttonCutout();
|
||||
resetButtonCutout();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,13 +10,13 @@ SKIN = 1.0; // [1: 0.1: 5]
|
||||
/* [Hidden] */
|
||||
|
||||
// Width (X) of the box
|
||||
BoxX_Width = 155*ScalingFactor; // [60: 145]
|
||||
BoxX_Width = 155.5*ScalingFactor; // [60: 145]
|
||||
|
||||
// Height (Y) of the box
|
||||
BoxY_Height = 90*ScalingFactor; // [10: 100]
|
||||
BoxY_Height = 91*ScalingFactor; // [10: 100]
|
||||
|
||||
// Depth (Z) of the box
|
||||
BoxZ_Depth = 210*ScalingFactor; // [10: 200]
|
||||
BoxZ_Depth = 219*ScalingFactor; // [10: 200]
|
||||
|
||||
// Width of the ventilation cut
|
||||
VentilationWidth = 4*ScalingFactor;
|
||||
@ -146,7 +146,10 @@ module main()
|
||||
{
|
||||
for (x = [0,1])
|
||||
for (y = [0,1])
|
||||
translate([x*ButtonXSpacing, y*ButtonYSpacing, -ButonZDepth]) button();
|
||||
if ((x!=0)||(y!=0))
|
||||
translate([x*ButtonXSpacing, y*ButtonYSpacing, -ButonZDepth]) button();
|
||||
else
|
||||
translate([x*ButtonXSpacing, y*ButtonYSpacing, -ButonZDepth]) resetButton();
|
||||
translate([-15, 20, 0]) rotate([0,0,90]) makeCableStrainRelief();
|
||||
translate([30, -15, 0]) makeRearPcbFeet();
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ LEDs = "one"; // [one:One / Activity LED,two:Both / Activity and Power LEDs]
|
||||
|
||||
/* [Internals] */
|
||||
// Base board imprint
|
||||
IMPRINT = "MADE IN GERMANY"; // 30
|
||||
IMPRINT = "TCB 9/2023"; // 30
|
||||
|
||||
// Distance of the components (when showing 'exploded' elements)
|
||||
SEPARATION = 30; // [0: 1: 100]
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user