Coder Social home page Coder Social logo

fullstackenviormentss / 3km Goto Github PK

View Code? Open in Web Editor NEW

This project forked from datokenizer/3km

0.0 2.0 0.0 2.1 MB

Three key Madness (3KM) is a vastly improved short C code based on the Techkeys.us 3-key business card firmware for minimal keyboards

Makefile 2.27% C 84.95% C++ 12.78%

3km's Introduction

3KM

Three key Madness (3KM) is a short C code based on the Techkeys.us 3-key business card firmware for minimal keyboards.

main features

  1. short/long press deffrentiation - two different macros per key per mode (see below)
  2. two modes - holding all three keys will change modes - two entire sets of macros ("mode changed" will be printed to context)
  3. mode LED support - connect LEDs from PD4 to ground and from PD5 to ground to see what mode you are in (you may then also want to disable the mode change print)

Configurimg with your macros

  1. clone/download the code
  2. in the file main_techkeys.c you'll find arrays of keys named keys1..keys3 - 1,2&3 is the index of the button (they are numberd left to right) and without any suffix it will denote what happens on a short press in the default mode. The _long suffix is used to mark the macro for long presses and _b marks that this macro belongs to the second mode.
  3. the key consts are listed in the file usb_keyboard.h
  4. to hold shift on a certian charecter (for capital letters, '~', ':', etc.) add KSHIFT as the key previus to the key you want capitalized - so K2 will produce '2', but KSHIFT, K2 will produce '@'

example

uint8_t keys3_b_long[] = {KC, KD, KSPACE, KSHIFT, KTILDE, KSLASH, KS, KR, KC}; will produce cd ~/src when holding the rightmost button in mode 2

Deploy The Firmware to the chip

  1. Create a firmware using make

  2. Put your keyboard into bootloader mode

  3. Program your .hex file (replace device type as necessary, your file should be in the ./bin dir)

     sudo dfu-programmer atmega16u2 erase
     sleep 10
     sudo dfu-programmer atmega16u2 flash /path/to/firmware.hex
    

AVR-dude may also be used on Linux, as explained here.

3km's People

Contributors

datokenizer avatar

Watchers

 avatar  avatar

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.