Close

OpenSCAD code

A project log for VESA compatible keyboard wall mount

I ran out of space on my desk for keyboards so I'm mounting them on my wall

benchoffBenchoff 02/06/2017 at 19:040 Comments

Want to make your own? Here's the code:

module arm(){
    rotate([-45,0,0]){
     
     
        cube([20,150,10]);
    
        translate([0,150,0])
            cube([20,10,97]);
        
        translate([0,153,90])
            rotate([45,0,0])
                cube([20,10,30]);
    }
}

module vesa(){
    
    translate([0,0,0])
        cylinder(d=4.5, h=10);
    
    translate([100,0,0])
        cylinder(d=4.5, h=10);
    
    translate([0,100,0])
        cylinder(d=4.5, h=10);
    
    translate([100,100,0])
        cylinder(d=4.5, h=10);
    
    
}

module mount(){
rotate([45,0,0])
union(){
    arm();

    translate([150,0,0])
        arm();

    translate([0,0,0])
        rotate([-45,0,0])
            difference(){
                cube([150,120,5]);
        
                translate([35,10,0])
                    vesa();
            }
            
 }
}

module brace(){
    
    union(){
        difference(){
        cube([13,75,22], center=true);
        translate([0,0,1.2])
            cube([10.3,102,20], center=true);
        
        translate([5,40,2.3])
            cube([20,20,22], center=true);
        
            translate([5,40,2.3])
            cube([20,20,22], center=true);
        
        translate([0,-55,0])
            cube([30,30,30],center=true);
        }

        translate([15.2,29,0])
        cube([20,2,22], center=true);
        
    }

}

mount();

rotate([0,0,-90])
translate([-150,110,11])
brace();

rotate([0,0,90])
translate([130,-90,11])
brace();

Discussions