keychron_qmk_firmware/keyboards/ergodox_infinity
fredizzimo 53ff8a31b6 Merge ChibiOS and LUFA descriptor support (#2362)
* Move lufa descriptor to protocol/usb_descriptor

* Try to compile usb_descriptor on ChibiOS

* Add lufa_utils for ChibiOS

Lufa USB descriptors for ChibiOS

* More lufa_util compatibility fixes

* First compiling version of shared USB descriptor

* Send the usb descriptors

* Fix the CONSOLE output on ChibiOS

* Add errors for unsupported interfaces

* Enable support for vitual serial port USB descriptors

* Implement virtual serial port for ChibiOS

* Cleanup the lufa_utils

Use the default lufa header files

* Add raw hid support for ChibiOS

This is completely untested

* Enable midi compilation on ChibiOS

* Move midi functionality out of lufa.c

* Don't register sysex callback when not needed

* ChibiOS compilation fixes

* Update ChibiOS submodule

* Fix the Midi USB descriptor

It didn't work properly when both Midi and Virtual serial port was enabled.

* Add MIDI support for ChibiOS

* Fix USB descriptor strings on ChibiOS

* Use serial usb driver for raw hid

* Generalize the ChibiOS stream like drivers

This makes the initialization much more simple and eliminates a lot of
the code duplication.

* Convert console output to chibios stream driver

* Fixes for ChibiOS update

* Update the ChibiOS contrib submodule

To include the usb data toggle synchronization fixes

* Fix duplicate reset enumeration on ChibiOS

* Add missing include

* Add number of endpoints check for ChibiOS

* Enable serial USB driver on all keyboards

* Add missing includes when API is enabled withot midi

* Add another missing inlcude
2018-02-08 15:07:46 -05:00
..
keymaps Not quite neo (#2318) 2018-02-02 01:21:41 -05:00
board_is31fl3731c.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
board_st7565.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
bootloader_defs.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
chconf.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
config.h Merge ChibiOS and LUFA descriptor support (#2362) 2018-02-08 15:07:46 -05:00
ergodox_infinity.c Don't process keycodes on the slave 2017-09-30 06:22:02 -10:00
ergodox_infinity.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
gfxconf.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
halconf.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
info.json 🔧 create info.json for Infinity Ergodox (#2267) 2018-02-02 01:11:56 -05:00
led.c Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
matrix.c Fix call to memset for various keyboards 2018-01-12 13:23:38 -05:00
mcuconf.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
MEMO.txt Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
readme.md Initial commit for nordic layout for ergodox infinity. 2017-10-31 00:29:51 -04:00
rules.mk Do some cleanup for the API 2017-11-02 16:47:39 -07:00
simple_visualizer.h Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00
visualizer.c Creates a layouts/ folder for keymaps shared between keyboards (#1609) 2017-08-23 22:29:07 -04:00

ErgoDox Infinity

The Infinity is two completely independent keyboards, and needs to be flashed for the left and right halves seperately. To flash them:

  • Make sure you are in the top-level qmk_firmware directory

  • Build the firmware with make ergodox_infinity:keymapname

  • Plug in the left hand keyboard only.

  • Press the program button (back of keyboard, above thumb pad).

  • Install the firmware with sudo make ergodox_infinity:keymapname:dfu-util

  • Build right hand firmware with make ergodox_infinity:keymapname MASTER=right

  • Plug in the right hand keyboard only.

  • Press the program button (back of keyboard, above thumb pad).

  • Install the firmware with sudo make ergodox_infinity:keymapname:dfu-util MASTER=right

More information on the Infinity firmware is available in the TMK/chibios for Input Club Infinity Ergodox

Infinity Master/Two Halves

The Infinity is two completely independent keyboards, that can connect together. You have a few options in how you flash the firmware:

  • Flash the left half, rebuild the firmware with "MASTER=right" and then flash the right half. This allows you to plug in either half directly to the computer and is what the above instructions do.

  • Flash the left half, then flash the same firmware on the right. This only works when the left half is plugged directly to the computer and the keymap is mirrored. It saves the small extra step of rebuilding with "MASTER=right".

  • The same as the previous one but with "MASTER=right" when you build the firmware, then flash the same firmware to both halves. You just have to directly connect the right half to the computer.

  • For minor changes such as changing only the keymap without having updated any part of the firmware code itself, you can program only the MASTER half.

  • It is safest to program both halves though.