diff --git a/printer_mods/README.md b/printer_mods/README.md index 7a6aa985d..62be65bb5 100644 --- a/printer_mods/README.md +++ b/printer_mods/README.md @@ -174,6 +174,7 @@ like so: |mjoaris |[10x11 Cable Chain Endcaps](./mjoaris/10x11_Cable_Chain_Endcaps) |Printable Endcaps for 10x11 Cable Chains |:x: |:heavy_check_mark: |:heavy_check_mark: |:x:| | |[Mini12864 LCD Mount](./mjoaris/Mini12864_LCD_Mount_for_V2.4) |Swiveling case for the Fysetc Mini12864 LCD |:x: |:grey_question: |:heavy_check_mark: |:x:| |Mosher|[Door hinges with M3 screws shafts](./mosher/m3_door_hinges) |Simple mod of print in place door hinges, which uses m3 screws as shafts. |:x:|:x:|:heavy_check_mark:|:x:| +|mpfl |[V0.1 OLED-skirt](./mpfl/V0.1_skirt_OLED) |V0.1 skirt with 0.96" OLED|:heavy_check_mark: |:x: |:x: |:x:| |MrBean66| [SKR Pro DIN Mount](./MrBean66/SKR_PRO_Mount/) |Simple mod to mount the SKR Pro board from BTT to a DIN rails. |:x:|:heavy_check_mark:|:heavy_check_mark:|:x:| |Nashuar|[V0 Dragon Toolhead M2.5x8](./Nashuar/V0_Dragon_ToolheadStockScrews) |This toolhead uses the stock M2.5 screw that came with the dragon hotend |:heavy_check_mark:|:x:|:x:|:x:| |natewalck |[V1.8 Jigs](./natewalck/v1.8_Jigs) |Jigs for assembling V1.8 |:x: |:heavy_check_mark: |:x: |:x:| diff --git a/printer_mods/mpfl/V0.1_skirt_OLED/README.md b/printer_mods/mpfl/V0.1_skirt_OLED/README.md new file mode 100644 index 000000000..100e79fd7 --- /dev/null +++ b/printer_mods/mpfl/V0.1_skirt_OLED/README.md @@ -0,0 +1,8 @@ +# V0.1 0.96" OLED skirt + +![Crappy photo](photo.png) + +Inspired by [`madros/V0_skirt_OLED`](https://github.com/VoronDesign/VoronUsers/tree/master/printer_mods/madros/V0_skirt_OLED), but for the V0.1. Please see that directory for installation instructions - no need to repeat them here. + +OpenSCAD file provided if you want to customise (perhaps you'd like to replace that Voron logo with your serial). +You will need to grab [`Cowling_LOGO_ONLY_x1.STL`](https://github.com/VoronDesign/Voron-0/blob/V0.1/STLs/Toolheads/Mini_Afterburner/Cowling_LOGO_ONLY_x1.STL) and [`Skirt_x3.STL`](https://github.com/VoronDesign/Voron-0/blob/V0.1/STLs/Skirt_x3.STL) from [`VoronDesign/Voron-0`](https://github.com/VoronDesign/Voron-0/releases/tag/V0.1). diff --git a/printer_mods/mpfl/V0.1_skirt_OLED/photo.png b/printer_mods/mpfl/V0.1_skirt_OLED/photo.png new file mode 100644 index 000000000..fb712d355 Binary files /dev/null and b/printer_mods/mpfl/V0.1_skirt_OLED/photo.png differ diff --git a/printer_mods/mpfl/V0.1_skirt_OLED/v0.1-skirt-oled.scad b/printer_mods/mpfl/V0.1_skirt_OLED/v0.1-skirt-oled.scad new file mode 100644 index 000000000..8fdea1793 --- /dev/null +++ b/printer_mods/mpfl/V0.1_skirt_OLED/v0.1-skirt-oled.scad @@ -0,0 +1,115 @@ +bezel = 0.4; +bezel_h = calculate_bezel(bezel); +screen_bezel = 4; +screen_bezel_h = calculate_bezel(screen_bezel); +prototype = false; + +standoff_screw_diameter = 2.1; +standoff_outer_diameter = standoff_screw_diameter + 2; + +difference() { + union() { + stock_skirt(); + translate([-(27.5+10+2)/2, 0.5, bezel]) + oled_holder_positive(); + } + translate([-28.6/2, 3, 2]) + oled_holder_negative(); + if (prototype) { + translate([25, -10, -10]) + cube([100,50,50]); + mirror([1,0,0]) + translate([25, -10, -10]) + cube([100,50,50]); + } + translate([-30,1,-0.01]) + scale([0.5, 0.5, 1]) + import("Cowling_LOGO_ONLY_x1.STL"); +} + +module stock_skirt() { + translate([-110,-41.5,0]) + import("Skirt_x3.STL"); + mirror([1,0,0]) + translate([-110,-41.5,0]) + import("Skirt_x3.STL"); +} + +module oled_proxy() { + translate([5.5/2,6.37,-1]) + color("black") + cube([22,11,1]); + difference() { + color("green") + cube([27.5, 27.8, 1.2]); + translate([2,2,-0.4]) + cylinder(d = standoff_screw_diameter, h=2, $fn=30); + translate([2,25.8,-0.4]) + cylinder(d = standoff_screw_diameter, h=2, $fn=30); + translate([25.5,25.8,-0.4]) + cylinder(d = standoff_screw_diameter, h=2, $fn=30); + translate([25.5,2,-0.4]) + cylinder(d = standoff_screw_diameter, h=2, $fn=30); + + } +} + +module oled_holder_positive() { + minkowski() { + cube([27.5+10+2-bezel_h, 27.8+6+2-bezel, 3-2*bezel]); + rotate([0,45,0]) + cube([bezel_h,bezel_h,bezel_h]); + } + translate([7.95,6,2]) + screen_standoff(); + translate([7.95,29.8,2]) + screen_standoff(); + translate([31.45,29.8,2]) + screen_standoff(); + translate([31.45,6,2]) + screen_standoff(); +} + +module oled_holder_negative() { + difference() { + union() { + cube([28.5, 31, 10]); // PCB cutout + translate([2.5,3.5,-1]) + cylinder(d = standoff_screw_diameter, h = 4, $fn = 30); + translate([2.5,27.3,-1]) + cylinder(d = standoff_screw_diameter, h = 4, $fn = 30); + translate([26,27.3,-1]) + cylinder(d = standoff_screw_diameter, h = 4, $fn = 30); + translate([26,3.5,-1]) + cylinder(d = standoff_screw_diameter, h = 4, $fn = 30); + } + translate([2.5,3.5,-1]) + screen_standoff(); + translate([2.5,27.3,-1]) + screen_standoff(); + translate([26,27.3,-1]) + screen_standoff(); + translate([26,3.5,-1]) + screen_standoff(); + } + // Screen cutout + translate([3.5/2-screen_bezel,6.37,-12]) + minkowski() { + cube([25-screen_bezel_h,14-screen_bezel_h,0.1]); + minkowski() { + rotate([0,45,0]) + cube(screen_bezel_h); + rotate([45,0,0]) + cube(screen_bezel_h); + } + } +} + +module screen_standoff() { + difference() { + cylinder(d = standoff_outer_diameter, h = 3, $fn = 30); + cylinder(d = standoff_screw_diameter, h = 4, $fn = 30); + } +} + +function calculate_bezel(bezel) = ((bezel*bezel)*2)^0.5; \ No newline at end of file diff --git a/printer_mods/mpfl/V0.1_skirt_OLED/v0.1-skirt-oled.stl b/printer_mods/mpfl/V0.1_skirt_OLED/v0.1-skirt-oled.stl new file mode 100644 index 000000000..d58370bc1 Binary files /dev/null and b/printer_mods/mpfl/V0.1_skirt_OLED/v0.1-skirt-oled.stl differ