+/* Create screw holes for the oled screen */
+module oled_holes(hole_radius) {
+ translate([0,85]) {
+ translate([-oled_width/2,-oled_height/2]) {
+ translate([0, oled_height]) {
+ screw_hole(hole_radius, washer_radius);
+ }
+ translate([oled_width, oled_height]) {
+ screw_hole(hole_radius, washer_radius);
+ }
+ translate([oled_width, 0]) {
+ screw_hole(hole_radius, washer_radius);
+ }
+ screw_hole(hole_radius, washer_radius);
+ }
+ }
+ oled_passthrough();
+}
+
+/* Passthrough in switch plate for the OLED cables */
+module oled_passthrough() {
+ translate([0, 97]) {
+ square([14, 8], center=true);
+ }
+}
+
+/* Create screw holes for the pointer module */
+module pointer_holes(hole_radius) {
+ rotate(angle) {
+ translate([column_spacing*1.95, row_spacing*2.5]) {
+ translate([-pointer_width/2,-pointer_height/2]) {
+ translate([0, pointer_height]) {
+ screw_hole(hole_radius, washer_radius);
+ }
+ translate([pointer_width, pointer_height]) {
+ screw_hole(hole_radius, washer_radius);
+ }
+ translate([pointer_width, 0]) {
+ screw_hole(hole_radius, washer_radius);
+ }
+ screw_hole(hole_radius, washer_radius);
+ }
+ }
+ }
+ pointer_passthrough();
+}
+
+module pointer_passthrough() {
+ rotate(angle) {
+ translate([column_spacing*1.95-4, 16+row_spacing*2.5]) {
+ square([pointer_width+5, 15], center=true);
+ }
+ }
+}
+
+// Arduino Pro mini
+module promini(){
+ square([20, 30], center=true);
+}
+
+module prominis(){
+ translate([-18, 60]) {
+ rotate(-angle-90) {
+ promini();
+ }
+ }
+ translate([30, 95]) {
+ rotate(90) {
+ promini();
+ }
+ }
+}
+