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

Looking for Design Input #6

Open
7 tasks
Chris-Johnston opened this issue Dec 21, 2017 · 0 comments
Open
7 tasks

Looking for Design Input #6

Chris-Johnston opened this issue Dec 21, 2017 · 0 comments
Labels

Comments

@Chris-Johnston
Copy link
Owner

Chris-Johnston commented Dec 21, 2017

Now that I've been able to come back to this project, there are a few outstanding issues that need to be addressed. I've heard from a few that they'd be interested in seeing this project as a kit, but there are a few things I want to sort out beforehand.

I would appreciate any opinions on how I should move forward in continuing to design this. The goal is to make this approachable for newcomers who want to try it, and possibly get this ready to be manufactured and bundled with all the required parts as a DIY kit. It should be compatible with the current Arduino code, and down the line also compatible with the QMK firmware (see branch: 865c18a , PR #7 ).

Choice of Microcontroller
I've been considering a few different options.

  • ATTiny85. Small and cheap, but with a limited amount of memory and I/O, I don't think you can even load QMK firmware on it. Probably doesn't work for this purpose.
  • Knockoff Pro Micro. These are also very cheap, at around ($3-5) a piece. They offer more than what is needed in terms of I/O. Their onboard LEDS are a bit too bright and get annoying, and there is no reset switch. If this is used with QMK, re-flashing would probably require a jumper (which I could add to the PCB).
  • Teensy 2.0. These are common among custom DIY keyboards, so there's plenty of support. You could re-use these as long as you have female headers. They are also smaller than the pro micro. The price at around $20 per unit is the biggest factor here, I think that hurts the "novelty" nature of the idea.
  • Get some ATMega32u4's as surface mount components and put it right on the board. This would be great, but sounds tricky. I want something that's going to be reliable and easy to build.

Display / No Display / RGB LEDs
While those SSD1306 displays are cool, there are other options that can be used.

  • Keep the OLED display from the original keyboard. This allows for animations and other stuff. Modifying the QMK firmware to support it appears possible (it's been a while since I've tried last), but might be tricky. Also, finding a library that has a license I can use. Designing a board and case may be tricky.
  • Use 8 surface mount LEDs, or a package containing 8 surface mount LEDs, like this:
    image of the 8 led package I refer to This would work, but wouldn't be as fun.
  • Use 8 RGB NeoPixel LEDs. This works with QMK and could also support other patterns, should this end up repurposed as a macro pad. PCB space is limited, so positioning 8 of these LEDs in such a small space may be tricky. They are also very bright to stare at directly at full brightness.

Board Layout
I've been experimenting with different layouts and board sizes.

  • The smallest, most compact design has the keys on the top, microcontroller (pro micro) underneath around the keys, and the display hanging off of the top. I've assembled a version of this and it's ok when handheld, but is a bit too light to have on a desk, it gets pulled away from the cable. The downside to this is a somewhat awkward shape, and it's tricky to put together. Getting to the contacts under the microcontroller is a pain. The small board size means that manufacturing cost (PCBWay for cheaper, larger qty, OshPark for faster but more expensive) is reduced.
    • square board design
  • A larger, roomier design that allows for easier modification (and will probably be easier to design a case for). The biggest downside to this is the cost, but should be fine as long as it is relatively small. This version has the screen (attached via female headers) hanging over the microcontroller (a teensy in this case), but it can be moved around.
    • larger board design

Other things left to do

  • Look into designing the board as a single side, so that it can be etched DIY.
  • I should probably redo the board in KiCAD, due to licensing reasons.
    • I need to find or design my own cherry MX profile, the one I've used has the LEDs in the wrong position and only works if they are bent into place.
    • I need to make a better SSD1306 part than what I have right now
  • I need to get a working modification of the QMK firmware that supports the SSD 1306 display.
    • I need to find a library that I can use for the SSD 1306 display w/ QMK.
  • Finalize parts list.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant