Commit graph

1432 commits

Author SHA1 Message Date
tmk
7412953fee usb_usb: Handle Rollover error
How keyobards report Rollover error:
Cherry: 0101010101010101 https://geekhack.org/index.php?topic=69169.msg2638223#msg2638223
Apple:  0000010101010101 https://geekhack.org/index.php?topic=69169.msg2760969#msg2760969
2019-05-29 15:22:23 +09:00
tmk
8a8a4cf677 Merge branch 'usb_usb_init_fix' 2019-05-29 15:11:40 +09:00
tmk
4880e2b661 usb_usb: Override startup and suspend hook 2019-05-29 14:51:10 +09:00
tmk
f3e498590c core: Add hook_usb_startup_wait_loop 2019-05-29 14:50:56 +09:00
tmk
00bba0fdb5 usb_usb: Add options for disabling blocking loops
USB startup wait loop delays UHS2 Task() starting for a while
like 200-600ms and USB suspend loop blocks the Task() while power
saving like 15-17ms. These loops may cause keyboard enumeration
failure, perhaps. Not confirmed it yet though.
2019-05-10 09:44:59 +09:00
tmk
d8e304e141 lufa: Startup and suspend loop can be disabled
Startup wait loop is originally intended to start keyboard task loop and
after console output endpoint becomes available. But now that console
output is buffered when it is not available and you don't have to wait
for it to be ready. You can disable the startup wait loop by defining
NO_WAIT_FOR_USB_CONFIGURED in config.h

