Toilet key hacking
The toilet keys on the camping site consist of a plastic carrier holding a 4×3 matrix of magnets. Each magnet encodes one bit, but the pattern looks like an L-shape.
0 = S 1 = N 1 0 0 1 0 0 1 0 0 1 1 1
Someone did a draft for a 3d printed version in openscad; the magnet size is 5mm in diameter and 2mm in height.
NOTE: This is only a draft and may still need some adaption, as we didn't have enough magnets to test
y_magnet_pos = [31,40,49,58];
x_magnet_pos = [5,14,23];
magnet_spacing = 9;
magnet_dia = 5;
magnet_h = 2;
module magnet()
{
color([.6,.6,.6]) cylinder(d=5, h=2, $fn=30, center=true);
}
module camping_toilet_key()
{
difference() {
cube([28,64,4]);
translate([23,5,-.1]) cylinder(d=5, h=4.2, $fn=30);
for(y = y_magnet_pos) {
for(x = x_magnet_pos) {
translate([x, y, .8])
cylinder(d=magnet_dia+.4, h=magnet_h+.4, $fn=60);
for(xd = [-2,0,2])
translate([x + xd, y, 4.2]) cube([1,magnet_dia + 1,2], center=true);
}
translate([28/2 + 5, y, 2])
cube([28,magnet_dia + .1,magnet_h+.4], center = true);
translate([28/2 - 5, y, 2])
cube([28, magnet_dia/2, magnet_h+.4], center = true);
translate([28/2, y - magnet_spacing/2, 2])
cube([26, (magnet_spacing - magnet_dia - 1), magnet_h+.4], center = true);
}
}
}
camping_toilet_key();