sbstjn / 68keys.io Goto Github PK
View Code? Open in Web Editor NEWBuild your own 68% Custom Mechanical Keyboard.
Home Page: https://68Keys.io
License: Other
Build your own 68% Custom Mechanical Keyboard.
Home Page: https://68Keys.io
License: Other
"... a screw river..." to "... a screwdriver..."
Thanks for the guide!
This is the exact keyboard layout that I absolutely prefer. I am trying to build this keyboard by hand from scratch. So I am not using the PCB that has come up with 68keys.
I built a plate to hold the switches using the DXF layout files provided, and I have also soldered the switches with the 17 columns and the 5 rows, as specified in the 68keys layout. I am looking forward to using the pro-micro and the provided QMK binary to flash directly
Now I have noticed that the number of I/O pins required for this is 22 (17 columns + 5 rows). Here is where I, while hand wiring, am blocked... The 68keys PCB seems to use the same Pro Micro as I am using, but the Pro Micro contains fewer pins for use.
It would be really helpful if you could provide some insights on how we are able to use the available pins of Pro Micro for 68keys. I would be happy to contribute a hand-wiring section in the documentation if I am successful.
Is the source code for the PCB designs published somewhere? While trying to fabricate a PCB in India, the manufacturer seems to have a problem with the Gerbers. EasyEDA accepts them just fine.
So in case the original PCB design files are available, I can re-export the Gerber files and try to fabricate the PCBs locally.
Thanks a lot.
Hello,
I downloaded the gerber file from 68keys.io and uploaded it to jlcpcb.com. Unfortunately, the gerber file doesn't have the measurement of the pcb. The following image is the screenshot when I upload the gerber file to jlcpcb.
As you can see, there's no width and height of the pcb.
And based on this commit by the author of the pcb, the measurements are:
Width: 323.9mm
Height: 90.5mm
So, my issue is: where should I put the information so I can create a pull request to add those information?
Hello,
I've build the 68keys.io keyboard the second time. Last time everything went fine, but this time after flashing the firmware I only get the following output in syslog:
Jan 26 13:36:04 example kernel: [46320.035084] usb 1-3: new full-speed USB device number 28 using xhci_hcd
Jan 26 13:36:04 example kernel: [46320.035275] usb 1-3: Device not responding to setup address.
Jan 26 13:36:04 example kernel: [46320.242990] usb 1-3: Device not responding to setup address.
Jan 26 13:36:04 example kernel: [46320.450998] usb 1-3: device not accepting address 28, error -71
Jan 26 13:36:04 example kernel: [46320.582904] usb 1-3: new full-speed USB device number 29 using xhci_hcd
Jan 26 13:36:04 example kernel: [46320.583021] usb 1-3: Device not responding to setup address.
Jan 26 13:36:05 example kernel: [46320.795026] usb 1-3: Device not responding to setup address.
Jan 26 13:36:05 example kernel: [46321.002907] usb 1-3: device not accepting address 29, error -71
Jan 26 13:36:05 example kernel: [46321.003027] usb usb1-port3: unable to enumerate USB device
This is the firmware build:
>make 68keys:default:avrdude
QMK Firmware 0.6.136
WARNING:
Some git sub-modules are out of date or modified, please consider running:
make git-submodule
You can ignore this warning if you are not compiling any ChibiOS keyboards,
or if you have modified the ChibiOS libraries yourself.
Making 68keys with keymap default and target avrdude
avr-gcc (GCC) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Size before:
text data bss dec hex filename
0 15572 0 15572 3cd4 .build/68keys_default.hex
Compiling: keyboards/68keys/68keys.c [OK]
Compiling: keyboards/68keys/keymaps/default/keymap.c [OK]
Compiling: quantum/quantum.c [OK]
Compiling: quantum/keymap_common.c [OK]
Compiling: quantum/keycode_config.c [OK]
Compiling: quantum/matrix.c [OK]
Compiling: tmk_core/common/host.c [OK]
Compiling: tmk_core/common/keyboard.c [OK]
Compiling: tmk_core/common/action.c [OK]
Compiling: tmk_core/common/action_tapping.c [OK]
Compiling: tmk_core/common/action_macro.c [OK]
Compiling: tmk_core/common/action_layer.c [OK]
Compiling: tmk_core/common/action_util.c [OK]
Compiling: tmk_core/common/print.c [OK]
Compiling: tmk_core/common/debug.c [OK]
Compiling: tmk_core/common/util.c [OK]
Compiling: tmk_core/common/eeconfig.c [OK]
Compiling: tmk_core/common/report.c [OK]
Compiling: tmk_core/common/avr/suspend.c [OK]
Compiling: tmk_core/common/avr/timer.c [OK]
Compiling: tmk_core/common/avr/bootloader.c [OK]
Assembling: tmk_core/common/avr/xprintf.S [OK]
Compiling: tmk_core/common/magic.c [OK]
Compiling: tmk_core/protocol/lufa/lufa.c [OK]
Compiling: tmk_core/protocol/usb_descriptor.c [OK]
Compiling: tmk_core/protocol/lufa/outputselect.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Class/Common/HIDParser.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/Device_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/EndpointStream_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/Endpoint_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/Host_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/PipeStream_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/Pipe_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/AVR8/USBInterrupt_AVR8.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/ConfigDescriptors.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/DeviceStandardReq.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/Events.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/HostStandardReq.c [OK]
Compiling: lib/lufa/LUFA/Drivers/USB/Core/USBTask.c [OK]
Linking: .build/68keys_default.elf [OK]
Creating load file for flashing: .build/68keys_default.hex [OK]
Checking file size of 68keys_default.hex [OK]
* The firmware size is fine - 14142/28672 (14530 bytes free)
Copying 68keys_default.hex to qmk_firmware folder [OK]
Detecting USB port, reset your controller now.........................
Detected controller on USB port at /dev/ttyACM0
Connecting to programmer: .
Found programmer: Id = "CATERIN"; type = S
Software Version = 1.0; No Hardware Version given.
Programmer supports auto addr increment.
Programmer supports buffered memory access with buffersize=128 bytes.
Programmer supports the following devices:
Device code: 0x44
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e9587 (probably m32u4)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file ".build/68keys_default.hex"
avrdude: input file .build/68keys_default.hex auto detected as Intel Hex
avrdude: writing flash (14142 bytes):
Writing | ################################################## | 100% 1.12s
avrdude: 14142 bytes of flash written
avrdude: verifying flash memory against .build/68keys_default.hex:
avrdude: load data flash data from input file .build/68keys_default.hex:
avrdude: input file .build/68keys_default.hex auto detected as Intel Hex
avrdude: input file .build/68keys_default.hex contains 14142 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 0.17s
avrdude: verifying ...
avrdude: 14142 bytes of flash verified
avrdude: safemode: Fuses OK (E:FE, H:D8, L:FF)
avrdude done. Thank you.
Do you have any idea what could be the problem?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.