2015-01-04 08:03:47 +00:00
|
|
|
Infinity
|
|
|
|
========
|
|
|
|
Massdrop Infinity Keyboard:
|
|
|
|
https://www.massdrop.com/buy/infinity-keyboard-kit
|
|
|
|
|
|
|
|
kiibohd controller(MD1):
|
|
|
|
https://github.com/kiibohd/controller
|
|
|
|
|
|
|
|
DFU bootloader:
|
|
|
|
https://github.com/kiibohd/controller/tree/master/Bootloader
|
|
|
|
|
|
|
|
Program with bootloader:
|
|
|
|
$ dfu-util -D kiibohd.dfu.bin
|
|
|
|
|
|
|
|
Pinout:
|
|
|
|
https://github.com/kiibohd/controller/blob/master/Scan/MD1/pinout
|
|
|
|
|
|
|
|
MCHCK compatible:
|
|
|
|
https://mchck.org/about/
|
|
|
|
|
|
|
|
MCU Freescale MK20DX128VLF5 48-QFP:
|
|
|
|
http://cache.freescale.com/files/32bit/doc/data_sheet/K20P48M50SF0.pdf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pin Usage
|
|
|
|
=========
|
|
|
|
Key Matrix:
|
2016-07-22 06:16:17 +00:00
|
|
|
For v1.0 (without LED support)
|
|
|
|
strobe(output high): ptb0 ptb1 ptb2 ptb3 ptb16 ptb17 ptc4 ptc5 ptd0
|
|
|
|
sense(input with pull-down): ptd1 ptd2 ptd3 ptd4 ptd5 ptd6 ptd7
|
|
|
|
For v1.1a (with LED support)
|
|
|
|
strobe(output high): ptc0 ptc1 ptc2 ptc3 ptc4 ptc5 ptc6 ptc7 ptd0
|
|
|
|
sense(input with pull-down): ptd1 ptd2 ptd3 ptd4 ptd5 ptd6 ptd7
|
2015-01-04 08:03:47 +00:00
|
|
|
|
|
|
|
|
|
|
|
SWD pinout:
|
|
|
|
SWD_CLK(PTA0) SWD_DIO(PTA3)
|
|
|
|
SWD pins are placed next to reset button; SWD_CLK, SWD_DIO, GND, VCC from top.
|
|
|
|
Note that RESET is also needed to get full control with OpenOCD.
|
|
|
|
|
|
|
|
LED:
|
|
|
|
PTA19(turns on with output high)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Memory map
|
|
|
|
==========
|
|
|
|
kiibohd bootloader: Lib/mk20dx128vlf5.bootloader.ld
|
|
|
|
0x0000_0000 +-------------------+ -----------------+---------------+ Vector table
|
|
|
|
| .vectors | ------------. | StackPointer0 | of Bootloader
|
|
|
|
| .startup | \ | ResetHandler1 |
|
|
|
|
| .rodata | `--+---------------+ 0xF8
|
2016-07-22 06:16:17 +00:00
|
|
|
0x0000_0400 | .flashconfig(0x10)|
|
2015-01-04 08:03:47 +00:00
|
|
|
_0410 | .text |
|
|
|
|
| .init |
|
|
|
|
0x0000_1000 +-------------------+ -----------------+---------------+ Vector table
|
|
|
|
| _app_rom | ------------. | | of App
|
|
|
|
| | \ | |
|
|
|
|
| | `--+---------------+
|
|
|
|
| |
|
|
|
|
~ ~
|
|
|
|
| |
|
|
|
|
0x07FF_FFFF +-------------------+ 128KB
|
|
|
|
|
|
|
|
|
|
|
|
0x1FFF_E000 +-------------------+ -----------------+---------------+ Vector table
|
|
|
|
_E0F8 | | ------------. | | of App(copied)
|
2016-07-22 06:16:17 +00:00
|
|
|
| | \ | |
|
2015-01-04 08:03:47 +00:00
|
|
|
| | `--+---------------+ mbed NVIC
|
|
|
|
| |
|
|
|
|
| RAM |
|
|
|
|
| 8KB|
|
|
|
|
0x2000_0000 +-------------------+
|
|
|
|
| |
|
|
|
|
| |
|
|
|
|
| |
|
|
|
|
| |
|
|
|
|
| RAM |
|
|
|
|
| 8KB|
|
|
|
|
0x2000_2000 +-------------------+ _estack
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|