summaryrefslogtreecommitdiffstats
path: root/tmk_core/protocol
AgeCommit message (Collapse)AuthorFilesLines
2018-07-16Adds support for Planck Rev 6 (#2666)Jack Humbert1-5/+7
* initial files for rev 6 with encoder * music map init, dip scan added * adds ws2812 driver for arm * flesh out dip and encoder support * adds default encoder res * adds default encoder res * start muse implementation * muse working with encoder as control * flip direction * try mouse wheel again * dont break other revs * dont break other revs * conditional autio * pwm ws driver (not working) * update build includes for chibios * update ws2812 driver/config * last commit for glasser code * working example * remove rgb for now * finish up rev6 * working encoder keycodes * add warnings to planck keymaps about the LAYOUT
2018-04-16Add a custom USB driver for ARM (#2750)fredizzimo4-42/+729
* Copy Chibios serial_usb_driver into the chibios/protocol It's renamed to usb_driver to avoid name conflicts * Make the usb driver compile * Disable ChibiOS serial usb driver for all keyboards * Change usb_main to use QMKUSBDriver * Initialize the usb driver buffers * Add support for fixed size queues * Fix USB driver initialization * Don't transfer an empty packet for fixed size streams
2018-04-12Tabs to spaces in usb_descriptor.hfauxpark1-17/+17
2018-03-22Generate API docs from source code comments (#2491)skullydazed2-6/+116
* Generate api docs from source code * Add a bunch of doxygen comments * more doxygen comments * Add the in-progress api docs * script to generate docs from travis * Add doc generation to the travis job * make travis_docs.sh commit the work it does * make sure the docs script exits cleanly
2018-03-01Fixed dead links (#2451)Brian Choromanski2-6/+6
* Fixed typo of 'confid.h' to 'config.h' * Fixed broken links in docs * Fixed a lot of dead links
2018-02-12Change the CDC_NOTIFICATION_EPSIZE back to 8 from 32Fred Sundvik1-1/+1
2018-02-08Merge ChibiOS and LUFA descriptor support (#2362)fredizzimo14-1140/+653
* 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-07Send usb wakeup through ChibiOSFred Sundvik3-26/+2
2018-02-07Update ChibiOS to 17.6.3Fred Sundvik1-6/+5
2018-02-02Update personal layouts, free up matrix_scan_user for JJ40 (#2319)Kenneth Aloysius1-1/+1
* Add NIU Mini keymap from Planck keymap * Remove old keymap files * Fix README, removed Planck references * Add default layout, move Planck layout to separate folder * Update README * Add my XD60 keymap * Change RShift to slash * Fix keymap: stuck on MO(1) * Move RESET to Fn+Enter * Add: RGB saturation cycle * Add numpad layer to keymap * Fix last case * Cleanup Mechmini keymap. Once the custom RGB function is defined, there is no need to manually handle RGB code. * Change default to KEYMAP_MIT, not KEYMAP_OFFSET * Add custom RGB code for JJ40 * Reset Mechmini advertised power draw to 500. Will have to test actual maximum power draw later. * RGB working on JJ40. * Fix: saturation increase/decrease flipped * Add new directory for my custom keymap with RGB keycodes * Swap LAlt and LGUI * Update JJ40 max power draw with measured value * Update: fun40 rules.mk to enable underglow; earlier failed Travis CI * Fix: init RGB LEDs on boot. Also added HHKB-like keymap for XD60. * Super rudimentary backlight test, init RGB LEDs on boot * Backlighting works - stays on for now * Toggling working * Now can override backlight.c functions. Problem was functions in backlight.c weren't called before due to a lack of matrix_scan_quantum() in matrix.c * Timers not working * Delete global.h * Cleanup * Compiles * Good sign: LEDs stop working again * Handle timer1 overflow * Progress: fix: forgot to init * Backlighting fully working now except breathing. * Revert keymap to original keycodes * Update XD60 keymap README * Update JJ40 keymap with backlight toggles * Breathing working just fine. * Update references * Add backlight_set() call * Cleanup code to disable backlight * Fix: does not compile * Fix: missing call to rgblight_task. * Testing with BACKLIGHT_BREATHING * Cleanup * Cleanup comments * More commenting cleanup. * Do not enable BACKLIGHT_BREATHING by default * Update XD60 keymap * Update: move matrix_scan_kb out from matrix.c to jj40.c (kb-level) * Cleanup for PR * Fix conflict in readme.md for NIU mini * Restore original power consumption figure * Fix: matrix_scan_user() now has to be defined in the keymaps * Add weak `matrix_scan_user` so it does not have to be defined in keymap * Add weak matrix_init_user()
2017-11-17Adds serial number string to USB descriptors (#1996)Jack Humbert1-1/+17
* add serial number string to usb descriptors * better name for serial number
2017-11-01Fix pointing device featureRob Rogers2-1/+6
2017-10-31fix Logical Maximum to be recognized as 255 instead of -1Takayuki Matsubara1-1/+1
SEE ALSO: https://github.com/qmk/qmk_firmware/issues/312
2017-10-16Added BLE support for USB-USB converter. (#1824)Benjamin Dengler1-0/+3
* Added BLE support to USB-USB converter * Added readme * Removed images and Makefile
2017-10-10Add option to reverse PS2 mouse axes and scrollingJesper Brix Rosenkilde1-0/+12
2017-09-30Clueboard 60% support (#1746)skullydazed2-22/+31
* initial clueboard_60 support * LED lighting support * fix the clueboard->clueboard_66 rename * Add layout support to clueboard_60 * Fix the 60_iso layout so it's actually iso * add a default keymap for AEK layout * fix clueboard_17 * Fixup the ISO layouts * Fix the `wait_ms()/wait_us()` definitions for chibios * Fix up the wait_ms/wait_us hack. Reduce stack size. * Add a missing #include "wait.h" * commit files that should have already been comitted
2017-09-06Force Raw HID interface number to 1 always (#1669)Wilba65821-10/+13
2017-08-20Add compile error if too many endpoints are defined for the ATmega32U4.Joe Wasson1-1/+2
2017-08-16cleanup usb-usb converter codeBalz Guenat1-1/+0
2017-08-16some major steps toward making the usb-usb converter workBalz Guenat5-22/+47
2017-07-07update lufa implementationJack Humbert3-7/+8
2017-07-07delete old lufaJack Humbert525-101214/+0
2017-05-29Adafruit Feather BLE / BLE Friend mouse buttons supportPriyadi Iman Nurcahyo3-3/+21
2017-05-27Merge pull request #1327 from Dbroqua/masterJack Humbert1-14/+15
Added Integration of IBM Trackpoint
2017-05-26Use variable to disable usb check at startupyiancar1-1/+1
Adds a define variable which when defined disables the usb startup check. Modified the makefile to separate above define from bluetooth dependancy
2017-05-26- Added integration of IBM Trackpointdbroqua1-14/+15
2017-03-30Add RN42 Bluetooth module supportTravis La Marr3-2/+38
Added support for sending HID keycodes over the RN42/reflashed HC05 module. Tested on OS X and iOS.
2017-03-28Merge pull request #1112 from newsboytko/newsboytko/midi-keycodesJack Humbert2-6/+15
Flesh out MIDI support
2017-03-24Add BLE and EZKey module defines.Travis La Marr1-4/+4
Also restored serial init back to original location. Was getting junk data.
2017-03-24Readd bluetooth output direction on standard key input.Travis La Marr1-8/+10
2017-03-24Refactor Bluetooth HandlingTravis La Marr5-51/+49
Refactored Bluetooth support to make adding new Bluetooth modules easier in the future. * Remove `OUT_BLE` key from QMK's keymap. `OUT_BT` is all we need now as there's no difference anymore. * Made BLUETOOTH_ENABLE build option legacy as not to break existing keymaps (Falls back to existing EZ Key support if on) * Removed `ADAFRUIT_BLE_ENABLE` build option * Created new build option `BLUETOOTH` with module option (Currently `AdafruitEZKey` & `AdafruitBLE`) * Moved all LUFA bluetooth key/mouse events under `BLUETOOTH_ENABLE` ifdef with selected modules output.
2017-02-26Split MIDI functionality into MIDI_BASIC and MIDI_ADVANCEDGabriel Young1-0/+4
MIDI_ENABLE = no text data bss dec hex filename 0 17080 0 17080 42b8 satan_midi.hex MIDI_ENABLE = yes MIDI_BASIC undefined MIDI_ADVANCED undefined text data bss dec hex filename 0 19494 0 19494 4c26 satan_midi.hex MIDI_ENABLE = yes #define MIDI_BASIC MIDI_ADVANCED undefined text data bss dec hex filename 0 19788 0 19788 4d4c satan_midi.hex MIDI_ENABLE = yes MIDI_BASIC undefined #define MIDI_ADVANCED text data bss dec hex filename 0 20846 0 20846 516e satan_midi.hex MIDI_ENABLE = yes #define MIDI_BASIC #define MIDI_ADVANCED text data bss dec hex filename 0 21140 0 21140 5294 satan_midi.hex
2017-02-20implement modulationGabriel Young1-1/+1
2017-02-20initial implementation of polyphony using variable length array of notes onGabriel Young2-5/+10
2017-02-11Supress warnings from ps2_mouse.hPriyadi Iman Nurcahyo1-2/+3
2017-02-07Merge pull request #1062 from luizribeiro/fix-winJack Humbert1-2/+2
Fix V-USB bug on Windows 10
2017-02-02Fix V-USB bug on Windows 10Luiz Ribeiro1-2/+2
2017-02-01Fix wrong includePriyadi Iman Nurcahyo1-1/+1
2017-02-01Limit outputselect to AVR only for nowPriyadi Iman Nurcahyo3-2/+2
2017-02-01Move outputselect to parent dir to satisfy non LUFA keyboardsPriyadi Iman Nurcahyo2-0/+0
2017-01-31Implement runtime selectable output (USB or BT)Priyadi Iman Nurcahyo4-69/+145
2017-01-21Simplified and polished a bit the code changes on tmk_coreLuiz Ribeiro1-2/+2
2017-01-21Got ps2avrGB to work with the V-USB protocolLuiz Ribeiro3-8/+27
2016-12-29API Sysex fixesFred Sundvik2-11/+25
Fix memory leaks by using stack instead of malloc Reduce memory usage by having less temporary bufffers Remove warnings by adding includes Decrease code size by 608 bytes (mostly due to not linking malloc) More robust handling of buffer overflows
2016-12-19Fixes issue #900Wilba65822-4/+4
2016-12-15Allow power consumption to be set per-keyboard.Kyle Smith1-1/+4
2016-12-10Allow negative values for mouse movementsPriyadi Iman Nurcahyo1-1/+1
2016-12-05Merge pull request #921 from Wilba6582/raw_hidJack Humbert3-8/+208
Initial version of Raw HID interface
2016-12-04syntax error fixPriyadi Iman Nurcahyo1-1/+1
2016-12-04Implemented weak ps2_mouse_init_user()Priyadi Iman Nurcahyo2-47/+56
There are a lot of PS/2 commands, some are vendor/device specific, so we provide a weak ps2_mouse_init_user() to be implemented in each keyboard that need it.