Giter Club home page Giter Club logo

42's Introduction

42 Keyboard

A 40% mechanical keyboard.

Features

  • 40% – Each key is at most one unit of distance from where the finger that should press it rests. In other words there's no awkward reaching for keys that are placed far from the home row.
  • Staggered columns - Because a comfortable keyboard should follow the shape of your hands.
  • Low profile - The PCB supports Choc (PG1350) switch mounts as well as Cherry MX/Alps.

Pics

  • Finished keyboard
    v3.1 picture
  • PCB
    v3.1 PCB picture
  • Height comparison between v3 and v3.1
    height comparison between v3 and v3.1

Project Structure

  • Build – Build log, bill of materials, tips on where to source parts, assembling tips, learning resources I used while designing this keyboard.

  • Case – Fusion 360 project and STL files for 3D printing the enclosure.

  • Firmware – QMK configuration. There is a Makefile to build and load the firmware.

  • PCB – Kicad project and Gerber files for manufacturing the circuit board.

Why?

In January 2018 I wanted a keyboard with a specific set of features. The simplest options to get that keyboard were to wait for a group-buy or build my own. Waiting time and costs for both options seemed similar, so I went with the option where I would learn the most.

Needs and knowledge changed over time, so I made different iterations to add new features and account for the lessons learned from previous builds.

Feedback

If you have some feedback or questions, feel free to create an issue. Your input is more than welcome!

Previous Versions

  • version 3 – PCB, QMK, Bluetooth, micro USB
    v3 picture
  • version 2 – Handwired, QMK, Bluetooth, micro USB
    v2 picture
  • version 1: PCB, Split, TMK firmware, USB C
    v1 picture

42's People

Contributors

nglgzz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

42's Issues

Firmware: initialize I/O expander during matrix scans

Currently, the I/O expander is initialized only during matrix initialization. This results in the right half of the keyboard working only if it's connected before the keyboard is connected to the PC. If the right half is connected after the keyboard has already performed the matrix initialization, it's completely ignored.

If the controller fails to communicate to the expander, it should attempt to initialize it again until it manages to do so. This shouldn't compromise the functionality of the left half though, that should work the same whether the right half is connected or not.

Case: finish enclosure for v4

Things I'm missing for the enclosure:

  • Share Fusion 360 project (available here)
  • Figure out if it's better to have an extra component for the connector, or if it should be part of one of the halves (currently it's an extra component).
  • Add bottom lid
  • Add holes for M3 screws
  • Add screws to list of materials (and heat set inserts)
  • Add STL models of all components
  • Update case/README.md

Early render:
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.