Suspend loop is used for power saving by making tasks stop while
USB bus is under suspend status. But this may cause problem on some
devices like converter that must keep doing its task to retain
communication with keyboard. The suspend loop can block its task for
around 15-17ms. You can disable the suspend loop  by defining
NO_USB_SUSPEND_LOOP in config.h.
2019-05-10 09:44:59 +09:00
tmk
2fd396b8ca usb_usb: Add option for disabling suspend power down 2019-05-10 09:44:59 +09:00
tmk
7c228967a4 usb_usb: Order of init prevents uneeded bus reset
Device classes are registered to array of config driver pool and
tried in that order until proper class is found in configuration process.
If tried driver cannot handle device, bus reset is issued to the device.
2019-05-10 09:44:59 +09:00
tmk
dd7b75040a lufa:usb_usb: matrix_scan() is no longer needed
This is due to SOF timing fix of USB_Host_Shield_2.0.
The matrix_scan() was needed for usb_usb converter to recognize FC660C at startup.
2019-05-10 09:44:59 +09:00
tmk
4e83400fc6 usb_hid: Change to USB_Host_Shield_2.0 of tmk repo
- Fix SOF/Keep Alive start timing
- Disable bus detection during settling after attach
- Remove keyboard LED blinking at configuring
2019-05-10 09:44:59 +09:00
tmk
993a9b02f7 lufa: Fix for freeze at re/boot time problem
Calling led_set() in ISR can cause the problem. With converter
especially, led_set() can take long time and USB can be stuck in the end.
USB-USB converter freezes occasionally when computer power up or reboot.
https://geekhack.org/index.php?topic=69169.msg2740179#msg2740179
This is also related to suspend/wakeup issue #386.
2019-05-10 09:43:44 +09:00
tmk
1e0af6809d lufa: Fix Change debug print message 2019-05-07 00:07:19 +09:00
tmk
55443fabb7 core: Avoid deadlock when uart.c is used in ISR 2019-05-07 00:07:19 +09:00
tmk
292cc939ec lufa: Fix for UART debug print 2019-05-07 00:07:19 +09:00
tmk
527bdbbcbd usb_usb: Add debug print for low level 2019-05-07 00:07:19 +09:00
tmk
88ce6ff9bf lufa: This prevents resume when debug 2019-05-07 00:07:06 +09:00
tmk
e23520662d lufa: Add debug print support with UART 2019-05-07 00:06:54 +09:00
tmk
c41e48a0ab core: Fix uart.c for ATmega32U4 2019-04-21 11:55:47 +09:00
You Xiaojie / 尤晓杰
494faeb488 Correct the comments of matrix ROW and COL. (#604)
according to the code:
static uint8_t matrix[MATRIX_ROWS];
#define ROW(code)      (code>>3)
#define COL(code) (code&0x07)
in converter/terminal_usb/matrix.c
ROW is decided by bits 7-4 of scancode
COL is decided by bits 2-0 of scancode
2019-03-18 15:47:07 +09:00
You Xiaojie / 尤晓杰
826a107526 Redefine GRV,CAPS,RALT and RCTL (#596) 2019-03-18 08:03:04 +09:00
You Xiaojie / 尤晓杰
8bb1c010fa Correct the comments of matrix ROW and COL. (#600)
according to the code:
static uint8_t matrix[MATRIX_ROWS];
#define ROW(code)      (code>>3)
#define COL(code)      (code&0x07)
in converter/ps2_usb/matrix.c
ROW is decided by bits 7~4 of scancode
COL is decided by bits 2~0 of scancode
2019-03-18 08:01:15 +09:00
You Xiaojie / 尤晓杰
bf030f5420 Correct typo for linux "showkey" command (#603) 2019-03-18 07:55:40 +09:00
You Xiaojie / 尤晓杰
53f7770217 Correct two errors of keycode.txt (#594) 2019-03-13 08:37:46 +09:00
tmk
6b1976d05b terminal_usb: Fix pin configuration in README 2019-03-10 22:48:21 +09:00
tmk
feebc23563 core: System control key descriptor fix #435
https://github.com/qmk/qmk_firmware/pull/963
2019-01-26 08:42:20 +09:00
tmk
d0b91ca319 usb_usb: Update README and firmware hex file 2018-11-12 10:51:41 +09:00
rxy0424
8345571e1d make some change to complie stm32_f103_onekey with new version of Chibios (#583) 2018-11-07 08:08:08 +09:00
tmk
a0b5bf4b67 usb_usb: usb_hid: Change for USB_Host_Shield_2.0 2018-10-31 09:35:30 +09:00
tmk
23037e108f usb_hid: Add USB_Host_Shield_2.0 submodule 2018-10-31 09:35:30 +09:00
tmk
2005c88842 usb_hid: Remove USB_Host_Shield_2.0 2018-10-31 09:35:30 +09:00
tmk
aa5dd8fccf lufa: usb-usb: Use LUFA startup instead of cusotom
- Change keyboard_init() timing and matrix_scan() is called in USB
  startup wait loop for FC660C
- FC660C startup seems to be faster and it doesn't work without this fix
  when plugin the keyboard and converter at same time
2018-10-31 09:35:30 +09:00
Konstantin Đorđević
a159172951 Fix header guard in tmk_core/common/command.h (#581) 2018-10-31 09:34:01 +09:00
tmk
00f5ed3210 core: Update console startup for hid_listen 2018-10-16 00:40:14 +09:00
tmk
1efd16e7c8 pc98_usb: Add Makefile.32u4 2018-10-16 00:38:39 +09:00
tmk
fddc6a7b47 pc98_usb: Fix RDY line and startup for PC-9801V 2018-10-16 00:24:29 +09:00
tmk
594d7d85da xt_usb: Fix */PrtSc key issue #552 2018-10-06 22:37:16 +09:00
tmk
fb248461b8 xt_usb: Update binary 2018-09-23 13:56:28 +09:00
tmk
e3d7b50f63 Merge branch 'console_ringbuf_fix' 2018-09-23 13:53:20 +09:00
tmk
06e3f84856 xt_usb: Fix scan code print for debug 2018-09-23 12:36:18 +09:00
tmk
b6cc5394b8 xt_usb: Change ring buffer and control Data line 2018-09-23 12:36:18 +09:00
tmk
b7d80d8b0e core: lufa: Fix wait for console startup 2018-09-23 12:36:18 +09:00
tmk
5b9da20efa core: lufa: Fix timeout of send_keyboard
Change 128*40us(5.12ms) to 128*80us(10.24ms) for 6KRO
2018-09-23 12:36:18 +09:00
tmk
ffb52ab0c9 core: lufa: Fix console output and init sequence
console_putc:
Linux:      works very well in general
Windows:    also works very well and connection seems to be faster than Linux
Mac:        to be: confirmed

NOTE:       long session of matrix_print still blocks keyboard_task in main loop
            and prevents it from sending keyboard report.
            XT protocol buffer overflow occurs when slamng on keys

TODO:       check when print functions are called in ISR
2018-09-23 12:36:18 +09:00
tmk
6632802c79 core: Add ring buffer file 2018-09-23 12:36:18 +09:00
tmk
4650d2e575 Merge branch 'pc98_update' 2018-09-08 21:25:41 +09:00
tmk
5d24932e78 pc98_usb: Update reset and LED control command 2018-09-08 21:23:30 +09:00
tmk
cb1f428488 pc98_usb: Remove keymap.c of rakuraku support 2018-09-08 09:35:24 +09:00
tmk
f57b7b9087 pc98_usb: Add ATMega32u4 support 2018-09-08 09:34:50 +09:00
tmk
effdef4187 pc98_usb: Fix pin configuration in README 2018-08-20 10:22:37 +09:00
tmk
428d904541 usb_usb: Update binary 2018-08-01 22:39:41 +09:00