Initial commit
This commit is contained in:
commit
203bc5d3ea
6 changed files with 330 additions and 0 deletions
87
Meshcore Repeater Baseplate.scad
Normal file
87
Meshcore Repeater Baseplate.scad
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
height=148;
|
||||
width=80;
|
||||
thickness=2;
|
||||
difference() {
|
||||
cube([height,width,thickness]);
|
||||
|
||||
// corner cutouts
|
||||
corner_radius=9;
|
||||
translate([0,0,-0.5]) {
|
||||
cylinder(thickness+1, corner_radius, corner_radius);
|
||||
}
|
||||
translate([0,width,-0.5]) {
|
||||
cylinder(thickness+1, corner_radius, corner_radius);
|
||||
}
|
||||
translate([height,0,-0.5]) {
|
||||
cylinder(thickness+1, corner_radius, corner_radius);
|
||||
}
|
||||
translate([height,width,-0.5]) {
|
||||
cylinder(thickness+1, corner_radius, corner_radius);
|
||||
}
|
||||
|
||||
// mounting holes
|
||||
mounting_hole_radius=1.25;
|
||||
x_distance=18;
|
||||
y_distance=3.5;
|
||||
translate([y_distance,x_distance,-0.5]) {
|
||||
cylinder(thickness+1, mounting_hole_radius, mounting_hole_radius);
|
||||
}
|
||||
translate([y_distance,width-x_distance,-0.5]) {
|
||||
cylinder(thickness+1, mounting_hole_radius, mounting_hole_radius);
|
||||
}
|
||||
translate([height-y_distance,x_distance,-0.5]) {
|
||||
cylinder(thickness+1, mounting_hole_radius, mounting_hole_radius);
|
||||
}
|
||||
translate([height-y_distance,width-x_distance,-0.5]) {
|
||||
cylinder(thickness+1, mounting_hole_radius, mounting_hole_radius);
|
||||
}
|
||||
|
||||
// battery mounting holes
|
||||
battery_mounting_hole_radius=1.25;
|
||||
for(i=[1:3]) {
|
||||
translate([i*37.5-9,28,-0.5]) {
|
||||
cylinder(thickness+1, battery_mounting_hole_radius, battery_mounting_hole_radius);
|
||||
}
|
||||
translate([i*37.5-9,width-28,-0.5]) {
|
||||
cylinder(thickness+1, battery_mounting_hole_radius, battery_mounting_hole_radius);
|
||||
}
|
||||
}
|
||||
|
||||
// xiao mounting point
|
||||
xiao_pin_header_distance=15;
|
||||
xiao_pin_header_length=17;
|
||||
y_offset=10;
|
||||
cable_tie_slot_length=6;
|
||||
translate([height-9.5-xiao_pin_header_distance,y_offset,-0.5]) {
|
||||
cube([1.5, xiao_pin_header_length, thickness+1]);
|
||||
}
|
||||
translate([height-9.5,y_offset,-0.5]) {
|
||||
cube([1.5, xiao_pin_header_length, thickness+1]);
|
||||
translate([-cable_tie_slot_length/2+1.5/2-xiao_pin_header_distance/2,-5,0]) {
|
||||
cube([cable_tie_slot_length, 2, thickness+1]);
|
||||
}
|
||||
translate([-cable_tie_slot_length/2+1.5/2-xiao_pin_header_distance/2,xiao_pin_header_length+3,0]) {
|
||||
cube([cable_tie_slot_length, 2, thickness+1]);
|
||||
}
|
||||
}
|
||||
|
||||
// sensor module mounting holes
|
||||
sensor_module_mounting_hole_radius=1.25;
|
||||
sensor_mount_distance=8;
|
||||
for(i=[1:3]) {
|
||||
translate([height-i*sensor_mount_distance-2,width-12,-0.5]) {
|
||||
cylinder(thickness+1, sensor_module_mounting_hole_radius, sensor_module_mounting_hole_radius);
|
||||
}
|
||||
translate([height-i*sensor_mount_distance-2,width-30,-0.5]) {
|
||||
cylinder(thickness+1, sensor_module_mounting_hole_radius, sensor_module_mounting_hole_radius);
|
||||
}
|
||||
}
|
||||
|
||||
// air valve cutout
|
||||
air_valve_cutout_width=10;
|
||||
translate([-0.5,width/2-air_valve_cutout_width/2,-0.5]) {
|
||||
cube([8+0.5, air_valve_cutout_width, thickness+1]);
|
||||
}
|
||||
}
|
||||
|
||||
$fn=70;
|
||||
Loading…
Add table
Add a link
Reference in a new issue