Main > Lightguns
Alien extermination guns - ali express - UK - trusted sellers and tips
dgrace:
--- Quote from: PL1 on August 18, 2025, 01:19:23 am ---
--- Quote from: dgrace on August 17, 2025, 11:24:16 pm ---Curious if anyone has any 3d print files they'd be willing to share for the alien gun cover. Thanks in advance.
--- End quote ---
How about this one?
thingiverse.com/thing:3949905
Scott
--- End quote ---
Tried that. Unfortunately it only works with the Aliens extermination plastic control panel from AliExpress.
https://a.aliexpress.com/_mNAVR0V
PL1:
If you can provide precise X-, Y-, and Z-axis measurements for the inside of the cover and how large of a slot you need on the top, it is fairly easy to make a 3d printable shell in OpenSCAD.
Here's the code for a KADE MiniConsole+ cover that I designed six years ago.
- Should be easy to resize and move the holes from the ends to the top/bottom.
- Print the cover halves as oriented. The hole in the "diving board" tab lines up with the hole on the thin flange of the other half.
--- Code: ---// KADE miniConsole+ case (WIP)
// Variables are estimates -- awaiting accurate measurements. Port openings have extra wiggle room.
/////////////////////////////
// Define variables
/////////////////////////////
screwdiameter = 4; // Screw hole diameter
PCBwidth = 60; // PCB width
PCBlength = 80; // PCB length
PCBthick = 1.8; // PCB thickness
componentheight = 22; // Component height
USBoffset = 10; // Distance from PCB edge to USB
RJ45offset = 8; // Distance from PCB edge to RJ45
DSUBoffset = 9; // Distance from PCB edge to left side of D-Sub15
SecHalfMove = 60; // Y-axis distance to move the second half of the case
// Number of fragments (polygon sides) used to render a full circle.
$fn = 180; // Default = 180 Typical range = 6 - 360
// 6 will render a circular hole as a hexagon, 8 will render a circular hole as an octagon.
// Lower the number for faster rendering, raise the number for smoother rendering.
/////////////////////////////
// Make the part
/////////////////////////////
/////////////////////////////
// RJ-45 and USB side of case
/////////////////////////////
difference(){ // Case body minus hollow, PCB slot, RJ-45 and USB holes
// Case body
hull() {
translate([PCBwidth+14, 8+PCBthick+componentheight, 1+PCBlength/4])
cylinder(h=2+PCBlength/2, d=4, center=true);
// Upper right cylinder
translate([14, 8+PCBthick+componentheight, 1+PCBlength/4])
cylinder(h=2+PCBlength/2, d=4, center=true);
// Upper left cylinder
translate([PCBwidth+14, 2, 1+PCBlength/4])
cube([4,4,2+PCBlength/2], center=true);
// Lower right cube
translate([14, 2, 1+PCBlength/4])
cube([4,4,2+PCBlength/2], center=true);
// Lower left cube
} // End case body
//
// Holes to remove from case
// Upper hollow
color("green") translate([14+PCBwidth/2, 6+(PCBthick+componentheight)/2, 5+PCBlength/4])
cube([PCBwidth-6,PCBthick+componentheight,5+PCBlength/2], center=true);
// Lower hollow
color("green") translate([14+PCBwidth/2, 4, 5+PCBlength/4])
cube([PCBwidth-6,3,5+PCBlength/2], center=true);
// PCB slot
color("white") translate([14+PCBwidth/2, 4+PCBthick, 5+PCBlength/4])
cube([PCBwidth+0.2,PCBthick,5+PCBlength/2], center=true);
// USB hole
color("blue") translate([7+PCBwidth-USBoffset, 9.7+(PCBthick*1.5), 5])
cube([14,12,12], center=true);
// RJ45 hole
color("brown") translate([22+RJ45offset, 11.7+(PCBthick*1.5), 5])
cube([16,16,12], center=true);
} // End case body minus hollow, PCB slot, RJ-45 and USB holes
//
difference(){ // Left mount tab minus screw hole
// Left mount tab
translate([6, 1.5, 1+PCBlength/4])
cube([12, 3, 2+PCBlength/2], center=true);
// Screw hole
translate([6, 2.5, (2+PCBlength/2)-(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
} // End left mount tab minus screw hole
//
difference(){ // Right lower mount tab minus screw hole
// Right lower mount tab
translate([22+PCBwidth, 1.5, 1+PCBlength/4])
cube([12, 3, 2+PCBlength/2], center=true);
// Screw hole
translate([22+PCBwidth, 2.5, (2+PCBlength/2)-(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
} // End right lower mount tab minus screw hole
//
difference(){ // Right upper mount tab minus screw holes
// Right upper mount tab
translate([22+PCBwidth, 4.5, 2+PCBlength/2])
cube([12, 3, 4+PCBlength], center=true);
// Screw hole 1
translate([22+PCBwidth, 2.5, (2+PCBlength/2)-(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
// Screw hole 2
translate([22+PCBwidth, 2.5, (2+PCBlength/2)+(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
} // End right lower mount tab minus screw holes
//
/////////////////////////////
// DSub15 side of case
/////////////////////////////
difference(){ // Case body minus hollow, PCB slot, and DSub15 hole
// Case body
hull() {
translate([PCBwidth+14, 8+PCBthick+componentheight+SecHalfMove, 1+PCBlength/4])
cylinder(h=2+PCBlength/2, d=4, center=true);
// Upper right cylinder
translate([14, 8+PCBthick+componentheight+SecHalfMove, 1+PCBlength/4])
cylinder(h=2+PCBlength/2, d=4, center=true);
// Upper left cylinder
translate([PCBwidth+14, 2+SecHalfMove, 1+PCBlength/4])
cube([4,4,2+PCBlength/2], center=true);
// Lower right cube
translate([14, 2+SecHalfMove, 1+PCBlength/4])
cube([4,4,2+PCBlength/2], center=true);
// Lower left cube
} // End case body
//
// Holes to remove from case
// Upper hollow
color("green") translate([14+PCBwidth/2, 6+(PCBthick+componentheight)/2+SecHalfMove, 5+PCBlength/4])
cube([PCBwidth-6,PCBthick+componentheight,5+PCBlength/2], center=true);
// Lower hollow
color("green") translate([14+PCBwidth/2, 4+SecHalfMove, 5+PCBlength/4])
cube([PCBwidth-6,3,5+PCBlength/2], center=true);
// PCB slot
color("white") translate([14+PCBwidth/2, 4+PCBthick+SecHalfMove, 5+PCBlength/4])
cube([PCBwidth+0.2,PCBthick,5+PCBlength/2], center=true);
// DSub15 hole
color("blue") translate([-6+PCBwidth-DSUBoffset, 10.7+(PCBthick*1.5)+SecHalfMove, 5])
cube([40,14,12], center=true);
} // End case body minus hollow, PCB slot, and DSub15 hole
//
difference(){ // Left mount tab minus screw hole
// Left mount tab
translate([6, 1.5+SecHalfMove, 1+PCBlength/4])
cube([12, 3, 2+PCBlength/2], center=true);
// Screw hole
translate([6, 2.5+SecHalfMove, (2+PCBlength/2)-(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
} // End left mount tab minus screw hole
//
difference(){ // Right lower mount tab minus screw hole
// Right lower mount tab
translate([22+PCBwidth, 1.5+SecHalfMove, 1+PCBlength/4])
cube([12, 3, 2+PCBlength/2], center=true);
// Screw hole
translate([22+PCBwidth, 2.5+SecHalfMove, (2+PCBlength/2)-(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
} // End right lower mount tab minus screw hole
//
difference(){ // Right upper mount tab minus screw holes
// Right upper mount tab
translate([22+PCBwidth, 4.5+SecHalfMove, 2+PCBlength/2])
cube([12, 3, 4+PCBlength], center=true);
// Screw hole 1
translate([22+PCBwidth, 2.5+SecHalfMove, (2+PCBlength/2)-(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
// Screw hole 2
translate([22+PCBwidth, 2.5+SecHalfMove, (2+PCBlength/2)+(PCBlength/2-8)])
rotate([90, 0, 0])
cylinder(h=10, d=screwdiameter, center=true);
} // End right upper mount tab minus screw holes
//
--- End code ---
Scott
Howard_Casto:
It feels like 3d printing might be overkill. Most positional guns have a simple metal cover, usually a rectangle with the corners lopped off.
Navigation
[0] Message Index
[*] Previous page
Go to full version