Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Keys are not aligned #6

Open
maciejmatczak opened this issue Jul 9, 2019 · 1 comment · May be fixed by #7
Open

Keys are not aligned #6

maciejmatczak opened this issue Jul 9, 2019 · 1 comment · May be fixed by #7

Comments

@maciejmatczak
Copy link

maciejmatczak commented Jul 9, 2019

Hello /u/wootpatoot.

I found out this topic: https://www.reddit.com/r/MechanicalKeyboards/comments/89dcin/help_lets_split_row_spacing/
aaand as I am planning to get the PCBs for this lovely keyboard, I double checked the design. So just via checking out the drill file, I can see that keys are misaligned.

I hooked up some small python script and that's what we have:

Python script
from pathlib import Path


data = (Path(__file__).parent.resolve() / 'switch-drills.txt').read_text().split()

xs = []
ys = []

for coord in data:
    x, y = coord.split('Y-')
    x = x.replace('X', '')
    x, y = int(x), int(y)

    xs.append(x)
    ys.append(y)

xs = sorted(set(xs))
ys = sorted(set(ys))

print('used xs:', xs)
print('used ys:', ys)

for x1, x2 in zip(xs[:-2], xs[1:]):
    print(f'x2 - x1 = {x2-x1}')

for y1, y2 in zip(ys[:-2], ys[1:]):
    print(f'y2 - y1 = {y2-y1}')

And:

Extracted drills for main switch holes
X017913Y-018445
X017913Y-033465
X017913Y-041004
X017933Y-025965
X025413Y-018445
X025413Y-025945
X025413Y-033445
X025413Y-040945
X032913Y-018445
X032913Y-025945
X032913Y-033445
X032913Y-040945
X040413Y-018445
X040413Y-025945
X040413Y-033445
X040413Y-040945
X047913Y-018445
X047913Y-025945
X047913Y-033445
X047913Y-040945
X055413Y-018445
X055413Y-025945
X055413Y-033445
X055413Y-040945

Output of "analysis" looks like that:

used xs: [17913, 17933, 25413, 32913, 40413, 47913, 55413]
used ys: [18445, 25945, 25965, 33445, 33465, 40945, 41004]
x2 - x1 = 20
x2 - x1 = 7480
x2 - x1 = 7500
x2 - x1 = 7500
x2 - x1 = 7500
y2 - y1 = 7500
y2 - y1 = 20
y2 - y1 = 7480
y2 - y1 = 20
y2 - y1 = 7480
  • we should have 6 X coords, we have 7
  • we should have 4 Y coords, we have 7

Don't get me wrong, this "20" error is like 0.0508 millimeters, so I guess it's not a deal breaker :) as looot of boards got already successfully created. But it's maybe something you would like to address.

@mukko mukko linked a pull request Oct 31, 2019 that will close this issue
@mukko
Copy link

mukko commented Oct 31, 2019

Hello @maciejmatczak

I tried resolve this issue #7 .
Could you check it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants