From 8377d5fdc57ab0a4f1757d9f787592ede1b94cfe Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Tue, 3 Jan 2017 23:41:52 -0800 Subject: Initial whitefox support --- keyboards/whitefox/Makefile | 3 + keyboards/whitefox/bootloader_defs.h | 1 + keyboards/whitefox/chconf.h | 524 ++++++++++++++++++++++++++++ keyboards/whitefox/config.h | 78 +++++ keyboards/whitefox/halconf.h | 353 +++++++++++++++++++ keyboards/whitefox/keymaps/default/keymap.c | 51 +++ keyboards/whitefox/keymaps/matt3o/keymap.c | 92 +++++ keyboards/whitefox/led.c | 24 ++ keyboards/whitefox/matrix.c | 132 +++++++ keyboards/whitefox/mcuconf.h | 66 ++++ keyboards/whitefox/rules.mk | 68 ++++ keyboards/whitefox/whitefox.c | 17 + keyboards/whitefox/whitefox.h | 54 +++ 13 files changed, 1463 insertions(+) create mode 100644 keyboards/whitefox/Makefile create mode 100644 keyboards/whitefox/bootloader_defs.h create mode 100644 keyboards/whitefox/chconf.h create mode 100644 keyboards/whitefox/config.h create mode 100644 keyboards/whitefox/halconf.h create mode 100644 keyboards/whitefox/keymaps/default/keymap.c create mode 100644 keyboards/whitefox/keymaps/matt3o/keymap.c create mode 100644 keyboards/whitefox/led.c create mode 100644 keyboards/whitefox/matrix.c create mode 100644 keyboards/whitefox/mcuconf.h create mode 100644 keyboards/whitefox/rules.mk create mode 100644 keyboards/whitefox/whitefox.c create mode 100644 keyboards/whitefox/whitefox.h diff --git a/keyboards/whitefox/Makefile b/keyboards/whitefox/Makefile new file mode 100644 index 000000000..4e2a6f00f --- /dev/null +++ b/keyboards/whitefox/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../Makefile +endif \ No newline at end of file diff --git a/keyboards/whitefox/bootloader_defs.h b/keyboards/whitefox/bootloader_defs.h new file mode 100644 index 000000000..c67153be6 --- /dev/null +++ b/keyboards/whitefox/bootloader_defs.h @@ -0,0 +1 @@ +#define KIIBOHD_BOOTLOADER diff --git a/keyboards/whitefox/chconf.h b/keyboards/whitefox/chconf.h new file mode 100644 index 000000000..43c845739 --- /dev/null +++ b/keyboards/whitefox/chconf.h @@ -0,0 +1,524 @@ +/* + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +/** + * @file templates/chconf.h + * @brief Configuration file template. + * @details A copy of this file must be placed in each project directory, it + * contains the application specific kernel settings. + * + * @addtogroup config + * @details Kernel related settings and hooks. + * @{ + */ + +#ifndef CHCONF_H +#define CHCONF_H + +#define _CHIBIOS_RT_CONF_ + +/*===========================================================================*/ +/** + * @name System timers settings + * @{ + */ +/*===========================================================================*/ + +/** + * @brief System time counter resolution. + * @note Allowed values are 16 or 32 bits. + */ +#define CH_CFG_ST_RESOLUTION 32 + +/** + * @brief System tick frequency. + * @details Frequency of the system timer that drives the system ticks. This + * setting also defines the system tick time unit. + */ +#define CH_CFG_ST_FREQUENCY 1000 + +/** + * @brief Time delta constant for the tick-less mode. + * @note If this value is zero then the system uses the classic + * periodic tick. This value represents the minimum number + * of ticks that is safe to specify in a timeout directive. + * The value one is not valid, timeouts are rounded up to + * this value. + */ +#define CH_CFG_ST_TIMEDELTA 0 + +/** @} */ + +/*===========================================================================*/ +/** + * @name Kernel parameters and options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Round robin interval. + * @details This constant is the number of system ticks allowed for the + * threads before preemption occurs. Setting this value to zero + * disables the preemption for threads with equal priority and the + * round robin becomes cooperative. Note that higher priority + * threads can still preempt, the kernel is always preemptive. + * @note Disabling the round robin preemption makes the kernel more compact + * and generally faster. + * @note The round robin preemption is not supported in tickless mode and + * must be set to zero in that case. + */ +#define CH_CFG_TIME_QUANTUM 20 + +/** + * @brief Managed RAM size. + * @details Size of the RAM area to be managed by the OS. If set to zero + * then the whole available RAM is used. The core memory is made + * available to the heap allocator and/or can be used directly through + * the simplified core memory allocator. + * + * @note In order to let the OS manage the whole RAM the linker script must + * provide the @p __heap_base__ and @p __heap_end__ symbols. + * @note Requires @p CH_CFG_USE_MEMCORE. + */ +#define CH_CFG_MEMCORE_SIZE 0 + +/** + * @brief Idle thread automatic spawn suppression. + * @details When this option is activated the function @p chSysInit() + * does not spawn the idle thread. The application @p main() + * function becomes the idle thread and must implement an + * infinite loop. + */ +#define CH_CFG_NO_IDLE_THREAD FALSE + +/* Use __WFI in the idle thread for waiting. Does lower the power + * consumption. */ +#define CORTEX_ENABLE_WFI_IDLE TRUE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Performance options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief OS optimization. + * @details If enabled then time efficient rather than space efficient code + * is used when two possible implementations exist. + * + * @note This is not related to the compiler optimization options. + * @note The default is @p TRUE. + */ +#define CH_CFG_OPTIMIZE_SPEED TRUE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Subsystem options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Time Measurement APIs. + * @details If enabled then the time measurement APIs are included in + * the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_TM FALSE + +/** + * @brief Threads registry APIs. + * @details If enabled then the registry APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_REGISTRY TRUE + +/** + * @brief Threads synchronization APIs. + * @details If enabled then the @p chThdWait() function is included in + * the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_WAITEXIT TRUE + +/** + * @brief Semaphores APIs. + * @details If enabled then the Semaphores APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_SEMAPHORES TRUE + +/** + * @brief Semaphores queuing mode. + * @details If enabled then the threads are enqueued on semaphores by + * priority rather than in FIFO order. + * + * @note The default is @p FALSE. Enable this if you have special + * requirements. + * @note Requires @p CH_CFG_USE_SEMAPHORES. + */ +#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE + +/** + * @brief Mutexes APIs. + * @details If enabled then the mutexes APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MUTEXES TRUE + +/** + * @brief Enables recursive behavior on mutexes. + * @note Recursive mutexes are heavier and have an increased + * memory footprint. + * + * @note The default is @p FALSE. + * @note Requires @p CH_CFG_USE_MUTEXES. + */ +#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE + +/** + * @brief Conditional Variables APIs. + * @details If enabled then the conditional variables APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_MUTEXES. + */ +#define CH_CFG_USE_CONDVARS TRUE + +/** + * @brief Conditional Variables APIs with timeout. + * @details If enabled then the conditional variables APIs with timeout + * specification are included in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_CONDVARS. + */ +#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE + +/** + * @brief Events Flags APIs. + * @details If enabled then the event flags APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_EVENTS TRUE + +/** + * @brief Events Flags APIs with timeout. + * @details If enabled then the events APIs with timeout specification + * are included in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_EVENTS. + */ +#define CH_CFG_USE_EVENTS_TIMEOUT TRUE + +/** + * @brief Synchronous Messages APIs. + * @details If enabled then the synchronous messages APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MESSAGES TRUE + +/** + * @brief Synchronous Messages queuing mode. + * @details If enabled then messages are served by priority rather than in + * FIFO order. + * + * @note The default is @p FALSE. Enable this if you have special + * requirements. + * @note Requires @p CH_CFG_USE_MESSAGES. + */ +#define CH_CFG_USE_MESSAGES_PRIORITY FALSE + +/** + * @brief Mailboxes APIs. + * @details If enabled then the asynchronous messages (mailboxes) APIs are + * included in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_SEMAPHORES. + */ +#define CH_CFG_USE_MAILBOXES TRUE + +/** + * @brief Core Memory Manager APIs. + * @details If enabled then the core memory manager APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MEMCORE TRUE + +/** + * @brief Heap Allocator APIs. + * @details If enabled then the memory heap allocator APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or + * @p CH_CFG_USE_SEMAPHORES. + * @note Mutexes are recommended. + */ +#define CH_CFG_USE_HEAP TRUE + +/** + * @brief Memory Pools Allocator APIs. + * @details If enabled then the memory pools allocator APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MEMPOOLS TRUE + +/** + * @brief Dynamic Threads APIs. + * @details If enabled then the dynamic threads creation APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_WAITEXIT. + * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. + */ +#define CH_CFG_USE_DYNAMIC TRUE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Debug options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Debug option, kernel statistics. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_STATISTICS FALSE + +/** + * @brief Debug option, system state check. + * @details If enabled the correct call protocol for system APIs is checked + * at runtime. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_SYSTEM_STATE_CHECK FALSE + +/** + * @brief Debug option, parameters checks. + * @details If enabled then the checks on the API functions input + * parameters are activated. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_ENABLE_CHECKS FALSE + +/** + * @brief Debug option, consistency checks. + * @details If enabled then all the assertions in the kernel code are + * activated. This includes consistency checks inside the kernel, + * runtime anomalies and port-defined checks. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_ENABLE_ASSERTS FALSE + +/** + * @brief Debug option, trace buffer. + * @details If enabled then the trace buffer is activated. + * + * @note The default is @p CH_DBG_TRACE_MASK_DISABLED. + */ +#define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED + +/** + * @brief Trace buffer entries. + * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is + * different from @p CH_DBG_TRACE_MASK_DISABLED. + */ +#define CH_DBG_TRACE_BUFFER_SIZE 128 + +/** + * @brief Debug option, stack checks. + * @details If enabled then a runtime stack check is performed. + * + * @note The default is @p FALSE. + * @note The stack check is performed in a architecture/port dependent way. + * It may not be implemented or some ports. + * @note The default failure mode is to halt the system with the global + * @p panic_msg variable set to @p NULL. + */ +#define CH_DBG_ENABLE_STACK_CHECK FALSE + +/** + * @brief Debug option, stacks initialization. + * @details If enabled then the threads working area is filled with a byte + * value when a thread is created. This can be useful for the + * runtime measurement of the used stack. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_FILL_THREADS FALSE + +/** + * @brief Debug option, threads profiling. + * @details If enabled then a field is added to the @p thread_t structure that + * counts the system ticks occurred while executing the thread. + * + * @note The default is @p FALSE. + * @note This debug option is not currently compatible with the + * tickless mode. + */ +#define CH_DBG_THREADS_PROFILING FALSE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Kernel hooks + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Threads descriptor structure extension. + * @details User fields added to the end of the @p thread_t structure. + */ +#define CH_CFG_THREAD_EXTRA_FIELDS \ + /* Add threads custom fields here.*/ + +/** + * @brief Threads initialization hook. + * @details User initialization code added to the @p chThdInit() API. + * + * @note It is invoked from within @p chThdInit() and implicitly from all + * the threads creation APIs. + */ +#define CH_CFG_THREAD_INIT_HOOK(tp) { \ + /* Add threads initialization code here.*/ \ +} + +/** + * @brief Threads finalization hook. + * @details User finalization code added to the @p chThdExit() API. + */ +#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ + /* Add threads finalization code here.*/ \ +} + +/** + * @brief Context switch hook. + * @details This hook is invoked just before switching between threads. + */ +#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ + /* Context switch code here.*/ \ +} + +/** + * @brief ISR enter hook. + */ +#define CH_CFG_IRQ_PROLOGUE_HOOK() { \ + /* IRQ prologue code here.*/ \ +} + +/** + * @brief ISR exit hook. + */ +#define CH_CFG_IRQ_EPILOGUE_HOOK() { \ + /* IRQ epilogue code here.*/ \ +} + +/** + * @brief Idle thread enter hook. + * @note This hook is invoked within a critical zone, no OS functions + * should be invoked from here. + * @note This macro can be used to activate a power saving mode. + */ +#define CH_CFG_IDLE_ENTER_HOOK() { \ + /* Idle-enter code here.*/ \ +} + +/** + * @brief Idle thread leave hook. + * @note This hook is invoked within a critical zone, no OS functions + * should be invoked from here. + * @note This macro can be used to deactivate a power saving mode. + */ +#define CH_CFG_IDLE_LEAVE_HOOK() { \ + /* Idle-leave code here.*/ \ +} + +/** + * @brief Idle Loop hook. + * @details This hook is continuously invoked by the idle thread loop. + */ +#define CH_CFG_IDLE_LOOP_HOOK() { \ + /* Idle loop code here.*/ \ +} + +/** + * @brief System tick event hook. + * @details This hook is invoked in the system tick handler immediately + * after processing the virtual timers queue. + */ +#define CH_CFG_SYSTEM_TICK_HOOK() { \ + /* System tick event code here.*/ \ +} + +/** + * @brief System halt hook. + * @details This hook is invoked in case to a system halting error before + * the system is halted. + */ +#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ + /* System halt code here.*/ \ +} + +/** + * @brief Trace hook. + * @details This hook is invoked each time a new record is written in the + * trace buffer. + */ +#define CH_CFG_TRACE_HOOK(tep) { \ + /* Trace code here.*/ \ +} + +/** @} */ + +/*===========================================================================*/ +/* Port-specific settings (override port settings defaulted in chcore.h). */ +/*===========================================================================*/ + +#endif /* CHCONF_H */ + +/** @} */ diff --git a/keyboards/whitefox/config.h b/keyboards/whitefox/config.h new file mode 100644 index 000000000..b7116341f --- /dev/null +++ b/keyboards/whitefox/config.h @@ -0,0 +1,78 @@ +/* +Copyright 2015 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#define PREVENT_STUCK_MODIFIERS + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0F0F +#define DEVICE_VER 0x0001 +/* in python2: list(u"whatever".encode('utf-16-le')) */ +/* at most 32 characters or the ugly hack in usb_main.c borks */ +#define MANUFACTURER "Input Club" +#define USBSTR_MANUFACTURER 'I', '\x00', 'n', '\x00', 'p', '\x00', 'u', '\x00', 't', '\x00', ' ', '\x00', 'C', '\x00', 'l', '\x00', 'u', '\x00', 'b', '\x00' +#define PRODUCT "WhiteFox/QMK" +#define USBSTR_PRODUCT 'W', '\x00', 'h', '\x00', 'i', '\x00', 't', '\x00', 'e', '\x00', 'F', '\x00', 'o', '\x00', 'x', '\x00', ' ', '\x00' + +/* key matrix size */ +#define MATRIX_ROWS 9 +#define MATRIX_COLS 8 + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 6 + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +//#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +//#define LOCKING_RESYNC_ENABLE + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* Keymap for Infinity prototype */ +//#define INFINITY_PROTOTYPE + +/* Keymap for Infinity 1.1a (first revision with LED support) */ +//#define INFINITY_LED + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +#endif diff --git a/keyboards/whitefox/halconf.h b/keyboards/whitefox/halconf.h new file mode 100644 index 000000000..46b37a4f4 --- /dev/null +++ b/keyboards/whitefox/halconf.h @@ -0,0 +1,353 @@ +/* + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +/** + * @file templates/halconf.h + * @brief HAL configuration header. + * @details HAL configuration file, this file allows to enable or disable the + * various device drivers from your application. You may also use + * this file in order to override the device drivers default settings. + * + * @addtogroup HAL_CONF + * @{ + */ + +#ifndef _HALCONF_H_ +#define _HALCONF_H_ + +#include "mcuconf.h" + +/** + * @brief Enables the PAL subsystem. + */ +#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) +#define HAL_USE_PAL TRUE +#endif + +/** + * @brief Enables the ADC subsystem. + */ +#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) +#define HAL_USE_ADC FALSE +#endif + +/** + * @brief Enables the CAN subsystem. + */ +#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) +#define HAL_USE_CAN FALSE +#endif + +/** + * @brief Enables the DAC subsystem. + */ +#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) +#define HAL_USE_DAC FALSE +#endif + +/** + * @brief Enables the EXT subsystem. + */ +#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) +#define HAL_USE_EXT FALSE +#endif + +/** + * @brief Enables the GPT subsystem. + */ +#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) +#define HAL_USE_GPT FALSE +#endif + +/** + * @brief Enables the I2C subsystem. + */ +#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) +#define HAL_USE_I2C FALSE +#endif + +/** + * @brief Enables the I2S subsystem. + */ +#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) +#define HAL_USE_I2S FALSE +#endif + +/** + * @brief Enables the ICU subsystem. + */ +#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) +#define HAL_USE_ICU FALSE +#endif + +/** + * @brief Enables the MAC subsystem. + */ +#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) +#define HAL_USE_MAC FALSE +#endif + +/** + * @brief Enables the MMC_SPI subsystem. + */ +#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) +#define HAL_USE_MMC_SPI FALSE +#endif + +/** + * @brief Enables the PWM subsystem. + */ +#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) +#define HAL_USE_PWM FALSE +#endif + +/** + * @brief Enables the RTC subsystem. + */ +#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) +#define HAL_USE_RTC FALSE +#endif + +/** + * @brief Enables the SDC subsystem. + */ +#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) +#define HAL_USE_SDC FALSE +#endif + +/** + * @brief Enables the SERIAL subsystem. + */ +#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) +#define HAL_USE_SERIAL FALSE +#endif + +/** + * @brief Enables the SERIAL over USB subsystem. + */ +#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) +#define HAL_USE_SERIAL_USB TRUE +#endif + +/** + * @brief Enables the SPI subsystem. + */ +#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) +#define HAL_USE_SPI FALSE +#endif + +/** + * @brief Enables the UART subsystem. + */ +#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) +#define HAL_USE_UART FALSE +#endif + +/** + * @brief Enables the USB subsystem. + */ +#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) +#define HAL_USE_USB TRUE +#endif + +/** + * @brief Enables the WDG subsystem. + */ +#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) +#define HAL_USE_WDG FALSE +#endif + +/*===========================================================================*/ +/* ADC driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) +#define ADC_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define ADC_USE_MUTUAL_EXCLUSION TRUE +#endif + +/*===========================================================================*/ +/* CAN driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Sleep mode related APIs inclusion switch. + */ +#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) +#define CAN_USE_SLEEP_MODE TRUE +#endif + +/*===========================================================================*/ +/* I2C driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables the mutual exclusion APIs on the I2C bus. + */ +#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define I2C_USE_MUTUAL_EXCLUSION TRUE +#endif + +/*===========================================================================*/ +/* MAC driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables an event sources for incoming packets. + */ +#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) +#define MAC_USE_ZERO_COPY FALSE +#endif + +/** + * @brief Enables an event sources for incoming packets. + */ +#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) +#define MAC_USE_EVENTS TRUE +#endif + +/*===========================================================================*/ +/* MMC_SPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Delays insertions. + * @details If enabled this options inserts delays into the MMC waiting + * routines releasing some extra CPU time for the threads with + * lower priority, this may slow down the driver a bit however. + * This option is recommended also if the SPI driver does not + * use a DMA channel and heavily loads the CPU. + */ +#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) +#define MMC_NICE_WAITING TRUE +#endif + +/*===========================================================================*/ +/* SDC driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Number of initialization attempts before rejecting the card. + * @note Attempts are performed at 10mS intervals. + */ +#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) +#define SDC_INIT_RETRY 100 +#endif + +/** + * @brief Include support for MMC cards. + * @note MMC support is not yet implemented so this option must be kept + * at @p FALSE. + */ +#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) +#define SDC_MMC_SUPPORT FALSE +#endif + +/** + * @brief Delays insertions. + * @details If enabled this options inserts delays into the MMC waiting + * routines releasing some extra CPU time for the threads with + * lower priority, this may slow down the driver a bit however. + */ +#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) +#define SDC_NICE_WAITING TRUE +#endif + +/*===========================================================================*/ +/* SERIAL driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Default bit rate. + * @details Configuration parameter, this is the baud rate selected for the + * default configuration. + */ +#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) +#define SERIAL_DEFAULT_BITRATE 38400 +#endif + +/** + * @brief Serial buffers size. + * @details Configuration parameter, you can change the depth of the queue + * buffers depending on the requirements of your application. + * @note The default is 64 bytes for both the transmission and receive + * buffers. + */ +#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) +#define SERIAL_BUFFERS_SIZE 16 +#endif + +/*===========================================================================*/ +/* SERIAL_USB driver related setting. */ +/*===========================================================================*/ + +/** + * @brief Serial over USB buffers size. + * @details Configuration parameter, the buffer size must be a multiple of + * the USB data endpoint maximum packet size. + * @note The default is 64 bytes for both the transmission and receive + * buffers. + */ +#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) +#define SERIAL_USB_BUFFERS_SIZE 256 +#endif + +/*===========================================================================*/ +/* SPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) +#define SPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define SPI_USE_MUTUAL_EXCLUSION TRUE +#endif + +/*===========================================================================*/ +/* USB driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) +#define USB_USE_WAIT TRUE +#endif + +#endif /* _HALCONF_H_ */ + +/** @} */ diff --git a/keyboards/whitefox/keymaps/default/keymap.c b/keyboards/whitefox/keymaps/default/keymap.c new file mode 100644 index 000000000..426b226a0 --- /dev/null +++ b/keyboards/whitefox/keymaps/default/keymap.c @@ -0,0 +1,51 @@ +/* +Copyright 2015 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ +#include "whitefox.h" + +const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Layer 0: Default Layer + * ,---------------------------------------------------------------. + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| + * |---------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del| + * |---------------------------------------------------------------| + * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU| + * |---------------------------------------------------------------| + * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD| + * |---------------------------------------------------------------| + * |Ctrl|Gui |Alt | Space |Fn0 |Alt |Gui | |Lef|Dow|Rig| + * `---------------------------------------------------------------' + */ + [0] = KEYMAP( \ + ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, INS, \ + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ + CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ + LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ + LCTL,LGUI,LALT, SPC, RALT,FN0, RCTL, LEFT,DOWN,RGHT \ + ), + [1] = KEYMAP( \ + TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,MUTE,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS, TRNS,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ + TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + ), +}; + +const uint16_t fn_actions[] = { + [0] = ACTION_LAYER_MOMENTARY(1), +}; diff --git a/keyboards/whitefox/keymaps/matt3o/keymap.c b/keyboards/whitefox/keymaps/matt3o/keymap.c new file mode 100644 index 000000000..ecadcd284 --- /dev/null +++ b/keyboards/whitefox/keymaps/matt3o/keymap.c @@ -0,0 +1,92 @@ +/* +Copyright 2015 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ +#include "whitefox.h" + +const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Layer 0: Default Layer + * ,---------------------------------------------------------------. + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| + * |---------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del| + * |---------------------------------------------------------------| + * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU| + * |---------------------------------------------------------------| + * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD| + * |---------------------------------------------------------------| + * |Ctrl|Gui |Alt | Space |Fn0 |Alt |Gui | |Lef|Dow|Rig| + * `---------------------------------------------------------------' + */ + [0] = KEYMAP( \ + ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, MUTE,\ + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ + FN0, A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ + LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ + LCTL,LGUI,LALT, SPC, RALT,FN1, RCTL, LEFT,DOWN,RGHT \ + ), + [1] = KEYMAP( \ + TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,TRNS,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,DEL , INS ,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ + TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + ), + [2] = KEYMAP( \ + SLEP,P1, P2, P3, P4, P5, P6, P7, P8, P9, P0, TRNS,TRNS,TRNS,TRNS,FN2, \ + TRNS,TRNS,FN5 ,FN6 ,TRNS,FN7 ,TRNS,TRNS,TRNS,TRNS,PSCR,TRNS,TRNS,TRNS, FN3, \ + CAPS,TRNS,TRNS,TRNS,FN4 ,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,\ + TRNS,TRNS,TRNS,TRNS,CALC,TRNS,TRNS,TRNS,MAIL,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,\ + TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS \ + ), +}; + +/* Give numbers some descriptive names */ +#define ACTION_LEDS_ALL 1 +#define ACTION_LEDS_GAME 2 + +const uint16_t fn_actions[] = { + [0] = ACTION_LAYER_MOMENTARY(1), + [1] = ACTION_LAYER_MOMENTARY(2), + [2] = ACTION_FUNCTION(ACTION_LEDS_ALL), + [3] = ACTION_FUNCTION(ACTION_LEDS_GAME), + + [4] = ACTION_USAGE_CONSUMER(0x1B4), + [5] = ACTION_USAGE_CONSUMER(0x196), + [6] = ACTION_USAGE_CONSUMER(0x1A6), + [7] = ACTION_USAGE_CONSUMER(0x1A0), + +}; + +/* custom action function */ +void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { + /* + (void)opt; + switch(id) { + case ACTION_LEDS_ALL: + if(record->event.pressed) { + // signal the LED controller thread + chMBPost(&led_mailbox, LED_MSG_GAME_TOGGLE, TIME_IMMEDIATE); + } + break; + case ACTION_LEDS_GAME: + if(record->event.pressed) { + // signal the LED controller thread + chMBPost(&led_mailbox, LED_MSG_ALL_TOGGLE, TIME_IMMEDIATE); + } + break; + } + */ +} diff --git a/keyboards/whitefox/led.c b/keyboards/whitefox/led.c new file mode 100644 index 000000000..aed66c7c0 --- /dev/null +++ b/keyboards/whitefox/led.c @@ -0,0 +1,24 @@ +/* +Copyright 2012 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include "hal.h" + +#include "led.h" + + +void led_set(uint8_t usb_led) { +} diff --git a/keyboards/whitefox/matrix.c b/keyboards/whitefox/matrix.c new file mode 100644 index 000000000..ce35bca28 --- /dev/null +++ b/keyboards/whitefox/matrix.c @@ -0,0 +1,132 @@ +#include +#include +#include +#include "hal.h" +#include "timer.h" +#include "wait.h" +#include "print.h" +#include "matrix.h" + + +/* + * Matt3o's WhiteFox + * Column pins are input with internal pull-down. Row pins are output and strobe with high. + * Key is high or 1 when it turns on. + * + * col: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } + * row: { PTB2, PTB3, PTB18, PTB19, PTC0, PTC8, PTC9, PTC10, PTC11 } + */ +/* matrix state(1:on, 0:off) */ +static matrix_row_t matrix[MATRIX_ROWS]; +static matrix_row_t matrix_debouncing[MATRIX_ROWS]; +static bool debouncing = false; +static uint16_t debouncing_time = 0; + + +void matrix_init(void) +{ +//debug_matrix = true; + /* Column(sense) */ + palSetPadMode(GPIOD, 0, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 1, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 4, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 5, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 6, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 7, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOC, 1, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOC, 2, PAL_MODE_INPUT_PULLDOWN); + + /* Row(strobe) */ + palSetPadMode(GPIOB, 2, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 3, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 18, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 19, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 0, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 8, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 9, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 10, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 11, PAL_MODE_OUTPUT_PUSHPULL); + + memset(matrix, 0, MATRIX_ROWS); + memset(matrix_debouncing, 0, MATRIX_ROWS); +} + +uint8_t matrix_scan(void) +{ + for (int row = 0; row < MATRIX_ROWS; row++) { + matrix_row_t data = 0; + + // strobe row + switch (row) { + case 0: palSetPad(GPIOB, 2); break; + case 1: palSetPad(GPIOB, 3); break; + case 2: palSetPad(GPIOB, 18); break; + case 3: palSetPad(GPIOB, 19); break; + case 4: palSetPad(GPIOC, 0); break; + case 5: palSetPad(GPIOC, 8); break; + case 6: palSetPad(GPIOC, 9); break; + case 7: palSetPad(GPIOC, 10); break; + case 8: palSetPad(GPIOC, 11); break; + } + + wait_us(1); // need wait to settle pin state + + // read col data: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } + data = ((palReadPort(GPIOC) & 0x06UL) << 5) | + ((palReadPort(GPIOD) & 0xF0UL) >> 2) | + (palReadPort(GPIOD) & 0x03UL); + + // un-strobe row + switch (row) { + case 0: palClearPad(GPIOB, 2); break; + case 1: palClearPad(GPIOB, 3); break; + case 2: palClearPad(GPIOB, 18); break; + case 3: palClearPad(GPIOB, 19); break; + case 4: palClearPad(GPIOC, 0); break; + case 5: palClearPad(GPIOC, 8); break; + case 6: palClearPad(GPIOC, 9); break; + case 7: palClearPad(GPIOC, 10); break; + case 8: palClearPad(GPIOC, 11); break; + } + + if (matrix_debouncing[row] != data) { + matrix_debouncing[row] = data; + debouncing = true; + debouncing_time = timer_read(); + } + } + + if (debouncing && timer_elapsed(debouncing_time) > DEBOUNCE) { + for (int row = 0; row < MATRIX_ROWS; row++) { + matrix[row] = matrix_debouncing[row]; + } + debouncing = false; + } + return 1; +} + +bool matrix_is_on(uint8_t row, uint8_t col) +{ + return (matrix[row] & (1</os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) +# - For Teensies, FAMILY = KINETIS and SERIES is either +# KL2x (LC) or K20x (3.0,3.1,3.2). +# - For Infinity KB, SERIES = K20x +MCU_FAMILY = KINETIS +MCU_SERIES = K20x + +# Linker script to use +# - it should exist either in /os/common/ports/ARMCMx/compilers/GCC/ld/ +# or /ld/ +# - NOTE: a custom ld script is needed for EEPROM on Teensy LC +# - LDSCRIPT = +# - MKL26Z64 for Teensy LC +# - MK20DX128 for Teensy 3.0 +# - MK20DX256 for Teensy 3.1 and 3.2 +# - MK20DX128BLDR4 for Infinity with Kiibohd bootloader +# - MK20DX256BLDR8 for Infinity ErgoDox with Kiibohd bootloader +MCU_LDSCRIPT = MK20DX256BLDR8 + +# Startup code to use +# - it should exist in /os/common/ports/ARMCMx/compilers/GCC/mk/ +# - STARTUP = +# - kl2x for Teensy LC +# - k20x5 for Teensy 3.0 and Infinity KB +# - k20x7 for Teensy 3.1 and 3.2 +MCU_STARTUP = k20x7 + +# Board: it should exist either in /os/hal/boards/ +# or /boards +# - BOARD = +# - PJRC_TEENSY_LC for Teensy LC +# - PJRC_TEENSY_3 for Teensy 3.0 +# - PJRC_TEENSY_3_1 for Teensy 3.1 or 3.2 +# - MCHCK_K20 for Infinity KB +BOARD = PJRC_TEENSY_3_1 + +# Cortex version +# Teensy LC is cortex-m0; Teensy 3.x are cortex-m4 +MCU = cortex-m4 + +# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7 +# I.e. 6 for Teensy LC; 7 for Teensy 3.x +ARMV = 7 + +# Vector table for application +# 0x00000000-0x00001000 area is occupied by bootlaoder.*/ +# The CORTEX_VTOR... is needed only for MCHCK/Infinity KB +#OPT_DEFS = -DCORTEX_VTOR_INIT=0x00001000 +OPT_DEFS = + +# Build Options +# comment out to disable the options. +# +BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration +## (Note that for BOOTMAGIC on Teensy LC you have to use a custom .ld script.) +MOUSEKEY_ENABLE ?= yes # Mouse keys +EXTRAKEY_ENABLE ?= yes # Audio control and System control +#CONSOLE_ENABLE ?= yes # Console for debug +COMMAND_ENABLE ?= yes # Commands for debug and configuration +#SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend +NKRO_ENABLE ?= yes # USB Nkey Rollover +CUSTOM_MATRIX ?= yes # Custom matrix file diff --git a/keyboards/whitefox/whitefox.c b/keyboards/whitefox/whitefox.c new file mode 100644 index 000000000..d35bf8338 --- /dev/null +++ b/keyboards/whitefox/whitefox.c @@ -0,0 +1,17 @@ +/* +Copyright 2012,2013 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ +#include "whitefox.h" diff --git a/keyboards/whitefox/whitefox.h b/keyboards/whitefox/whitefox.h new file mode 100644 index 000000000..0ffcdca01 --- /dev/null +++ b/keyboards/whitefox/whitefox.h @@ -0,0 +1,54 @@ +/* +Copyright 2014 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ +#ifndef WHITEFOX_H +#define WHITEFOX_H + +#include "quantum.h" + +/* WhiteFox + * ,---------------------------------------------------------------. + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| + * |---------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del| + * |---------------------------------------------------------------| + * |CapsL | A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU| + * |---------------------------------------------------------------| + * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD| + * |---------------------------------------------------------------| + * |Ctrl|Gui |Alt | Space |App |Alt |Gui | |Lef|Dow|Rig| + * `---------------------------------------------------------------' + */ + +#define KEYMAP( \ + K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K41, K51, K61, \ + K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, K23, K33, \ + K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, K64, K74, K84, K05, \ + K15, K25, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \ + K76, K86, K07, K17, K27, K37, K47, K57, K67, K77 \ +) { \ + { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07 }, \ + { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17 }, \ + { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27 }, \ + { KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37 }, \ + { KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_##K46, KC_##K47 }, \ + { KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56, KC_##K57 }, \ + { KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_##K67 }, \ + { KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74, KC_##K75, KC_##K76, KC_##K77 }, \ + { KC_##K80, KC_##K81, KC_##K82, KC_##K83, KC_##K84, KC_##K85, KC_##K86, KC_NO } \ +} + +#endif -- cgit v1.2.3-70-g09d2 From 300c71a02381947ec5c8414ddad17c98c357d958 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 00:05:18 -0800 Subject: Remove unneeded define --- keyboards/whitefox/mcuconf.h | 1 - 1 file changed, 1 deletion(-) diff --git a/keyboards/whitefox/mcuconf.h b/keyboards/whitefox/mcuconf.h index ab1f7d724..68c29cf68 100644 --- a/keyboards/whitefox/mcuconf.h +++ b/keyboards/whitefox/mcuconf.h @@ -31,7 +31,6 @@ #define KINETIS_MCG_MODE KINETIS_MCG_MODE_PEE #define KINETIS_PLLCLK_FREQUENCY 96000000UL #define KINETIS_SYSCLK_FREQUENCY 48000000UL -#define KINETIS_XTAL_FREQUENCY 16000000UL #if 0 /* FEI mode - 48 MHz with internal 32.768 kHz crystal */ -- cgit v1.2.3-70-g09d2 From 262d31c389cf60460ff6707be90695df3647141b Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 00:29:58 -0800 Subject: Add whitefox readme --- keyboards/whitefox/readme.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 keyboards/whitefox/readme.md diff --git a/keyboards/whitefox/readme.md b/keyboards/whitefox/readme.md new file mode 100644 index 000000000..0714ad563 --- /dev/null +++ b/keyboards/whitefox/readme.md @@ -0,0 +1,7 @@ +WhiteFox keyboard firmware +====================== + +This is an experimental port which came from the original TMK WhiteFox repo. + +The LED controller was not ported, as the original was a dirty hack and it would +be good to have complete support. -- cgit v1.2.3-70-g09d2 From ccde1d8b5e8be798a8ab6ee7ace3088d5a474929 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 21:19:32 -0800 Subject: Add white fox to keyboards readme --- keyboards/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/readme.md b/keyboards/readme.md index 81a23c7e5..02bce70f0 100644 --- a/keyboards/readme.md +++ b/keyboards/readme.md @@ -52,4 +52,5 @@ These keyboards are part of the QMK repository, but their manufacturers are not * [Satan](/keyboards/satan) — A GH60 variant. * [SixKeyBoard](/keyboards/sixkeyboard) — A 6-key keyboard made by TechKeys. * [TheVan 44](/keyboars/tv44) — A 44-key staggered keybard by Evangs. +* [WhiteFox](/keyboards/whitefox) — A 65% keyboard designed as a partnership by matt3o, Massdrop and Input Club * [Vision Division](/keyboards/vision_division) — Full Size / Split Linear Keyboard by IBNobody. -- cgit v1.2.3-70-g09d2 From ca9a3dcb7113ea2a4ecec0b327c78bbf641386ca Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 21:20:06 -0800 Subject: Fix unrelated spelling error --- keyboards/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/readme.md b/keyboards/readme.md index 02bce70f0..d2f41ad7e 100644 --- a/keyboards/readme.md +++ b/keyboards/readme.md @@ -51,6 +51,6 @@ These keyboards are part of the QMK repository, but their manufacturers are not * [S60-x](/keyboards/s60-x) — DIY compact keyboard designed by VinnyCordeiro for Sentraq. * [Satan](/keyboards/satan) — A GH60 variant. * [SixKeyBoard](/keyboards/sixkeyboard) — A 6-key keyboard made by TechKeys. -* [TheVan 44](/keyboars/tv44) — A 44-key staggered keybard by Evangs. +* [TheVan 44](/keyboards/tv44) — A 44-key staggered keybard by Evangs. * [WhiteFox](/keyboards/whitefox) — A 65% keyboard designed as a partnership by matt3o, Massdrop and Input Club * [Vision Division](/keyboards/vision_division) — Full Size / Split Linear Keyboard by IBNobody. -- cgit v1.2.3-70-g09d2 From f74ff86f9c5f3dfe1ee2b6e2b6d82edd4935ba1f Mon Sep 17 00:00:00 2001 From: milestogo Date: Sun, 8 Jan 2017 22:02:01 -0800 Subject: kinesis remap --- keyboards/kinesis/Makefile | 4 +- keyboards/kinesis/alvicstep/Makefile | 3 + keyboards/kinesis/alvicstep/alvicstep.c | 105 ++++ keyboards/kinesis/alvicstep/alvicstep.h | 67 +++ keyboards/kinesis/alvicstep/config.h | 35 ++ .../alvicstep/docs/docs/kicad/kinesis-cache.lib | 232 ++++++++ .../kinesis/alvicstep/docs/docs/kicad/kinesis.pro | 83 +++ .../kinesis/alvicstep/docs/docs/kicad/kinesis.sch | 634 +++++++++++++++++++++ .../alvicstep/docs/docs/photos/P1050573.jpg | Bin 0 -> 177711 bytes .../alvicstep/docs/docs/photos/P1050574.jpg | Bin 0 -> 343978 bytes .../alvicstep/docs/docs/photos/P1050575.jpg | Bin 0 -> 266771 bytes keyboards/kinesis/alvicstep/docs/docs/readme.txt | 52 ++ .../kinesis/alvicstep/docs/docs/schematic.png | Bin 0 -> 175014 bytes .../kinesis/alvicstep/docs/kicad/kinesis-cache.lib | 232 ++++++++ keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro | 83 +++ keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch | 634 +++++++++++++++++++++ .../kinesis/alvicstep/docs/photos/P1050573.jpg | Bin 0 -> 177711 bytes .../kinesis/alvicstep/docs/photos/P1050574.jpg | Bin 0 -> 343978 bytes .../kinesis/alvicstep/docs/photos/P1050575.jpg | Bin 0 -> 266771 bytes keyboards/kinesis/alvicstep/docs/readme.txt | 52 ++ keyboards/kinesis/alvicstep/docs/schematic.png | Bin 0 -> 175014 bytes keyboards/kinesis/alvicstep/matrix.c | 228 ++++++++ keyboards/kinesis/alvicstep/readme.md | 46 ++ keyboards/kinesis/alvicstep/rules.mk | 10 + keyboards/kinesis/config.h | 49 +- keyboards/kinesis/docs/kicad/kinesis-cache.lib | 232 -------- keyboards/kinesis/docs/kicad/kinesis.pro | 83 --- keyboards/kinesis/docs/kicad/kinesis.sch | 634 --------------------- keyboards/kinesis/docs/photos/P1050573.jpg | Bin 177711 -> 0 bytes keyboards/kinesis/docs/photos/P1050574.jpg | Bin 343978 -> 0 bytes keyboards/kinesis/docs/photos/P1050575.jpg | Bin 266771 -> 0 bytes keyboards/kinesis/docs/readme.txt | 52 -- keyboards/kinesis/docs/schematic.png | Bin 175014 -> 0 bytes keyboards/kinesis/keymaps/default/keymap.c | 32 +- keyboards/kinesis/keymaps/dvorak/Makefile | 21 + keyboards/kinesis/keymaps/dvorak/config.h | 8 + keyboards/kinesis/keymaps/dvorak/keymap.c | 93 +++ keyboards/kinesis/keymaps/milestogo/Makefile | 21 + keyboards/kinesis/keymaps/milestogo/config.h | 8 + keyboards/kinesis/keymaps/milestogo/keymap.c | 331 +++++++++++ keyboards/kinesis/keymaps/milestogo/readme.md | 2 + keyboards/kinesis/kinesis.c | 105 ---- keyboards/kinesis/kinesis.h | 70 +-- keyboards/kinesis/matrix.c | 228 -------- keyboards/kinesis/readme.md | 42 +- keyboards/kinesis/stapelberg/Makefile | 3 + keyboards/kinesis/stapelberg/config.h | 50 ++ .../kinesis/stapelberg/images/controller_board.jpg | Bin 0 -> 129312 bytes .../kinesis/stapelberg/images/exterior_reset.jpg | Bin 0 -> 97794 bytes .../kinesis/stapelberg/images/teensy_detail.jpg | Bin 0 -> 119748 bytes keyboards/kinesis/stapelberg/readme.md | 55 ++ keyboards/kinesis/stapelberg/rules.mk | 10 + keyboards/kinesis/stapelberg/stapelberg.c | 28 + keyboards/kinesis/stapelberg/stapelberg.h | 72 +++ 54 files changed, 3234 insertions(+), 1495 deletions(-) create mode 100644 keyboards/kinesis/alvicstep/Makefile create mode 100644 keyboards/kinesis/alvicstep/alvicstep.c create mode 100644 keyboards/kinesis/alvicstep/alvicstep.h create mode 100644 keyboards/kinesis/alvicstep/config.h create mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib create mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro create mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch create mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/docs/readme.txt create mode 100644 keyboards/kinesis/alvicstep/docs/docs/schematic.png create mode 100644 keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib create mode 100644 keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro create mode 100644 keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch create mode 100644 keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/readme.txt create mode 100644 keyboards/kinesis/alvicstep/docs/schematic.png create mode 100644 keyboards/kinesis/alvicstep/matrix.c create mode 100644 keyboards/kinesis/alvicstep/readme.md create mode 100644 keyboards/kinesis/alvicstep/rules.mk delete mode 100644 keyboards/kinesis/docs/kicad/kinesis-cache.lib delete mode 100644 keyboards/kinesis/docs/kicad/kinesis.pro delete mode 100644 keyboards/kinesis/docs/kicad/kinesis.sch delete mode 100644 keyboards/kinesis/docs/photos/P1050573.jpg delete mode 100644 keyboards/kinesis/docs/photos/P1050574.jpg delete mode 100644 keyboards/kinesis/docs/photos/P1050575.jpg delete mode 100644 keyboards/kinesis/docs/readme.txt delete mode 100644 keyboards/kinesis/docs/schematic.png create mode 100644 keyboards/kinesis/keymaps/dvorak/Makefile create mode 100644 keyboards/kinesis/keymaps/dvorak/config.h create mode 100644 keyboards/kinesis/keymaps/dvorak/keymap.c create mode 100644 keyboards/kinesis/keymaps/milestogo/Makefile create mode 100644 keyboards/kinesis/keymaps/milestogo/config.h create mode 100644 keyboards/kinesis/keymaps/milestogo/keymap.c create mode 100644 keyboards/kinesis/keymaps/milestogo/readme.md delete mode 100644 keyboards/kinesis/matrix.c create mode 100644 keyboards/kinesis/stapelberg/Makefile create mode 100644 keyboards/kinesis/stapelberg/config.h create mode 100644 keyboards/kinesis/stapelberg/images/controller_board.jpg create mode 100644 keyboards/kinesis/stapelberg/images/exterior_reset.jpg create mode 100644 keyboards/kinesis/stapelberg/images/teensy_detail.jpg create mode 100644 keyboards/kinesis/stapelberg/readme.md create mode 100644 keyboards/kinesis/stapelberg/rules.mk create mode 100644 keyboards/kinesis/stapelberg/stapelberg.c create mode 100644 keyboards/kinesis/stapelberg/stapelberg.h diff --git a/keyboards/kinesis/Makefile b/keyboards/kinesis/Makefile index 4e2a6f00f..fbf05ca4a 100644 --- a/keyboards/kinesis/Makefile +++ b/keyboards/kinesis/Makefile @@ -1,3 +1,5 @@ +SUBPROJECT_DEFAULT = alvicstep + ifndef MAKEFILE_INCLUDED include ../../Makefile -endif \ No newline at end of file +endif diff --git a/keyboards/kinesis/alvicstep/Makefile b/keyboards/kinesis/alvicstep/Makefile new file mode 100644 index 000000000..bd09e5885 --- /dev/null +++ b/keyboards/kinesis/alvicstep/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../../Makefile +endif diff --git a/keyboards/kinesis/alvicstep/alvicstep.c b/keyboards/kinesis/alvicstep/alvicstep.c new file mode 100644 index 000000000..fba9f5136 --- /dev/null +++ b/keyboards/kinesis/alvicstep/alvicstep.c @@ -0,0 +1,105 @@ +#include "kinesis.h" + +// begin section origin https://github.com/alvicstep/tmk_keyboard + +void all_led_off(void) +{ + PORTD = 0b11111111; +} + +void all_led_on(void) +{ + PORTD = 0b00000000; +} +void num_lock_led_on(void) +{ + PORTD = 0b11101111; +} + +void caps_lock_led_on(void) +{ + PORTD = 0b01111111; +} + +void scroll_lock_led_on(void) +{ + PORTD = 0b11011111; +} +void keypad_led_on(void) +{ + PORTD = 0b10111111; +} +void blink_all_leds(void) +{ + all_led_on(); + _delay_ms(500); + + all_led_off(); + _delay_ms(100); + + caps_lock_led_on(); + _delay_ms(100); + + num_lock_led_on(); + _delay_ms(100); + + scroll_lock_led_on(); + _delay_ms(100); + + keypad_led_on(); + _delay_ms(100); + + //back + + scroll_lock_led_on(); + _delay_ms(100); + + num_lock_led_on(); + _delay_ms(100); + + caps_lock_led_on(); + _delay_ms(100); + + all_led_off(); +} + +// End section origin https://github.com/alvicstep/tmk_keyboard + + void matrix_init_kb(void) { + blink_all_leds(); + matrix_init_user(); +} + + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + +//Copyright 2014 Warren Janssens + uint8_t leds = 0xF0; + if (usb_led & 1 << USB_LED_NUM_LOCK) + leds &= ~0x10; + if (usb_led & 1 << USB_LED_CAPS_LOCK) + leds &= ~0x80; + if (usb_led & 1 << USB_LED_SCROLL_LOCK) + leds &= ~0x20; + PORTD = (PORTD & 0x0F) | leds; + + led_set_user(usb_led); + +} + + diff --git a/keyboards/kinesis/alvicstep/alvicstep.h b/keyboards/kinesis/alvicstep/alvicstep.h new file mode 100644 index 000000000..f91a52314 --- /dev/null +++ b/keyboards/kinesis/alvicstep/alvicstep.h @@ -0,0 +1,67 @@ +#ifndef KINESIS_ALVICSTEP_H +#define KINESIS_ALVICSTEP_H + +#include "../kinesis.h" + + +#define KEYMAP( \ + k02,k22,k12,k01,k21,k11,k00,k20,k10, \ + k80,k70,k60,k50,k40,k30, \ + k81,k71,k61,k51,k41,k31, \ + k82,k72,k62,k52,k42,k32, \ + k83,k73,k63,k53,k43,k33, \ + k74,k64,k54,k34, \ + k36,k35, \ + k55, \ + k56,k46,k75, \ + k03,k23,k13,k04,k24,k14,k05,k85,k84, \ + k94,kA4,kB4,kD4,kE4,kF4, \ + k95,kA5,kB5,kD5,kE5,kF5, \ + k96,kA6,kB6,kD6,kE6,kF6, \ + k97,kA7,kB7,kD7,kE7,kF7, \ + k93,kB3,kD3,kE3, \ + k47,k66, \ + k67, \ + k87,k76,k86 \ +) { \ + { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO }, \ + { k10, k11, k12, k13, k14, KC_NO, KC_NO, KC_NO }, \ + { k20, k21, k22, k23, k24, KC_NO, KC_NO, KC_NO }, \ + { k30, k31, k32, k33, k34, k35, k36, KC_NO }, \ + { k40, k41, k42, k43, KC_NO, KC_NO, k46, k47 }, \ + { k50, k51, k52, k53, k54, k55, k56, KC_NO }, \ + { k60, k61, k62, k63, k64, KC_NO, k66, k67 }, \ + { k70, k71, k72, k73, k74, k75, k76, KC_NO }, \ + { k80, k81, k82, k83, k84, k85, k86, k87}, \ + { KC_NO, KC_NO ,KC_NO ,k93, k94, k95, k96, k97}, \ + { KC_NO, KC_NO ,KC_NO ,KC_NO, kA4, kA5, kA6, kA7}, \ + { KC_NO, KC_NO ,KC_NO ,kB3, kB4, kB5, kB6, kB7}, \ + { KC_NO, KC_NO ,KC_NO ,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO}, \ + { KC_NO, KC_NO ,KC_NO ,kD3, kD4, kD5, kD6, kD7}, \ + { KC_NO, KC_NO ,KC_NO ,kE3, kE4, kE5, kE6, kE7}, \ + { KC_NO, KC_NO ,KC_NO ,KC_NO, kF4, kF5, kF6, kF7} \ +} + + +/* Row pin configuration +PF0 A +PF1 B +PF2 C +PF3 G 0 = U4, 1 = U5 + + + r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 rA rB rC rD rE rF +PB0 c0| f6 f8 f7 5 4 3 2 1 =+ +PB1 c1| f3 f5 f4 t r e w q TAB +PB2 c2| ESC f2 f1 g f d s a CL +PB3 c3| f9 f11 f10 b v c x z LS UP DN [{ ]} +PB4 c4| f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ +PB5 c5| PB PGM KPD y u i o p \ +PB6 c6| LC DL BS RC EN SP h j k l ;: '" +PB7 c7| RA PU PD n m ,< .> /? RS + */ + + + + +#endif diff --git a/keyboards/kinesis/alvicstep/config.h b/keyboards/kinesis/alvicstep/config.h new file mode 100644 index 000000000..88b7e2644 --- /dev/null +++ b/keyboards/kinesis/alvicstep/config.h @@ -0,0 +1,35 @@ +#ifndef ALVICSTEP_CONFIG_H +#define ALVICSTEP_CONFIG_H + +#include "../config.h" + +/* USB Device descriptor parameter */ +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 + +/* key matrix size */ +#define MATRIX_ROWS 16 +#define MATRIX_COLS 8 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +//Passed through the port multipler, so 4 pins =16 +#define MATRIX_ROW_PINS { F0,F1, F2, F3 } + +// May be upside down. +#define MATRIX_COL_PINS { B0,B1, B2, B3, B4, B5, B6, B7 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + + +#endif diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib new file mode 100644 index 000000000..f798d39d6 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib @@ -0,0 +1,232 @@ +EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm +#encoding utf-8 +# +# AT90S4414-P +# +DEF AT90S4414-P IC 0 40 Y Y 1 F N +F0 "IC" -850 1880 40 H V L BNN +F1 "AT90S4414-P" 450 -1950 40 H V L BNN +F2 "DIL40" 0 0 30 H V C CIN +F3 "~" 0 0 60 H V C CNN +ALIAS AT90S8515-P +$FPLIST + 40DIP-ELL600 + 40dip600 +$ENDFPLIST +DRAW +S -850 1850 850 -1850 0 1 10 f +X (T0)PB0 1 1000 700 150 L 40 40 1 1 B +X (T1)PB1 2 1000 600 150 L 40 40 1 1 B +X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B +X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B +X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B +X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B +X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B +X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B +X ~RESET 9 -1000 1700 150 R 40 40 1 1 I +X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B +X GND 20 0 -2000 150 U 40 40 1 1 W +X ALE 30 1000 850 150 L 40 40 1 1 O +X VCC 40 0 2000 150 D 40 40 1 1 W +X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B +X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B +X ICP 31 -1000 -1400 150 R 40 40 1 1 I +X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B +X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B +X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B +X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B +X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B +X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B +X PD4 14 1000 -1400 150 L 40 40 1 1 B +X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B +X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B +X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B +X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B +X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B +X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B +X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B +X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B +X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B +X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B +X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B +X XTAL2 18 -1000 1200 150 R 40 40 1 1 B +X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B +X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B +X XTAL1 19 -1000 800 150 R 40 40 1 1 B +X OC1B 29 -1000 -1500 150 R 40 40 1 1 W +X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# ATMEGA16U4-A +# +DEF ATMEGA16U4-A U 0 40 Y Y 1 F N +F0 "U" -950 1700 40 H V C CNN +F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN +F2 "TQFP44" 0 0 35 H V C CIN +F3 "~" 1100 1100 60 H V C CNN +ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A +$FPLIST + TQFP44 +$ENDFPLIST +DRAW +S -1000 1650 950 -1450 0 1 10 f +X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B +X UVCC 2 -450 1800 150 D 40 40 1 1 W +X D- 3 -1150 100 150 R 40 40 1 1 B +X D+ 4 -1150 200 150 R 40 40 1 1 B +X UGND 5 -400 -1600 150 U 40 40 1 1 P +X UCAP 6 -1150 -50 150 R 40 40 1 1 P +X VBUS 7 -1150 350 150 R 40 40 1 1 P +X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B +X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B +X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B +X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B +X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B +X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B +X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B +X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B +X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B +X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B +X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B +X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B +X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B +X AREF 42 -1150 -850 150 R 40 40 1 1 P +X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I +X GND 23 -50 -1600 150 U 40 40 1 1 W +X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B +X GND 43 150 -1600 150 U 40 40 1 1 W +X VCC 14 -200 1800 150 D 40 40 1 1 W +X AVCC 24 150 1800 150 D 40 40 1 1 W +X VCC 34 -100 1800 150 D 40 40 1 1 W +X AVCC 44 250 1800 150 D 40 40 1 1 W +X GND 15 -150 -1600 150 U 40 40 1 1 W +X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B +X GND 35 50 -1600 150 U 40 40 1 1 W +X XTAL2 16 -1150 950 150 R 40 40 1 1 O +X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B +X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B +X XTAL1 17 -1150 1150 150 R 40 40 1 1 I +X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B +X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B +X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B +X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B +X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B +X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B +X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B +X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# C +# +DEF C C 0 10 N Y 1 F N +F0 "C" 0 100 40 H V L CNN +F1 "C" 6 -85 40 H V L CNN +F2 "~" 38 -150 30 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + SM* + C? + C1-1 +$ENDFPLIST +DRAW +P 2 0 1 20 -80 -30 80 -30 N +P 2 0 1 20 -80 30 80 30 N +X ~ 1 0 200 170 D 40 40 1 1 P +X ~ 2 0 -200 170 U 40 40 1 1 P +ENDDRAW +ENDDEF +# +# CONN_7 +# +DEF CONN_7 P 0 40 Y N 1 F N +F0 "P" -30 0 60 V V C CNN +F1 "CONN_7" 70 0 60 V V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +S -100 350 150 -350 0 1 0 N +X P1 1 -350 300 250 R 50 50 1 1 P I +X P2 2 -350 200 250 R 50 50 1 1 P I +X P3 3 -350 100 250 R 50 50 1 1 P I +X P4 4 -350 0 250 R 50 50 1 1 P I +X P5 5 -350 -100 250 R 50 50 1 1 P I +X P6 6 -350 -200 250 R 50 50 1 1 P I +X P7 7 -350 -300 250 R 50 50 1 1 P I +ENDDRAW +ENDDEF +# +# GND +# +DEF ~GND #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 0 30 H I C CNN +F1 "GND" 0 -70 30 H I C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N +X GND 1 0 0 0 U 30 30 1 1 W N +ENDDRAW +ENDDEF +# +# R +# +DEF R R 0 0 N Y 1 F N +F0 "R" 80 0 40 V V C CNN +F1 "R" 7 1 40 V V C CNN +F2 "~" -70 0 30 V V C CNN +F3 "~" 0 0 30 H V C CNN +$FPLIST + R? + SM0603 + SM0805 + R?-* + SM1206 +$ENDFPLIST +DRAW +S -40 150 40 -150 0 1 12 N +X ~ 1 0 250 100 D 60 60 1 1 P +X ~ 2 0 -250 100 U 60 60 1 1 P +ENDDRAW +ENDDEF +# +# USB-MINI-B +# +DEF USB-MINI-B CON 0 40 Y Y 1 F N +F0 "CON" -250 450 60 H V C CNN +F1 "USB-MINI-B" -50 -500 60 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + USB-Mini-B-Jack +$ENDFPLIST +DRAW +S -350 400 350 -400 0 1 0 N +X VBUS 1 -550 300 200 R 50 50 1 1 W +X D- 2 -550 150 200 R 50 50 1 1 B +X D+ 3 -550 0 200 R 50 50 1 1 B +X ID 4 -550 -150 200 R 50 50 1 1 B +X GND 5 -550 -300 200 R 50 50 1 1 W +X SHELL1 6 550 300 200 L 50 50 1 1 B +X SHELL2 7 550 150 200 L 50 50 1 1 B +X SHELL3 8 550 -150 200 L 50 50 1 1 B +X SHELL4 9 550 -300 200 L 50 50 1 1 B +ENDDRAW +ENDDEF +# +# VCC +# +DEF VCC #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 100 30 H I C CNN +F1 "VCC" 0 100 30 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +X VCC 1 0 0 0 U 20 20 0 0 W N +C 0 50 20 0 1 0 N +P 3 0 1 0 0 0 0 30 0 30 N +ENDDRAW +ENDDEF +# +#End Library diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro new file mode 100644 index 000000000..9f130b509 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro @@ -0,0 +1,83 @@ +update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm +version=1 +last_client=pcbnew +[cvpcb] +version=1 +NetIExt=net +[cvpcb/libraries] +EquName1=devcms +[general] +version=1 +[eeschema] +version=1 +PageLayoutDescrFile= +SubpartIdSeparator=0 +SubpartFirstId=65 +LibDir=../../../lib/kicad/library +NetFmtName= +RptD_X=0 +RptD_Y=100 +RptLab=1 +LabSize=60 +[eeschema/libraries] +LibName1=power +LibName2=device +LibName3=transistors +LibName4=conn +LibName5=linear +LibName6=regul +LibName7=74xx +LibName8=cmos4000 +LibName9=adc-dac +LibName10=memory +LibName11=xilinx +LibName12=special +LibName13=microcontrollers +LibName14=dsp +LibName15=microchip +LibName16=analog_switches +LibName17=motorola +LibName18=texas +LibName19=intel +LibName20=audio +LibName21=interface +LibName22=digital-audio +LibName23=philips +LibName24=display +LibName25=cypress +LibName26=siliconi +LibName27=opto +LibName28=atmel +LibName29=contrib +LibName30=valves +LibName31=custom +[pcbnew] +version=1 +LastNetListRead= +UseCmpFile=1 +PadDrill=1.016000000000 +PadDrillOvalY=1.016000000000 +PadSizeH=1.524000000000 +PadSizeV=1.524000000000 +PcbTextSizeV=1.500000000000 +PcbTextSizeH=1.500000000000 +PcbTextThickness=0.300000000000 +ModuleTextSizeV=1.000000000000 +ModuleTextSizeH=1.000000000000 +ModuleTextSizeThickness=0.150000000000 +SolderMaskClearance=0.000000000000 +SolderMaskMinWidth=0.000000000000 +DrawSegmentWidth=0.200000000000 +BoardOutlineThickness=0.100000000000 +ModuleOutlineThickness=0.150000000000 +[pcbnew/libraries] +LibDir=../../../lib/kicad/modules +LibName1=custom +LibName2=Sockets +LibName3=Connect +LibName4=Discret +LibName5=Divers +LibName6=Display +LibName7=LEDs +LibName8=SMD_Packages +LibName9=Sockets_DIP diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch new file mode 100644 index 000000000..f75335aa0 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch @@ -0,0 +1,634 @@ +EESchema Schematic File Version 2 +LIBS:power +LIBS:device +LIBS:transistors +LIBS:conn +LIBS:linear +LIBS:regul +LIBS:74xx +LIBS:cmos4000 +LIBS:adc-dac +LIBS:memory +LIBS:xilinx +LIBS:special +LIBS:microcontrollers +LIBS:dsp +LIBS:microchip +LIBS:analog_switches +LIBS:motorola +LIBS:texas +LIBS:intel +LIBS:audio +LIBS:interface +LIBS:digital-audio +LIBS:philips +LIBS:display +LIBS:cypress +LIBS:siliconi +LIBS:opto +LIBS:atmel +LIBS:contrib +LIBS:valves +LIBS:custom +LIBS:kinesis-cache +EELAYER 27 0 +EELAYER END +$Descr A4 11693 8268 +encoding utf-8 +Sheet 1 1 +Title "" +Date "13 nov 2014" +Rev "" +Comp "" +Comment1 "" +Comment2 "" +Comment3 "" +Comment4 "" +$EndDescr +$Comp +L C C4 +U 1 1 545804FB +P 2850 4250 +F 0 "C4" H 2850 4350 40 0000 L CNN +F 1 "1uF" H 2856 4165 40 0000 L CNN +F 2 "~" H 2888 4100 30 0000 C CNN +F 3 "~" H 2850 4250 60 0000 C CNN + 1 2850 4250 + -1 0 0 1 +$EndComp +$Comp +L R R3 +U 1 1 545805E8 +P 2500 4000 +F 0 "R3" V 2580 4000 40 0000 C CNN +F 1 "22" V 2507 4001 40 0000 C CNN +F 2 "~" V 2430 4000 30 0000 C CNN +F 3 "~" H 2500 4000 30 0000 C CNN + 1 2500 4000 + 0 -1 -1 0 +$EndComp +$Comp +L R R2 +U 1 1 545805FA +P 2500 3800 +F 0 "R2" V 2580 3800 40 0000 C CNN +F 1 "22" V 2507 3801 40 0000 C CNN +F 2 "~" V 2430 3800 30 0000 C CNN +F 3 "~" H 2500 3800 30 0000 C CNN + 1 2500 3800 + 0 -1 -1 0 +$EndComp +Entry Wire Line + 6450 2450 6550 2550 +Entry Wire Line + 6450 2550 6550 2650 +Entry Wire Line + 6450 2650 6550 2750 +Entry Wire Line + 6450 2750 6550 2850 +Entry Wire Line + 6450 2950 6550 3050 +Entry Wire Line + 6450 3050 6550 3150 +Entry Wire Line + 6450 2850 6550 2950 +Entry Wire Line + 6450 3150 6550 3250 +Wire Wire Line + 10250 1800 10750 1800 +Entry Wire Line + 10750 1800 10850 1900 +Entry Wire Line + 10750 1900 10850 2000 +Entry Wire Line + 10750 2000 10850 2100 +Entry Wire Line + 10750 2800 10850 2900 +Entry Wire Line + 10750 2900 10850 3000 +Entry Wire Line + 10750 3000 10850 3100 +Entry Wire Line + 10750 3100 10850 3200 +Entry Wire Line + 10750 3200 10850 3300 +Entry Wire Line + 10750 3300 10850 3400 +$Comp +L AT90S8515-P IC2 +U 1 1 545A62EA +P 9250 3500 +F 0 "IC2" H 8400 5380 40 0000 L BNN +F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN +F 2 "DIL40" H 9250 3500 30 0000 C CIN +F 3 "" H 9250 3500 60 0000 C CNN + 1 9250 3500 + 1 0 0 -1 +$EndComp +NoConn ~ 10250 2650 +Entry Wire Line + 10750 3650 10850 3750 +Entry Wire Line + 10750 3750 10850 3850 +Entry Wire Line + 10750 3850 10850 3950 +Entry Wire Line + 10750 3950 10850 4050 +Entry Wire Line + 10750 4050 10850 4150 +Entry Wire Line + 10750 4150 10850 4250 +Entry Wire Line + 10750 4350 10850 4450 +Entry Wire Line + 10750 4250 10850 4350 +NoConn ~ 8250 4900 +NoConn ~ 8250 5000 +NoConn ~ 8250 1800 +Wire Wire Line + 10250 1900 10750 1900 +Wire Wire Line + 10250 2000 10750 2000 +Wire Wire Line + 10250 2100 10750 2100 +Wire Wire Line + 10250 2200 10750 2200 +Wire Wire Line + 10250 2300 10750 2300 +Wire Wire Line + 10250 2400 10750 2400 +Wire Wire Line + 10250 2500 10750 2500 +Text Label 10350 1800 0 60 ~ 0 +A +Text Label 10350 1900 0 60 ~ 0 +B +Text Label 10350 2000 0 60 ~ 0 +C +Text Label 10350 2100 0 60 ~ 0 +G +Wire Wire Line + 10250 2800 10750 2800 +Wire Wire Line + 10250 2900 10750 2900 +Wire Wire Line + 10250 3000 10750 3000 +Wire Wire Line + 10250 3100 10750 3100 +Wire Wire Line + 10250 3200 10750 3200 +Wire Wire Line + 10250 3300 10750 3300 +Wire Wire Line + 10250 3400 10750 3400 +Wire Wire Line + 10250 3500 10750 3500 +Text Label 10350 2800 0 60 ~ 0 +DL2 +Text Label 10350 2900 0 60 ~ 0 +DR1 +Text Label 10350 3000 0 60 ~ 0 +DR2 +Text Label 10350 3100 0 60 ~ 0 +DL1 +Text Label 10350 3400 0 60 ~ 0 +SCL +Text Label 10350 3500 0 60 ~ 0 +SDA +Wire Wire Line + 10250 3650 10750 3650 +Wire Wire Line + 10250 3750 10750 3750 +Wire Wire Line + 10250 3850 10750 3850 +Wire Wire Line + 10250 3950 10750 3950 +Wire Wire Line + 10250 4050 10750 4050 +Wire Wire Line + 10250 4150 10750 4150 +Wire Wire Line + 10250 4250 10750 4250 +Wire Wire Line + 10250 4350 10750 4350 +Text Label 10350 3650 0 60 ~ 0 +R1 +Text Label 10350 3750 0 60 ~ 0 +R2 +Text Label 10350 3850 0 60 ~ 0 +R3 +Text Label 10350 3950 0 60 ~ 0 +R4 +Text Label 10350 4050 0 60 ~ 0 +R5 +Text Label 10350 4150 0 60 ~ 0 +R6 +Text Label 10350 4250 0 60 ~ 0 +R7 +Text Label 10350 4350 0 60 ~ 0 +R8 +Wire Wire Line + 10250 4500 10750 4500 +Wire Wire Line + 10250 4600 10750 4600 +Wire Wire Line + 10250 4700 10750 4700 +Wire Wire Line + 10250 4800 10750 4800 +Wire Wire Line + 10250 4900 10750 4900 +Wire Wire Line + 10250 5000 10750 5000 +Wire Wire Line + 10250 5100 10750 5100 +Wire Wire Line + 10250 5200 10750 5200 +Text Label 10350 4600 0 60 ~ 0 +FS1 +Text Label 10350 5000 0 60 ~ 0 +FS3 +Text Label 10350 5200 0 60 ~ 0 +FS2 +$Comp +L GND #PWR01 +U 1 1 545A7377 +P 9250 5600 +F 0 "#PWR01" H 9250 5600 30 0001 C CNN +F 1 "GND" H 9250 5530 30 0001 C CNN +F 2 "" H 9250 5600 60 0000 C CNN +F 3 "" H 9250 5600 60 0000 C CNN + 1 9250 5600 + 1 0 0 -1 +$EndComp +Wire Wire Line + 9250 5500 9250 5600 +Text Label 10350 4700 0 60 ~ 0 +CLOCK +Text Label 10350 4800 0 60 ~ 0 +DATA +NoConn ~ 10750 4700 +NoConn ~ 10750 4800 +Text Label 10350 3200 0 60 ~ 0 +KP +Text Label 10350 3300 0 60 ~ 0 +PGM +Text Label 10350 2500 0 60 ~ 0 +BUZZ +NoConn ~ 8250 2300 +NoConn ~ 8250 2700 +$Comp +L GND #PWR02 +U 1 1 545A7565 +P 4750 5700 +F 0 "#PWR02" H 4750 5700 30 0001 C CNN +F 1 "GND" H 4750 5630 30 0001 C CNN +F 2 "" H 4750 5700 60 0000 C CNN +F 3 "" H 4750 5700 60 0000 C CNN + 1 4750 5700 + 1 0 0 -1 +$EndComp +Entry Wire Line + 6450 3650 6550 3750 +Entry Wire Line + 6450 3750 6550 3850 +Entry Wire Line + 6450 4150 6550 4250 +Entry Wire Line + 6450 4250 6550 4350 +Entry Wire Line + 6450 4050 6550 4150 +Entry Wire Line + 6450 4350 6550 4450 +NoConn ~ 3750 2850 +Wire Wire Line + 1200 2000 6450 2000 +NoConn ~ 3750 3050 +Wire Wire Line + 2750 3800 3750 3800 +Wire Wire Line + 2750 3900 3750 3900 +Wire Wire Line + 2750 3900 2750 4000 +Wire Bus Line + 6550 2100 6550 6050 +Wire Bus Line + 10850 1600 10850 6050 +Text Label 6050 4350 0 60 ~ 0 +DL1 +Text Label 6050 4250 0 60 ~ 0 +DR2 +Text Label 6050 4150 0 60 ~ 0 +DR1 +Text Label 6050 4050 0 60 ~ 0 +DL2 +Text Label 6050 2450 0 60 ~ 0 +R1 +Text Label 6050 2550 0 60 ~ 0 +R2 +Text Label 6050 2650 0 60 ~ 0 +R3 +Text Label 6050 2750 0 60 ~ 0 +R4 +Text Label 6050 2850 0 60 ~ 0 +R5 +Text Label 6050 2950 0 60 ~ 0 +R6 +Text Label 6050 3050 0 60 ~ 0 +R7 +Text Label 6050 3150 0 60 ~ 0 +R8 +Text Label 6050 5050 0 60 ~ 0 +A +Text Label 6050 5150 0 60 ~ 0 +B +Text Label 6050 5250 0 60 ~ 0 +C +Text Label 6050 5350 0 60 ~ 0 +G +Text Label 1300 3800 0 60 ~ 0 +D+ +Text Label 1300 4000 0 60 ~ 0 +D- +NoConn ~ 10750 2200 +NoConn ~ 10750 2300 +NoConn ~ 10750 2400 +Text Label 10350 4500 0 60 ~ 0 +GND +NoConn ~ 10750 4900 +NoConn ~ 10750 5100 +Text Label 6050 3450 0 60 ~ 0 +KP +Text Label 6050 3350 0 60 ~ 0 +PGM +$Comp +L ATMEGA32U4-A U1 +U 1 1 5462E0B1 +P 4900 4000 +F 0 "U1" H 3950 5700 40 0000 C CNN +F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN +F 2 "TQFP44" H 4900 4000 35 0000 C CIN +F 3 "" H 6000 5100 60 0000 C CNN + 1 4900 4000 + 1 0 0 -1 +$EndComp +Wire Wire Line + 3750 4850 3750 5600 +Wire Wire Line + 4450 2200 5150 2200 +Connection ~ 4700 2200 +Connection ~ 4800 2200 +Connection ~ 5050 2200 +Connection ~ 4800 2000 +Wire Wire Line + 6000 2450 6450 2450 +Wire Wire Line + 6000 2550 6450 2550 +Wire Wire Line + 6000 2650 6450 2650 +Wire Wire Line + 6000 2750 6450 2750 +Wire Wire Line + 6000 2850 6450 2850 +Wire Wire Line + 6000 2950 6450 2950 +Wire Wire Line + 6000 3050 6450 3050 +Wire Wire Line + 6000 3150 6450 3150 +Wire Wire Line + 6000 5050 6450 5050 +Wire Wire Line + 6000 5150 6450 5150 +Wire Wire Line + 6000 5250 6450 5250 +Wire Wire Line + 6000 4050 6450 4050 +Wire Wire Line + 6000 4150 6450 4150 +Wire Wire Line + 6000 4250 6450 4250 +Wire Wire Line + 6000 4350 6450 4350 +Wire Wire Line + 6000 4550 6450 4550 +Entry Wire Line + 6450 3350 6550 3450 +Entry Wire Line + 6450 3450 6550 3550 +Entry Wire Line + 6450 5050 6550 5150 +Entry Wire Line + 6450 5150 6550 5250 +Entry Wire Line + 6450 5250 6550 5350 +Entry Wire Line + 6450 5350 6550 5450 +Entry Wire Line + 6450 4650 6550 4750 +Wire Wire Line + 6000 3350 6450 3350 +Wire Wire Line + 6000 3450 6450 3450 +Wire Wire Line + 1200 5600 6450 5600 +Connection ~ 4950 5600 +Connection ~ 4850 5600 +Wire Wire Line + 4750 5600 4750 5700 +Connection ~ 4750 5600 +Connection ~ 4500 5600 +Text Label 6050 4550 0 60 ~ 0 +HWB +Wire Wire Line + 6000 5350 6450 5350 +Wire Wire Line + 6000 3650 6450 3650 +Wire Wire Line + 6000 3750 6450 3750 +Text Label 6050 3650 0 60 ~ 0 +SCL +Text Label 6050 3750 0 60 ~ 0 +SDA +Wire Wire Line + 6000 3850 6450 3850 +Wire Wire Line + 6000 3950 6450 3950 +Wire Wire Line + 6000 4650 6450 4650 +Text Label 6050 4650 0 60 ~ 0 +BUZZ +NoConn ~ 10750 4600 +NoConn ~ 10750 5000 +NoConn ~ 10750 5200 +Entry Wire Line + 10750 3400 10850 3500 +Entry Wire Line + 10750 3500 10850 3600 +Entry Wire Line + 10750 4500 10850 4600 +Wire Wire Line + 2850 4050 3750 4050 +Text Label 2950 4050 0 60 ~ 0 +UCAP +Wire Wire Line + 6000 4850 6450 4850 +Wire Wire Line + 6000 4950 6450 4950 +NoConn ~ 6450 4850 +NoConn ~ 6450 4950 +NoConn ~ 6450 4550 +$Comp +L USB-MINI-B CON1 +U 1 1 546431C1 +P 2100 5050 +F 0 "CON1" H 1850 5500 60 0000 C CNN +F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN +F 2 "" H 2100 5050 60 0000 C CNN +F 3 "" H 2100 5050 60 0000 C CNN + 1 2100 5050 + 0 1 1 0 +$EndComp +$Comp +L VCC #PWR03 +U 1 1 54643698 +P 2400 4400 +F 0 "#PWR03" H 2400 4500 30 0001 C CNN +F 1 "VCC" H 2400 4500 30 0000 C CNN +F 2 "" H 2400 4400 60 0000 C CNN +F 3 "" H 2400 4400 60 0000 C CNN + 1 2400 4400 + 1 0 0 -1 +$EndComp +Text Notes 2600 2750 0 60 ~ 0 +Teensy 2.0\n(not fully drawn) +$Comp +L CONN_7 B7K-PH-K-S1 +U 1 1 54643939 +P 1950 6900 +F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN +F 1 "CONN_7" V 2020 6900 60 0000 C CNN +F 2 "" H 1950 6900 60 0000 C CNN +F 3 "" H 1950 6900 60 0000 C CNN + 1 1950 6900 + 1 0 0 -1 +$EndComp +Connection ~ 3750 5600 +Connection ~ 2400 5600 +Connection ~ 2250 5600 +Connection ~ 1950 5600 +Wire Wire Line + 2400 4400 2400 4500 +Wire Wire Line + 2250 4000 2250 4500 +Wire Wire Line + 1200 3800 2250 3800 +Wire Wire Line + 2100 3800 2100 4500 +Wire Wire Line + 2850 4450 2850 5600 +Connection ~ 2850 5600 +Entry Wire Line + 1100 6800 1200 6900 +Entry Wire Line + 1100 6900 1200 7000 +Entry Wire Line + 1100 7000 1200 7100 +Entry Wire Line + 1100 6700 1200 6800 +Wire Wire Line + 1200 6600 1600 6600 +Wire Wire Line + 1200 6700 1600 6700 +Wire Wire Line + 1200 6800 1600 6800 +Wire Wire Line + 1200 6900 1600 6900 +Wire Wire Line + 1200 7000 1600 7000 +Wire Wire Line + 1200 7100 1600 7100 +Wire Wire Line + 1200 7200 1600 7200 +Text Label 1300 6600 0 60 ~ 0 +FS2 +Text Label 1300 6700 0 60 ~ 0 +FS1 +Text Label 1300 6800 0 60 ~ 0 +VCC +Text Label 1300 6900 0 60 ~ 0 +D- +Text Label 1300 7000 0 60 ~ 0 +D+ +Text Label 1300 7100 0 60 ~ 0 +GND +Text Label 1300 7200 0 60 ~ 0 +FS3 +NoConn ~ 3750 2450 +Wire Wire Line + 3600 2000 3600 3650 +Wire Wire Line + 3600 3650 3750 3650 +NoConn ~ 1950 4500 +Wire Bus Line + 1100 1900 1100 7100 +NoConn ~ 1200 6600 +NoConn ~ 1200 6700 +NoConn ~ 1200 7200 +Connection ~ 2100 3800 +Wire Wire Line + 1200 4000 2250 4000 +Entry Wire Line + 1100 3700 1200 3800 +Entry Wire Line + 1100 3900 1200 4000 +Text Label 10350 1500 0 60 ~ 0 +VCC +Entry Wire Line + 1100 1900 1200 2000 +Text Label 1250 2000 0 60 ~ 0 +VCC +Entry Wire Line + 1100 5500 1200 5600 +Connection ~ 1800 5600 +Text Label 1300 5600 0 60 ~ 0 +GND +Wire Wire Line + 9250 5500 10750 5500 +Entry Wire Line + 10750 5500 10850 5600 +Text Label 10350 5500 0 60 ~ 0 +GND +Wire Wire Line + 9250 1500 10750 1500 +Entry Wire Line + 10750 1500 10850 1600 +Connection ~ 3600 2000 +Wire Wire Line + 4800 2000 4800 2200 +Entry Wire Line + 6450 2000 6550 2100 +Text Label 6050 2000 0 60 ~ 0 +VCC +Connection ~ 5050 5600 +Entry Wire Line + 6450 5600 6550 5700 +Text Label 6050 5600 0 60 ~ 0 +GND +NoConn ~ 6450 3850 +NoConn ~ 6450 3950 +Wire Wire Line + 1800 4500 1500 4500 +Wire Wire Line + 1500 4500 1500 5600 +Connection ~ 1500 5600 +Entry Wire Line + 10750 2500 10850 2600 +Entry Wire Line + 10750 2100 10850 2200 +Text Notes 1000 5300 1 60 ~ 0 +Sacrificial USB cable from header to Teensy +Text Notes 7850 5950 0 60 ~ 0 +Ribbon cable between Teensy pins and socket +Wire Bus Line + 10850 6050 6550 6050 +$EndSCHEMATC diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg new file mode 100644 index 000000000..027ab9efb Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg new file mode 100644 index 000000000..d49c492b8 Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg new file mode 100644 index 000000000..50cc9897c Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/readme.txt b/keyboards/kinesis/alvicstep/docs/docs/readme.txt new file mode 100644 index 000000000..af33ac490 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/readme.txt @@ -0,0 +1,52 @@ +This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis +and is probably Copyright 2014 Warren Janssens +and probably released under GPL v2, which may be recovered at . + +Row configuration +PF0 A +PF1 B +PF2 C +PF3 G 0 = U4, 1 = U5 + +Column configuration + 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 + r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 +PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ +PB1 22 c2 f3 f5 f4 t r e w q TAB +PB2 23 c3 ESC f2 f1 g f d s a CL +PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} +PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ +PB5 26 c6 PB PGM KPD y u i o p \ +PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" +PB7 28 c8 RA PU PD n m ,< .> /? RS + */ + + +40 pin connector + + DL2 1 40 VCC + DR1 2 39 A + DR2 3 38 B + DL1 4 37 C + KPD 5 36 G + PGM 6 35 + SCL 7 34 + SDA 8 33 + RST 9 32 BUZZ + WP 10 31 EA + FS1 11 30 ALE + CLOCK 12 29 PSEN + DATA 13 28 r8 + 14 27 r7 + FS3 15 26 r6 + 16 25 r5 + FS2 17 24 r4 + XTAL1 18 23 r3 + XTAL2 19 22 r2 + GND 20 21 r1 + + +references: +https://github.com/chrisandreae/keyboard-firmware + + diff --git a/keyboards/kinesis/alvicstep/docs/docs/schematic.png b/keyboards/kinesis/alvicstep/docs/docs/schematic.png new file mode 100644 index 000000000..fa9405a1f Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/schematic.png differ diff --git a/keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib new file mode 100644 index 000000000..f798d39d6 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib @@ -0,0 +1,232 @@ +EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm +#encoding utf-8 +# +# AT90S4414-P +# +DEF AT90S4414-P IC 0 40 Y Y 1 F N +F0 "IC" -850 1880 40 H V L BNN +F1 "AT90S4414-P" 450 -1950 40 H V L BNN +F2 "DIL40" 0 0 30 H V C CIN +F3 "~" 0 0 60 H V C CNN +ALIAS AT90S8515-P +$FPLIST + 40DIP-ELL600 + 40dip600 +$ENDFPLIST +DRAW +S -850 1850 850 -1850 0 1 10 f +X (T0)PB0 1 1000 700 150 L 40 40 1 1 B +X (T1)PB1 2 1000 600 150 L 40 40 1 1 B +X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B +X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B +X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B +X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B +X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B +X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B +X ~RESET 9 -1000 1700 150 R 40 40 1 1 I +X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B +X GND 20 0 -2000 150 U 40 40 1 1 W +X ALE 30 1000 850 150 L 40 40 1 1 O +X VCC 40 0 2000 150 D 40 40 1 1 W +X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B +X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B +X ICP 31 -1000 -1400 150 R 40 40 1 1 I +X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B +X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B +X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B +X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B +X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B +X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B +X PD4 14 1000 -1400 150 L 40 40 1 1 B +X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B +X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B +X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B +X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B +X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B +X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B +X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B +X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B +X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B +X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B +X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B +X XTAL2 18 -1000 1200 150 R 40 40 1 1 B +X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B +X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B +X XTAL1 19 -1000 800 150 R 40 40 1 1 B +X OC1B 29 -1000 -1500 150 R 40 40 1 1 W +X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# ATMEGA16U4-A +# +DEF ATMEGA16U4-A U 0 40 Y Y 1 F N +F0 "U" -950 1700 40 H V C CNN +F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN +F2 "TQFP44" 0 0 35 H V C CIN +F3 "~" 1100 1100 60 H V C CNN +ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A +$FPLIST + TQFP44 +$ENDFPLIST +DRAW +S -1000 1650 950 -1450 0 1 10 f +X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B +X UVCC 2 -450 1800 150 D 40 40 1 1 W +X D- 3 -1150 100 150 R 40 40 1 1 B +X D+ 4 -1150 200 150 R 40 40 1 1 B +X UGND 5 -400 -1600 150 U 40 40 1 1 P +X UCAP 6 -1150 -50 150 R 40 40 1 1 P +X VBUS 7 -1150 350 150 R 40 40 1 1 P +X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B +X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B +X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B +X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B +X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B +X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B +X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B +X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B +X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B +X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B +X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B +X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B +X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B +X AREF 42 -1150 -850 150 R 40 40 1 1 P +X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I +X GND 23 -50 -1600 150 U 40 40 1 1 W +X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B +X GND 43 150 -1600 150 U 40 40 1 1 W +X VCC 14 -200 1800 150 D 40 40 1 1 W +X AVCC 24 150 1800 150 D 40 40 1 1 W +X VCC 34 -100 1800 150 D 40 40 1 1 W +X AVCC 44 250 1800 150 D 40 40 1 1 W +X GND 15 -150 -1600 150 U 40 40 1 1 W +X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B +X GND 35 50 -1600 150 U 40 40 1 1 W +X XTAL2 16 -1150 950 150 R 40 40 1 1 O +X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B +X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B +X XTAL1 17 -1150 1150 150 R 40 40 1 1 I +X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B +X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B +X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B +X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B +X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B +X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B +X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B +X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# C +# +DEF C C 0 10 N Y 1 F N +F0 "C" 0 100 40 H V L CNN +F1 "C" 6 -85 40 H V L CNN +F2 "~" 38 -150 30 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + SM* + C? + C1-1 +$ENDFPLIST +DRAW +P 2 0 1 20 -80 -30 80 -30 N +P 2 0 1 20 -80 30 80 30 N +X ~ 1 0 200 170 D 40 40 1 1 P +X ~ 2 0 -200 170 U 40 40 1 1 P +ENDDRAW +ENDDEF +# +# CONN_7 +# +DEF CONN_7 P 0 40 Y N 1 F N +F0 "P" -30 0 60 V V C CNN +F1 "CONN_7" 70 0 60 V V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +S -100 350 150 -350 0 1 0 N +X P1 1 -350 300 250 R 50 50 1 1 P I +X P2 2 -350 200 250 R 50 50 1 1 P I +X P3 3 -350 100 250 R 50 50 1 1 P I +X P4 4 -350 0 250 R 50 50 1 1 P I +X P5 5 -350 -100 250 R 50 50 1 1 P I +X P6 6 -350 -200 250 R 50 50 1 1 P I +X P7 7 -350 -300 250 R 50 50 1 1 P I +ENDDRAW +ENDDEF +# +# GND +# +DEF ~GND #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 0 30 H I C CNN +F1 "GND" 0 -70 30 H I C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N +X GND 1 0 0 0 U 30 30 1 1 W N +ENDDRAW +ENDDEF +# +# R +# +DEF R R 0 0 N Y 1 F N +F0 "R" 80 0 40 V V C CNN +F1 "R" 7 1 40 V V C CNN +F2 "~" -70 0 30 V V C CNN +F3 "~" 0 0 30 H V C CNN +$FPLIST + R? + SM0603 + SM0805 + R?-* + SM1206 +$ENDFPLIST +DRAW +S -40 150 40 -150 0 1 12 N +X ~ 1 0 250 100 D 60 60 1 1 P +X ~ 2 0 -250 100 U 60 60 1 1 P +ENDDRAW +ENDDEF +# +# USB-MINI-B +# +DEF USB-MINI-B CON 0 40 Y Y 1 F N +F0 "CON" -250 450 60 H V C CNN +F1 "USB-MINI-B" -50 -500 60 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + USB-Mini-B-Jack +$ENDFPLIST +DRAW +S -350 400 350 -400 0 1 0 N +X VBUS 1 -550 300 200 R 50 50 1 1 W +X D- 2 -550 150 200 R 50 50 1 1 B +X D+ 3 -550 0 200 R 50 50 1 1 B +X ID 4 -550 -150 200 R 50 50 1 1 B +X GND 5 -550 -300 200 R 50 50 1 1 W +X SHELL1 6 550 300 200 L 50 50 1 1 B +X SHELL2 7 550 150 200 L 50 50 1 1 B +X SHELL3 8 550 -150 200 L 50 50 1 1 B +X SHELL4 9 550 -300 200 L 50 50 1 1 B +ENDDRAW +ENDDEF +# +# VCC +# +DEF VCC #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 100 30 H I C CNN +F1 "VCC" 0 100 30 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +X VCC 1 0 0 0 U 20 20 0 0 W N +C 0 50 20 0 1 0 N +P 3 0 1 0 0 0 0 30 0 30 N +ENDDRAW +ENDDEF +# +#End Library diff --git a/keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro new file mode 100644 index 000000000..9f130b509 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro @@ -0,0 +1,83 @@ +update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm +version=1 +last_client=pcbnew +[cvpcb] +version=1 +NetIExt=net +[cvpcb/libraries] +EquName1=devcms +[general] +version=1 +[eeschema] +version=1 +PageLayoutDescrFile= +SubpartIdSeparator=0 +SubpartFirstId=65 +LibDir=../../../lib/kicad/library +NetFmtName= +RptD_X=0 +RptD_Y=100 +RptLab=1 +LabSize=60 +[eeschema/libraries] +LibName1=power +LibName2=device +LibName3=transistors +LibName4=conn +LibName5=linear +LibName6=regul +LibName7=74xx +LibName8=cmos4000 +LibName9=adc-dac +LibName10=memory +LibName11=xilinx +LibName12=special +LibName13=microcontrollers +LibName14=dsp +LibName15=microchip +LibName16=analog_switches +LibName17=motorola +LibName18=texas +LibName19=intel +LibName20=audio +LibName21=interface +LibName22=digital-audio +LibName23=philips +LibName24=display +LibName25=cypress +LibName26=siliconi +LibName27=opto +LibName28=atmel +LibName29=contrib +LibName30=valves +LibName31=custom +[pcbnew] +version=1 +LastNetListRead= +UseCmpFile=1 +PadDrill=1.016000000000 +PadDrillOvalY=1.016000000000 +PadSizeH=1.524000000000 +PadSizeV=1.524000000000 +PcbTextSizeV=1.500000000000 +PcbTextSizeH=1.500000000000 +PcbTextThickness=0.300000000000 +ModuleTextSizeV=1.000000000000 +ModuleTextSizeH=1.000000000000 +ModuleTextSizeThickness=0.150000000000 +SolderMaskClearance=0.000000000000 +SolderMaskMinWidth=0.000000000000 +DrawSegmentWidth=0.200000000000 +BoardOutlineThickness=0.100000000000 +ModuleOutlineThickness=0.150000000000 +[pcbnew/libraries] +LibDir=../../../lib/kicad/modules +LibName1=custom +LibName2=Sockets +LibName3=Connect +LibName4=Discret +LibName5=Divers +LibName6=Display +LibName7=LEDs +LibName8=SMD_Packages +LibName9=Sockets_DIP diff --git a/keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch new file mode 100644 index 000000000..f75335aa0 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch @@ -0,0 +1,634 @@ +EESchema Schematic File Version 2 +LIBS:power +LIBS:device +LIBS:transistors +LIBS:conn +LIBS:linear +LIBS:regul +LIBS:74xx +LIBS:cmos4000 +LIBS:adc-dac +LIBS:memory +LIBS:xilinx +LIBS:special +LIBS:microcontrollers +LIBS:dsp +LIBS:microchip +LIBS:analog_switches +LIBS:motorola +LIBS:texas +LIBS:intel +LIBS:audio +LIBS:interface +LIBS:digital-audio +LIBS:philips +LIBS:display +LIBS:cypress +LIBS:siliconi +LIBS:opto +LIBS:atmel +LIBS:contrib +LIBS:valves +LIBS:custom +LIBS:kinesis-cache +EELAYER 27 0 +EELAYER END +$Descr A4 11693 8268 +encoding utf-8 +Sheet 1 1 +Title "" +Date "13 nov 2014" +Rev "" +Comp "" +Comment1 "" +Comment2 "" +Comment3 "" +Comment4 "" +$EndDescr +$Comp +L C C4 +U 1 1 545804FB +P 2850 4250 +F 0 "C4" H 2850 4350 40 0000 L CNN +F 1 "1uF" H 2856 4165 40 0000 L CNN +F 2 "~" H 2888 4100 30 0000 C CNN +F 3 "~" H 2850 4250 60 0000 C CNN + 1 2850 4250 + -1 0 0 1 +$EndComp +$Comp +L R R3 +U 1 1 545805E8 +P 2500 4000 +F 0 "R3" V 2580 4000 40 0000 C CNN +F 1 "22" V 2507 4001 40 0000 C CNN +F 2 "~" V 2430 4000 30 0000 C CNN +F 3 "~" H 2500 4000 30 0000 C CNN + 1 2500 4000 + 0 -1 -1 0 +$EndComp +$Comp +L R R2 +U 1 1 545805FA +P 2500 3800 +F 0 "R2" V 2580 3800 40 0000 C CNN +F 1 "22" V 2507 3801 40 0000 C CNN +F 2 "~" V 2430 3800 30 0000 C CNN +F 3 "~" H 2500 3800 30 0000 C CNN + 1 2500 3800 + 0 -1 -1 0 +$EndComp +Entry Wire Line + 6450 2450 6550 2550 +Entry Wire Line + 6450 2550 6550 2650 +Entry Wire Line + 6450 2650 6550 2750 +Entry Wire Line + 6450 2750 6550 2850 +Entry Wire Line + 6450 2950 6550 3050 +Entry Wire Line + 6450 3050 6550 3150 +Entry Wire Line + 6450 2850 6550 2950 +Entry Wire Line + 6450 3150 6550 3250 +Wire Wire Line + 10250 1800 10750 1800 +Entry Wire Line + 10750 1800 10850 1900 +Entry Wire Line + 10750 1900 10850 2000 +Entry Wire Line + 10750 2000 10850 2100 +Entry Wire Line + 10750 2800 10850 2900 +Entry Wire Line + 10750 2900 10850 3000 +Entry Wire Line + 10750 3000 10850 3100 +Entry Wire Line + 10750 3100 10850 3200 +Entry Wire Line + 10750 3200 10850 3300 +Entry Wire Line + 10750 3300 10850 3400 +$Comp +L AT90S8515-P IC2 +U 1 1 545A62EA +P 9250 3500 +F 0 "IC2" H 8400 5380 40 0000 L BNN +F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN +F 2 "DIL40" H 9250 3500 30 0000 C CIN +F 3 "" H 9250 3500 60 0000 C CNN + 1 9250 3500 + 1 0 0 -1 +$EndComp +NoConn ~ 10250 2650 +Entry Wire Line + 10750 3650 10850 3750 +Entry Wire Line + 10750 3750 10850 3850 +Entry Wire Line + 10750 3850 10850 3950 +Entry Wire Line + 10750 3950 10850 4050 +Entry Wire Line + 10750 4050 10850 4150 +Entry Wire Line + 10750 4150 10850 4250 +Entry Wire Line + 10750 4350 10850 4450 +Entry Wire Line + 10750 4250 10850 4350 +NoConn ~ 8250 4900 +NoConn ~ 8250 5000 +NoConn ~ 8250 1800 +Wire Wire Line + 10250 1900 10750 1900 +Wire Wire Line + 10250 2000 10750 2000 +Wire Wire Line + 10250 2100 10750 2100 +Wire Wire Line + 10250 2200 10750 2200 +Wire Wire Line + 10250 2300 10750 2300 +Wire Wire Line + 10250 2400 10750 2400 +Wire Wire Line + 10250 2500 10750 2500 +Text Label 10350 1800 0 60 ~ 0 +A +Text Label 10350 1900 0 60 ~ 0 +B +Text Label 10350 2000 0 60 ~ 0 +C +Text Label 10350 2100 0 60 ~ 0 +G +Wire Wire Line + 10250 2800 10750 2800 +Wire Wire Line + 10250 2900 10750 2900 +Wire Wire Line + 10250 3000 10750 3000 +Wire Wire Line + 10250 3100 10750 3100 +Wire Wire Line + 10250 3200 10750 3200 +Wire Wire Line + 10250 3300 10750 3300 +Wire Wire Line + 10250 3400 10750 3400 +Wire Wire Line + 10250 3500 10750 3500 +Text Label 10350 2800 0 60 ~ 0 +DL2 +Text Label 10350 2900 0 60 ~ 0 +DR1 +Text Label 10350 3000 0 60 ~ 0 +DR2 +Text Label 10350 3100 0 60 ~ 0 +DL1 +Text Label 10350 3400 0 60 ~ 0 +SCL +Text Label 10350 3500 0 60 ~ 0 +SDA +Wire Wire Line + 10250 3650 10750 3650 +Wire Wire Line + 10250 3750 10750 3750 +Wire Wire Line + 10250 3850 10750 3850 +Wire Wire Line + 10250 3950 10750 3950 +Wire Wire Line + 10250 4050 10750 4050 +Wire Wire Line + 10250 4150 10750 4150 +Wire Wire Line + 10250 4250 10750 4250 +Wire Wire Line + 10250 4350 10750 4350 +Text Label 10350 3650 0 60 ~ 0 +R1 +Text Label 10350 3750 0 60 ~ 0 +R2 +Text Label 10350 3850 0 60 ~ 0 +R3 +Text Label 10350 3950 0 60 ~ 0 +R4 +Text Label 10350 4050 0 60 ~ 0 +R5 +Text Label 10350 4150 0 60 ~ 0 +R6 +Text Label 10350 4250 0 60 ~ 0 +R7 +Text Label 10350 4350 0 60 ~ 0 +R8 +Wire Wire Line + 10250 4500 10750 4500 +Wire Wire Line + 10250 4600 10750 4600 +Wire Wire Line + 10250 4700 10750 4700 +Wire Wire Line + 10250 4800 10750 4800 +Wire Wire Line + 10250 4900 10750 4900 +Wire Wire Line + 10250 5000 10750 5000 +Wire Wire Line + 10250 5100 10750 5100 +Wire Wire Line + 10250 5200 10750 5200 +Text Label 10350 4600 0 60 ~ 0 +FS1 +Text Label 10350 5000 0 60 ~ 0 +FS3 +Text Label 10350 5200 0 60 ~ 0 +FS2 +$Comp +L GND #PWR01 +U 1 1 545A7377 +P 9250 5600 +F 0 "#PWR01" H 9250 5600 30 0001 C CNN +F 1 "GND" H 9250 5530 30 0001 C CNN +F 2 "" H 9250 5600 60 0000 C CNN +F 3 "" H 9250 5600 60 0000 C CNN + 1 9250 5600 + 1 0 0 -1 +$EndComp +Wire Wire Line + 9250 5500 9250 5600 +Text Label 10350 4700 0 60 ~ 0 +CLOCK +Text Label 10350 4800 0 60 ~ 0 +DATA +NoConn ~ 10750 4700 +NoConn ~ 10750 4800 +Text Label 10350 3200 0 60 ~ 0 +KP +Text Label 10350 3300 0 60 ~ 0 +PGM +Text Label 10350 2500 0 60 ~ 0 +BUZZ +NoConn ~ 8250 2300 +NoConn ~ 8250 2700 +$Comp +L GND #PWR02 +U 1 1 545A7565 +P 4750 5700 +F 0 "#PWR02" H 4750 5700 30 0001 C CNN +F 1 "GND" H 4750 5630 30 0001 C CNN +F 2 "" H 4750 5700 60 0000 C CNN +F 3 "" H 4750 5700 60 0000 C CNN + 1 4750 5700 + 1 0 0 -1 +$EndComp +Entry Wire Line + 6450 3650 6550 3750 +Entry Wire Line + 6450 3750 6550 3850 +Entry Wire Line + 6450 4150 6550 4250 +Entry Wire Line + 6450 4250 6550 4350 +Entry Wire Line + 6450 4050 6550 4150 +Entry Wire Line + 6450 4350 6550 4450 +NoConn ~ 3750 2850 +Wire Wire Line + 1200 2000 6450 2000 +NoConn ~ 3750 3050 +Wire Wire Line + 2750 3800 3750 3800 +Wire Wire Line + 2750 3900 3750 3900 +Wire Wire Line + 2750 3900 2750 4000 +Wire Bus Line + 6550 2100 6550 6050 +Wire Bus Line + 10850 1600 10850 6050 +Text Label 6050 4350 0 60 ~ 0 +DL1 +Text Label 6050 4250 0 60 ~ 0 +DR2 +Text Label 6050 4150 0 60 ~ 0 +DR1 +Text Label 6050 4050 0 60 ~ 0 +DL2 +Text Label 6050 2450 0 60 ~ 0 +R1 +Text Label 6050 2550 0 60 ~ 0 +R2 +Text Label 6050 2650 0 60 ~ 0 +R3 +Text Label 6050 2750 0 60 ~ 0 +R4 +Text Label 6050 2850 0 60 ~ 0 +R5 +Text Label 6050 2950 0 60 ~ 0 +R6 +Text Label 6050 3050 0 60 ~ 0 +R7 +Text Label 6050 3150 0 60 ~ 0 +R8 +Text Label 6050 5050 0 60 ~ 0 +A +Text Label 6050 5150 0 60 ~ 0 +B +Text Label 6050 5250 0 60 ~ 0 +C +Text Label 6050 5350 0 60 ~ 0 +G +Text Label 1300 3800 0 60 ~ 0 +D+ +Text Label 1300 4000 0 60 ~ 0 +D- +NoConn ~ 10750 2200 +NoConn ~ 10750 2300 +NoConn ~ 10750 2400 +Text Label 10350 4500 0 60 ~ 0 +GND +NoConn ~ 10750 4900 +NoConn ~ 10750 5100 +Text Label 6050 3450 0 60 ~ 0 +KP +Text Label 6050 3350 0 60 ~ 0 +PGM +$Comp +L ATMEGA32U4-A U1 +U 1 1 5462E0B1 +P 4900 4000 +F 0 "U1" H 3950 5700 40 0000 C CNN +F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN +F 2 "TQFP44" H 4900 4000 35 0000 C CIN +F 3 "" H 6000 5100 60 0000 C CNN + 1 4900 4000 + 1 0 0 -1 +$EndComp +Wire Wire Line + 3750 4850 3750 5600 +Wire Wire Line + 4450 2200 5150 2200 +Connection ~ 4700 2200 +Connection ~ 4800 2200 +Connection ~ 5050 2200 +Connection ~ 4800 2000 +Wire Wire Line + 6000 2450 6450 2450 +Wire Wire Line + 6000 2550 6450 2550 +Wire Wire Line + 6000 2650 6450 2650 +Wire Wire Line + 6000 2750 6450 2750 +Wire Wire Line + 6000 2850 6450 2850 +Wire Wire Line + 6000 2950 6450 2950 +Wire Wire Line + 6000 3050 6450 3050 +Wire Wire Line + 6000 3150 6450 3150 +Wire Wire Line + 6000 5050 6450 5050 +Wire Wire Line + 6000 5150 6450 5150 +Wire Wire Line + 6000 5250 6450 5250 +Wire Wire Line + 6000 4050 6450 4050 +Wire Wire Line + 6000 4150 6450 4150 +Wire Wire Line + 6000 4250 6450 4250 +Wire Wire Line + 6000 4350 6450 4350 +Wire Wire Line + 6000 4550 6450 4550 +Entry Wire Line + 6450 3350 6550 3450 +Entry Wire Line + 6450 3450 6550 3550 +Entry Wire Line + 6450 5050 6550 5150 +Entry Wire Line + 6450 5150 6550 5250 +Entry Wire Line + 6450 5250 6550 5350 +Entry Wire Line + 6450 5350 6550 5450 +Entry Wire Line + 6450 4650 6550 4750 +Wire Wire Line + 6000 3350 6450 3350 +Wire Wire Line + 6000 3450 6450 3450 +Wire Wire Line + 1200 5600 6450 5600 +Connection ~ 4950 5600 +Connection ~ 4850 5600 +Wire Wire Line + 4750 5600 4750 5700 +Connection ~ 4750 5600 +Connection ~ 4500 5600 +Text Label 6050 4550 0 60 ~ 0 +HWB +Wire Wire Line + 6000 5350 6450 5350 +Wire Wire Line + 6000 3650 6450 3650 +Wire Wire Line + 6000 3750 6450 3750 +Text Label 6050 3650 0 60 ~ 0 +SCL +Text Label 6050 3750 0 60 ~ 0 +SDA +Wire Wire Line + 6000 3850 6450 3850 +Wire Wire Line + 6000 3950 6450 3950 +Wire Wire Line + 6000 4650 6450 4650 +Text Label 6050 4650 0 60 ~ 0 +BUZZ +NoConn ~ 10750 4600 +NoConn ~ 10750 5000 +NoConn ~ 10750 5200 +Entry Wire Line + 10750 3400 10850 3500 +Entry Wire Line + 10750 3500 10850 3600 +Entry Wire Line + 10750 4500 10850 4600 +Wire Wire Line + 2850 4050 3750 4050 +Text Label 2950 4050 0 60 ~ 0 +UCAP +Wire Wire Line + 6000 4850 6450 4850 +Wire Wire Line + 6000 4950 6450 4950 +NoConn ~ 6450 4850 +NoConn ~ 6450 4950 +NoConn ~ 6450 4550 +$Comp +L USB-MINI-B CON1 +U 1 1 546431C1 +P 2100 5050 +F 0 "CON1" H 1850 5500 60 0000 C CNN +F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN +F 2 "" H 2100 5050 60 0000 C CNN +F 3 "" H 2100 5050 60 0000 C CNN + 1 2100 5050 + 0 1 1 0 +$EndComp +$Comp +L VCC #PWR03 +U 1 1 54643698 +P 2400 4400 +F 0 "#PWR03" H 2400 4500 30 0001 C CNN +F 1 "VCC" H 2400 4500 30 0000 C CNN +F 2 "" H 2400 4400 60 0000 C CNN +F 3 "" H 2400 4400 60 0000 C CNN + 1 2400 4400 + 1 0 0 -1 +$EndComp +Text Notes 2600 2750 0 60 ~ 0 +Teensy 2.0\n(not fully drawn) +$Comp +L CONN_7 B7K-PH-K-S1 +U 1 1 54643939 +P 1950 6900 +F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN +F 1 "CONN_7" V 2020 6900 60 0000 C CNN +F 2 "" H 1950 6900 60 0000 C CNN +F 3 "" H 1950 6900 60 0000 C CNN + 1 1950 6900 + 1 0 0 -1 +$EndComp +Connection ~ 3750 5600 +Connection ~ 2400 5600 +Connection ~ 2250 5600 +Connection ~ 1950 5600 +Wire Wire Line + 2400 4400 2400 4500 +Wire Wire Line + 2250 4000 2250 4500 +Wire Wire Line + 1200 3800 2250 3800 +Wire Wire Line + 2100 3800 2100 4500 +Wire Wire Line + 2850 4450 2850 5600 +Connection ~ 2850 5600 +Entry Wire Line + 1100 6800 1200 6900 +Entry Wire Line + 1100 6900 1200 7000 +Entry Wire Line + 1100 7000 1200 7100 +Entry Wire Line + 1100 6700 1200 6800 +Wire Wire Line + 1200 6600 1600 6600 +Wire Wire Line + 1200 6700 1600 6700 +Wire Wire Line + 1200 6800 1600 6800 +Wire Wire Line + 1200 6900 1600 6900 +Wire Wire Line + 1200 7000 1600 7000 +Wire Wire Line + 1200 7100 1600 7100 +Wire Wire Line + 1200 7200 1600 7200 +Text Label 1300 6600 0 60 ~ 0 +FS2 +Text Label 1300 6700 0 60 ~ 0 +FS1 +Text Label 1300 6800 0 60 ~ 0 +VCC +Text Label 1300 6900 0 60 ~ 0 +D- +Text Label 1300 7000 0 60 ~ 0 +D+ +Text Label 1300 7100 0 60 ~ 0 +GND +Text Label 1300 7200 0 60 ~ 0 +FS3 +NoConn ~ 3750 2450 +Wire Wire Line + 3600 2000 3600 3650 +Wire Wire Line + 3600 3650 3750 3650 +NoConn ~ 1950 4500 +Wire Bus Line + 1100 1900 1100 7100 +NoConn ~ 1200 6600 +NoConn ~ 1200 6700 +NoConn ~ 1200 7200 +Connection ~ 2100 3800 +Wire Wire Line + 1200 4000 2250 4000 +Entry Wire Line + 1100 3700 1200 3800 +Entry Wire Line + 1100 3900 1200 4000 +Text Label 10350 1500 0 60 ~ 0 +VCC +Entry Wire Line + 1100 1900 1200 2000 +Text Label 1250 2000 0 60 ~ 0 +VCC +Entry Wire Line + 1100 5500 1200 5600 +Connection ~ 1800 5600 +Text Label 1300 5600 0 60 ~ 0 +GND +Wire Wire Line + 9250 5500 10750 5500 +Entry Wire Line + 10750 5500 10850 5600 +Text Label 10350 5500 0 60 ~ 0 +GND +Wire Wire Line + 9250 1500 10750 1500 +Entry Wire Line + 10750 1500 10850 1600 +Connection ~ 3600 2000 +Wire Wire Line + 4800 2000 4800 2200 +Entry Wire Line + 6450 2000 6550 2100 +Text Label 6050 2000 0 60 ~ 0 +VCC +Connection ~ 5050 5600 +Entry Wire Line + 6450 5600 6550 5700 +Text Label 6050 5600 0 60 ~ 0 +GND +NoConn ~ 6450 3850 +NoConn ~ 6450 3950 +Wire Wire Line + 1800 4500 1500 4500 +Wire Wire Line + 1500 4500 1500 5600 +Connection ~ 1500 5600 +Entry Wire Line + 10750 2500 10850 2600 +Entry Wire Line + 10750 2100 10850 2200 +Text Notes 1000 5300 1 60 ~ 0 +Sacrificial USB cable from header to Teensy +Text Notes 7850 5950 0 60 ~ 0 +Ribbon cable between Teensy pins and socket +Wire Bus Line + 10850 6050 6550 6050 +$EndSCHEMATC diff --git a/keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg b/keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg new file mode 100644 index 000000000..027ab9efb Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg b/keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg new file mode 100644 index 000000000..d49c492b8 Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg b/keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg new file mode 100644 index 000000000..50cc9897c Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/readme.txt b/keyboards/kinesis/alvicstep/docs/readme.txt new file mode 100644 index 000000000..af33ac490 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/readme.txt @@ -0,0 +1,52 @@ +This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis +and is probably Copyright 2014 Warren Janssens +and probably released under GPL v2, which may be recovered at . + +Row configuration +PF0 A +PF1 B +PF2 C +PF3 G 0 = U4, 1 = U5 + +Column configuration + 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 + r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 +PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ +PB1 22 c2 f3 f5 f4 t r e w q TAB +PB2 23 c3 ESC f2 f1 g f d s a CL +PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} +PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ +PB5 26 c6 PB PGM KPD y u i o p \ +PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" +PB7 28 c8 RA PU PD n m ,< .> /? RS + */ + + +40 pin connector + + DL2 1 40 VCC + DR1 2 39 A + DR2 3 38 B + DL1 4 37 C + KPD 5 36 G + PGM 6 35 + SCL 7 34 + SDA 8 33 + RST 9 32 BUZZ + WP 10 31 EA + FS1 11 30 ALE + CLOCK 12 29 PSEN + DATA 13 28 r8 + 14 27 r7 + FS3 15 26 r6 + 16 25 r5 + FS2 17 24 r4 + XTAL1 18 23 r3 + XTAL2 19 22 r2 + GND 20 21 r1 + + +references: +https://github.com/chrisandreae/keyboard-firmware + + diff --git a/keyboards/kinesis/alvicstep/docs/schematic.png b/keyboards/kinesis/alvicstep/docs/schematic.png new file mode 100644 index 000000000..fa9405a1f Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/schematic.png differ diff --git a/keyboards/kinesis/alvicstep/matrix.c b/keyboards/kinesis/alvicstep/matrix.c new file mode 100644 index 000000000..cb0d5ad7d --- /dev/null +++ b/keyboards/kinesis/alvicstep/matrix.c @@ -0,0 +1,228 @@ +/* +Copyright 2014 Warren Janssens + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +/* + * scan matrix + */ +#include +#include +#include +#include +#include "action_layer.h" +#include "print.h" +#include "debug.h" +#include "util.h" +#include "matrix.h" +#include "led.h" +#include "config.h" + +#ifndef DEBOUNCE +# define DEBOUNCE 5 +#endif +static uint8_t debouncing = DEBOUNCE; + +/* matrix state(1:on, 0:off) */ +static uint8_t matrix[MATRIX_ROWS]; +static uint8_t matrix_debouncing[MATRIX_ROWS]; + +static matrix_row_t read_row(uint8_t row); +static void unselect_rows(void); +static void select_rows(uint8_t row); + +__attribute__ ((weak)) +void matrix_init_quantum(void) { + matrix_init_kb(); +} + +__attribute__ ((weak)) +void matrix_scan_quantum(void) { + matrix_scan_kb(); +} + +__attribute__ ((weak)) +void matrix_init_kb(void) { + matrix_init_user(); +} + +__attribute__ ((weak)) +void matrix_scan_kb(void) { + matrix_scan_user(); +} + +__attribute__ ((weak)) +void matrix_init_user(void) { +} + +__attribute__ ((weak)) +void matrix_scan_user(void) { +} + +inline +uint8_t matrix_rows(void) +{ + return MATRIX_ROWS; +} + + +inline +uint8_t matrix_cols(void) +{ + return MATRIX_COLS; +} + +void matrix_init(void) +{ + //debug_enable = true; + + //dprint("matrix_init"); dprintln(); + // output high (leds) + DDRD = 0xFF; + PORTD = 0xFF; + + // output low (multiplexers) + DDRF = 0xFF; + PORTF = 0x00; + + // input with pullup (matrix) + DDRB = 0x00; + PORTB = 0xFF; + + // input with pullup (program and keypad buttons) + DDRC = 0x00; + PORTC = 0xFF; + + // initialize row and col + unselect_rows(); + + // initialize matrix state: all keys off + for (uint8_t i=0; i < MATRIX_ROWS; i++) { + matrix[i] = 0; + matrix_debouncing[i] = 0; + } + +} + +uint8_t matrix_scan(void) +{ + + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + select_rows(i); + uint8_t row = read_row(i); + if (matrix_debouncing[i] != row) { + matrix_debouncing[i] = row; + if (debouncing) { + debug("bounce!: "); debug_hex(debouncing); debug("\n"); + } + debouncing = DEBOUNCE; + } + unselect_rows(); + } + + if (debouncing) { + if (--debouncing) { + _delay_ms(1); + } else { + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + matrix[i] = matrix_debouncing[i]; + } + } + } + matrix_scan_quantum(); + return 1; +} + +bool matrix_is_modified(void) +{ + if (debouncing) return false; + return true; +} + +inline +bool matrix_is_on(uint8_t row, uint8_t col) +{ + return (matrix[row] & ((matrix_row_t)1< /? RS + */ + + diff --git a/keyboards/kinesis/alvicstep/readme.md b/keyboards/kinesis/alvicstep/readme.md new file mode 100644 index 000000000..974e42e50 --- /dev/null +++ b/keyboards/kinesis/alvicstep/readme.md @@ -0,0 +1,46 @@ +kinesis-advantage keyboard firmware +====================== + +This directory is called alvicstep because https://github.com/alvicstep did the heavy work and took the photos in the doc directory. +alvicstep did NOT do anything related to the QMK implementation, so don't bug him/her. + +There are other ways of replacing the CPU in the kinesis, this one uses jumper wires from the Teensy to the original DIP socket + + +## Kinesis specific information +This is a port of https://github.com/alvicstep/tmk_keyboard, +which is a fork of https://github.com/wjanssens/tmk_keyboard, +which is based on work from https://github.com/chrisandreae/keyboard-firmware + +If you replace the kinesis CPU as described in the doc folder, then this code should allow you to use QMK. +I've tested with a Teensy 2++, remember to change the CPU if you use a 32u4 instead. + +Not yet implemented: +- Kinesis EEProm reading or writing +- Audio - this should be simple if we remove hardcoded pins from audio.h and switch to E7 + + + +## Quantum MK Firmware + +For the full Quantum feature list, see [the parent readme.md](/doc/readme.md). + +## Building + +Download or clone the whole firmware and navigate to the keyboards/kinesis-advantage folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. + +Depending on which keymap you would like to use, you will have to compile slightly differently. + +### Default + +To build with the default keymap, simply run `make`. + +### Other Keymaps + +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a folder with the name of your keymap in the keymaps folder, and see keymap documentation (you can find in top readme.md) and existant keymap files. + +To build the firmware binary hex file with a keymap just do `make` with `keymap` option like: + +$ make keymap=[default|jack|] + +Keymaps follow the format **__keymap.c__** and are stored in folders in the `keymaps` folder, eg `keymaps/my_keymap/` diff --git a/keyboards/kinesis/alvicstep/rules.mk b/keyboards/kinesis/alvicstep/rules.mk new file mode 100644 index 000000000..fb421a34f --- /dev/null +++ b/keyboards/kinesis/alvicstep/rules.mk @@ -0,0 +1,10 @@ +ifndef QUANTUM_DIR + include ../../../Makefile +endif + +# just silently stop, since we need to upload with teensy uploader +upload: build + + + + diff --git a/keyboards/kinesis/config.h b/keyboards/kinesis/config.h index 8f1fdbdb6..7cb0532c6 100644 --- a/keyboards/kinesis/config.h +++ b/keyboards/kinesis/config.h @@ -22,58 +22,22 @@ along with this program. If not, see . /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 #define MANUFACTURER You #define PRODUCT kinesis-advantage #define DESCRIPTION A custom keyboard // Mouse -#define MOUSEKEY_DELAY 20 +#define MOUSEKEY_DELAY 60 #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_MAX_SPEED 4 -#define MOUSEKEY_TIME_TO_MAX 20 +#define MOUSEKEY_TIME_TO_MAX 10 #define MOUSEKEY_WHEEL_MAX_SPEED 1 #define MOUSEKEY_WHEEL_DELTA 1 #define MOUSEKEY_WHEEL_TIME_TO_MAX 1 -/* key matrix size */ -#define MATRIX_ROWS 16 -#define MATRIX_COLS 8 - -/* - * Keyboard Matrix Assignments - * - * Change this to how you wired your keyboard - * COLS: AVR pins used for columns, left to right - * ROWS: AVR pins used for rows, top to bottom - * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) - * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) - * -*/ -//Passed through the port multipler, so 4 pins =16 -#define MATRIX_ROW_PINS { F0,F1, F2, F3 } - -// May be upside down. -#define MATRIX_COL_PINS { B0,B1, B2, B3, B4, B5, B6, B7 } -#define UNUSED_PINS - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW - -// #define BACKLIGHT_PIN B7 -// #define BACKLIGHT_BREATHING -// #define BACKLIGHT_LEVELS 3 - - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCING_DELAY 5 -/* define if matrix has ghost (lacks anti-ghosting diodes) */ -//#define MATRIX_HAS_GHOST - -/* number of backlight levels */ - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ @@ -171,4 +135,13 @@ along with this program. If not, see . //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION + + +#ifdef SUBPROJECT_alvicstep + #include "alvicstep/config.h" +#endif +#ifdef SUBPROJECT_stapelberg + #include "stapelberg/config.h" +#endif + #endif diff --git a/keyboards/kinesis/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/docs/kicad/kinesis-cache.lib deleted file mode 100644 index f798d39d6..000000000 --- a/keyboards/kinesis/docs/kicad/kinesis-cache.lib +++ /dev/null @@ -1,232 +0,0 @@ -EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm -#encoding utf-8 -# -# AT90S4414-P -# -DEF AT90S4414-P IC 0 40 Y Y 1 F N -F0 "IC" -850 1880 40 H V L BNN -F1 "AT90S4414-P" 450 -1950 40 H V L BNN -F2 "DIL40" 0 0 30 H V C CIN -F3 "~" 0 0 60 H V C CNN -ALIAS AT90S8515-P -$FPLIST - 40DIP-ELL600 - 40dip600 -$ENDFPLIST -DRAW -S -850 1850 850 -1850 0 1 10 f -X (T0)PB0 1 1000 700 150 L 40 40 1 1 B -X (T1)PB1 2 1000 600 150 L 40 40 1 1 B -X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B -X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B -X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B -X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B -X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B -X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B -X ~RESET 9 -1000 1700 150 R 40 40 1 1 I -X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B -X GND 20 0 -2000 150 U 40 40 1 1 W -X ALE 30 1000 850 150 L 40 40 1 1 O -X VCC 40 0 2000 150 D 40 40 1 1 W -X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B -X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B -X ICP 31 -1000 -1400 150 R 40 40 1 1 I -X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B -X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B -X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B -X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B -X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B -X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B -X PD4 14 1000 -1400 150 L 40 40 1 1 B -X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B -X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B -X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B -X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B -X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B -X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B -X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B -X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B -X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B -X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B -X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B -X XTAL2 18 -1000 1200 150 R 40 40 1 1 B -X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B -X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B -X XTAL1 19 -1000 800 150 R 40 40 1 1 B -X OC1B 29 -1000 -1500 150 R 40 40 1 1 W -X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# ATMEGA16U4-A -# -DEF ATMEGA16U4-A U 0 40 Y Y 1 F N -F0 "U" -950 1700 40 H V C CNN -F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN -F2 "TQFP44" 0 0 35 H V C CIN -F3 "~" 1100 1100 60 H V C CNN -ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A -$FPLIST - TQFP44 -$ENDFPLIST -DRAW -S -1000 1650 950 -1450 0 1 10 f -X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B -X UVCC 2 -450 1800 150 D 40 40 1 1 W -X D- 3 -1150 100 150 R 40 40 1 1 B -X D+ 4 -1150 200 150 R 40 40 1 1 B -X UGND 5 -400 -1600 150 U 40 40 1 1 P -X UCAP 6 -1150 -50 150 R 40 40 1 1 P -X VBUS 7 -1150 350 150 R 40 40 1 1 P -X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B -X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B -X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B -X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B -X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B -X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B -X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B -X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B -X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B -X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B -X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B -X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B -X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B -X AREF 42 -1150 -850 150 R 40 40 1 1 P -X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I -X GND 23 -50 -1600 150 U 40 40 1 1 W -X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B -X GND 43 150 -1600 150 U 40 40 1 1 W -X VCC 14 -200 1800 150 D 40 40 1 1 W -X AVCC 24 150 1800 150 D 40 40 1 1 W -X VCC 34 -100 1800 150 D 40 40 1 1 W -X AVCC 44 250 1800 150 D 40 40 1 1 W -X GND 15 -150 -1600 150 U 40 40 1 1 W -X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B -X GND 35 50 -1600 150 U 40 40 1 1 W -X XTAL2 16 -1150 950 150 R 40 40 1 1 O -X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B -X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B -X XTAL1 17 -1150 1150 150 R 40 40 1 1 I -X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B -X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B -X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B -X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B -X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B -X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B -X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B -X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# C -# -DEF C C 0 10 N Y 1 F N -F0 "C" 0 100 40 H V L CNN -F1 "C" 6 -85 40 H V L CNN -F2 "~" 38 -150 30 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - SM* - C? - C1-1 -$ENDFPLIST -DRAW -P 2 0 1 20 -80 -30 80 -30 N -P 2 0 1 20 -80 30 80 30 N -X ~ 1 0 200 170 D 40 40 1 1 P -X ~ 2 0 -200 170 U 40 40 1 1 P -ENDDRAW -ENDDEF -# -# CONN_7 -# -DEF CONN_7 P 0 40 Y N 1 F N -F0 "P" -30 0 60 V V C CNN -F1 "CONN_7" 70 0 60 V V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -S -100 350 150 -350 0 1 0 N -X P1 1 -350 300 250 R 50 50 1 1 P I -X P2 2 -350 200 250 R 50 50 1 1 P I -X P3 3 -350 100 250 R 50 50 1 1 P I -X P4 4 -350 0 250 R 50 50 1 1 P I -X P5 5 -350 -100 250 R 50 50 1 1 P I -X P6 6 -350 -200 250 R 50 50 1 1 P I -X P7 7 -350 -300 250 R 50 50 1 1 P I -ENDDRAW -ENDDEF -# -# GND -# -DEF ~GND #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 0 30 H I C CNN -F1 "GND" 0 -70 30 H I C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N -X GND 1 0 0 0 U 30 30 1 1 W N -ENDDRAW -ENDDEF -# -# R -# -DEF R R 0 0 N Y 1 F N -F0 "R" 80 0 40 V V C CNN -F1 "R" 7 1 40 V V C CNN -F2 "~" -70 0 30 V V C CNN -F3 "~" 0 0 30 H V C CNN -$FPLIST - R? - SM0603 - SM0805 - R?-* - SM1206 -$ENDFPLIST -DRAW -S -40 150 40 -150 0 1 12 N -X ~ 1 0 250 100 D 60 60 1 1 P -X ~ 2 0 -250 100 U 60 60 1 1 P -ENDDRAW -ENDDEF -# -# USB-MINI-B -# -DEF USB-MINI-B CON 0 40 Y Y 1 F N -F0 "CON" -250 450 60 H V C CNN -F1 "USB-MINI-B" -50 -500 60 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - USB-Mini-B-Jack -$ENDFPLIST -DRAW -S -350 400 350 -400 0 1 0 N -X VBUS 1 -550 300 200 R 50 50 1 1 W -X D- 2 -550 150 200 R 50 50 1 1 B -X D+ 3 -550 0 200 R 50 50 1 1 B -X ID 4 -550 -150 200 R 50 50 1 1 B -X GND 5 -550 -300 200 R 50 50 1 1 W -X SHELL1 6 550 300 200 L 50 50 1 1 B -X SHELL2 7 550 150 200 L 50 50 1 1 B -X SHELL3 8 550 -150 200 L 50 50 1 1 B -X SHELL4 9 550 -300 200 L 50 50 1 1 B -ENDDRAW -ENDDEF -# -# VCC -# -DEF VCC #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 100 30 H I C CNN -F1 "VCC" 0 100 30 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -X VCC 1 0 0 0 U 20 20 0 0 W N -C 0 50 20 0 1 0 N -P 3 0 1 0 0 0 0 30 0 30 N -ENDDRAW -ENDDEF -# -#End Library diff --git a/keyboards/kinesis/docs/kicad/kinesis.pro b/keyboards/kinesis/docs/kicad/kinesis.pro deleted file mode 100644 index 9f130b509..000000000 --- a/keyboards/kinesis/docs/kicad/kinesis.pro +++ /dev/null @@ -1,83 +0,0 @@ -update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm -version=1 -last_client=pcbnew -[cvpcb] -version=1 -NetIExt=net -[cvpcb/libraries] -EquName1=devcms -[general] -version=1 -[eeschema] -version=1 -PageLayoutDescrFile= -SubpartIdSeparator=0 -SubpartFirstId=65 -LibDir=../../../lib/kicad/library -NetFmtName= -RptD_X=0 -RptD_Y=100 -RptLab=1 -LabSize=60 -[eeschema/libraries] -LibName1=power -LibName2=device -LibName3=transistors -LibName4=conn -LibName5=linear -LibName6=regul -LibName7=74xx -LibName8=cmos4000 -LibName9=adc-dac -LibName10=memory -LibName11=xilinx -LibName12=special -LibName13=microcontrollers -LibName14=dsp -LibName15=microchip -LibName16=analog_switches -LibName17=motorola -LibName18=texas -LibName19=intel -LibName20=audio -LibName21=interface -LibName22=digital-audio -LibName23=philips -LibName24=display -LibName25=cypress -LibName26=siliconi -LibName27=opto -LibName28=atmel -LibName29=contrib -LibName30=valves -LibName31=custom -[pcbnew] -version=1 -LastNetListRead= -UseCmpFile=1 -PadDrill=1.016000000000 -PadDrillOvalY=1.016000000000 -PadSizeH=1.524000000000 -PadSizeV=1.524000000000 -PcbTextSizeV=1.500000000000 -PcbTextSizeH=1.500000000000 -PcbTextThickness=0.300000000000 -ModuleTextSizeV=1.000000000000 -ModuleTextSizeH=1.000000000000 -ModuleTextSizeThickness=0.150000000000 -SolderMaskClearance=0.000000000000 -SolderMaskMinWidth=0.000000000000 -DrawSegmentWidth=0.200000000000 -BoardOutlineThickness=0.100000000000 -ModuleOutlineThickness=0.150000000000 -[pcbnew/libraries] -LibDir=../../../lib/kicad/modules -LibName1=custom -LibName2=Sockets -LibName3=Connect -LibName4=Discret -LibName5=Divers -LibName6=Display -LibName7=LEDs -LibName8=SMD_Packages -LibName9=Sockets_DIP diff --git a/keyboards/kinesis/docs/kicad/kinesis.sch b/keyboards/kinesis/docs/kicad/kinesis.sch deleted file mode 100644 index f75335aa0..000000000 --- a/keyboards/kinesis/docs/kicad/kinesis.sch +++ /dev/null @@ -1,634 +0,0 @@ -EESchema Schematic File Version 2 -LIBS:power -LIBS:device -LIBS:transistors -LIBS:conn -LIBS:linear -LIBS:regul -LIBS:74xx -LIBS:cmos4000 -LIBS:adc-dac -LIBS:memory -LIBS:xilinx -LIBS:special -LIBS:microcontrollers -LIBS:dsp -LIBS:microchip -LIBS:analog_switches -LIBS:motorola -LIBS:texas -LIBS:intel -LIBS:audio -LIBS:interface -LIBS:digital-audio -LIBS:philips -LIBS:display -LIBS:cypress -LIBS:siliconi -LIBS:opto -LIBS:atmel -LIBS:contrib -LIBS:valves -LIBS:custom -LIBS:kinesis-cache -EELAYER 27 0 -EELAYER END -$Descr A4 11693 8268 -encoding utf-8 -Sheet 1 1 -Title "" -Date "13 nov 2014" -Rev "" -Comp "" -Comment1 "" -Comment2 "" -Comment3 "" -Comment4 "" -$EndDescr -$Comp -L C C4 -U 1 1 545804FB -P 2850 4250 -F 0 "C4" H 2850 4350 40 0000 L CNN -F 1 "1uF" H 2856 4165 40 0000 L CNN -F 2 "~" H 2888 4100 30 0000 C CNN -F 3 "~" H 2850 4250 60 0000 C CNN - 1 2850 4250 - -1 0 0 1 -$EndComp -$Comp -L R R3 -U 1 1 545805E8 -P 2500 4000 -F 0 "R3" V 2580 4000 40 0000 C CNN -F 1 "22" V 2507 4001 40 0000 C CNN -F 2 "~" V 2430 4000 30 0000 C CNN -F 3 "~" H 2500 4000 30 0000 C CNN - 1 2500 4000 - 0 -1 -1 0 -$EndComp -$Comp -L R R2 -U 1 1 545805FA -P 2500 3800 -F 0 "R2" V 2580 3800 40 0000 C CNN -F 1 "22" V 2507 3801 40 0000 C CNN -F 2 "~" V 2430 3800 30 0000 C CNN -F 3 "~" H 2500 3800 30 0000 C CNN - 1 2500 3800 - 0 -1 -1 0 -$EndComp -Entry Wire Line - 6450 2450 6550 2550 -Entry Wire Line - 6450 2550 6550 2650 -Entry Wire Line - 6450 2650 6550 2750 -Entry Wire Line - 6450 2750 6550 2850 -Entry Wire Line - 6450 2950 6550 3050 -Entry Wire Line - 6450 3050 6550 3150 -Entry Wire Line - 6450 2850 6550 2950 -Entry Wire Line - 6450 3150 6550 3250 -Wire Wire Line - 10250 1800 10750 1800 -Entry Wire Line - 10750 1800 10850 1900 -Entry Wire Line - 10750 1900 10850 2000 -Entry Wire Line - 10750 2000 10850 2100 -Entry Wire Line - 10750 2800 10850 2900 -Entry Wire Line - 10750 2900 10850 3000 -Entry Wire Line - 10750 3000 10850 3100 -Entry Wire Line - 10750 3100 10850 3200 -Entry Wire Line - 10750 3200 10850 3300 -Entry Wire Line - 10750 3300 10850 3400 -$Comp -L AT90S8515-P IC2 -U 1 1 545A62EA -P 9250 3500 -F 0 "IC2" H 8400 5380 40 0000 L BNN -F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN -F 2 "DIL40" H 9250 3500 30 0000 C CIN -F 3 "" H 9250 3500 60 0000 C CNN - 1 9250 3500 - 1 0 0 -1 -$EndComp -NoConn ~ 10250 2650 -Entry Wire Line - 10750 3650 10850 3750 -Entry Wire Line - 10750 3750 10850 3850 -Entry Wire Line - 10750 3850 10850 3950 -Entry Wire Line - 10750 3950 10850 4050 -Entry Wire Line - 10750 4050 10850 4150 -Entry Wire Line - 10750 4150 10850 4250 -Entry Wire Line - 10750 4350 10850 4450 -Entry Wire Line - 10750 4250 10850 4350 -NoConn ~ 8250 4900 -NoConn ~ 8250 5000 -NoConn ~ 8250 1800 -Wire Wire Line - 10250 1900 10750 1900 -Wire Wire Line - 10250 2000 10750 2000 -Wire Wire Line - 10250 2100 10750 2100 -Wire Wire Line - 10250 2200 10750 2200 -Wire Wire Line - 10250 2300 10750 2300 -Wire Wire Line - 10250 2400 10750 2400 -Wire Wire Line - 10250 2500 10750 2500 -Text Label 10350 1800 0 60 ~ 0 -A -Text Label 10350 1900 0 60 ~ 0 -B -Text Label 10350 2000 0 60 ~ 0 -C -Text Label 10350 2100 0 60 ~ 0 -G -Wire Wire Line - 10250 2800 10750 2800 -Wire Wire Line - 10250 2900 10750 2900 -Wire Wire Line - 10250 3000 10750 3000 -Wire Wire Line - 10250 3100 10750 3100 -Wire Wire Line - 10250 3200 10750 3200 -Wire Wire Line - 10250 3300 10750 3300 -Wire Wire Line - 10250 3400 10750 3400 -Wire Wire Line - 10250 3500 10750 3500 -Text Label 10350 2800 0 60 ~ 0 -DL2 -Text Label 10350 2900 0 60 ~ 0 -DR1 -Text Label 10350 3000 0 60 ~ 0 -DR2 -Text Label 10350 3100 0 60 ~ 0 -DL1 -Text Label 10350 3400 0 60 ~ 0 -SCL -Text Label 10350 3500 0 60 ~ 0 -SDA -Wire Wire Line - 10250 3650 10750 3650 -Wire Wire Line - 10250 3750 10750 3750 -Wire Wire Line - 10250 3850 10750 3850 -Wire Wire Line - 10250 3950 10750 3950 -Wire Wire Line - 10250 4050 10750 4050 -Wire Wire Line - 10250 4150 10750 4150 -Wire Wire Line - 10250 4250 10750 4250 -Wire Wire Line - 10250 4350 10750 4350 -Text Label 10350 3650 0 60 ~ 0 -R1 -Text Label 10350 3750 0 60 ~ 0 -R2 -Text Label 10350 3850 0 60 ~ 0 -R3 -Text Label 10350 3950 0 60 ~ 0 -R4 -Text Label 10350 4050 0 60 ~ 0 -R5 -Text Label 10350 4150 0 60 ~ 0 -R6 -Text Label 10350 4250 0 60 ~ 0 -R7 -Text Label 10350 4350 0 60 ~ 0 -R8 -Wire Wire Line - 10250 4500 10750 4500 -Wire Wire Line - 10250 4600 10750 4600 -Wire Wire Line - 10250 4700 10750 4700 -Wire Wire Line - 10250 4800 10750 4800 -Wire Wire Line - 10250 4900 10750 4900 -Wire Wire Line - 10250 5000 10750 5000 -Wire Wire Line - 10250 5100 10750 5100 -Wire Wire Line - 10250 5200 10750 5200 -Text Label 10350 4600 0 60 ~ 0 -FS1 -Text Label 10350 5000 0 60 ~ 0 -FS3 -Text Label 10350 5200 0 60 ~ 0 -FS2 -$Comp -L GND #PWR01 -U 1 1 545A7377 -P 9250 5600 -F 0 "#PWR01" H 9250 5600 30 0001 C CNN -F 1 "GND" H 9250 5530 30 0001 C CNN -F 2 "" H 9250 5600 60 0000 C CNN -F 3 "" H 9250 5600 60 0000 C CNN - 1 9250 5600 - 1 0 0 -1 -$EndComp -Wire Wire Line - 9250 5500 9250 5600 -Text Label 10350 4700 0 60 ~ 0 -CLOCK -Text Label 10350 4800 0 60 ~ 0 -DATA -NoConn ~ 10750 4700 -NoConn ~ 10750 4800 -Text Label 10350 3200 0 60 ~ 0 -KP -Text Label 10350 3300 0 60 ~ 0 -PGM -Text Label 10350 2500 0 60 ~ 0 -BUZZ -NoConn ~ 8250 2300 -NoConn ~ 8250 2700 -$Comp -L GND #PWR02 -U 1 1 545A7565 -P 4750 5700 -F 0 "#PWR02" H 4750 5700 30 0001 C CNN -F 1 "GND" H 4750 5630 30 0001 C CNN -F 2 "" H 4750 5700 60 0000 C CNN -F 3 "" H 4750 5700 60 0000 C CNN - 1 4750 5700 - 1 0 0 -1 -$EndComp -Entry Wire Line - 6450 3650 6550 3750 -Entry Wire Line - 6450 3750 6550 3850 -Entry Wire Line - 6450 4150 6550 4250 -Entry Wire Line - 6450 4250 6550 4350 -Entry Wire Line - 6450 4050 6550 4150 -Entry Wire Line - 6450 4350 6550 4450 -NoConn ~ 3750 2850 -Wire Wire Line - 1200 2000 6450 2000 -NoConn ~ 3750 3050 -Wire Wire Line - 2750 3800 3750 3800 -Wire Wire Line - 2750 3900 3750 3900 -Wire Wire Line - 2750 3900 2750 4000 -Wire Bus Line - 6550 2100 6550 6050 -Wire Bus Line - 10850 1600 10850 6050 -Text Label 6050 4350 0 60 ~ 0 -DL1 -Text Label 6050 4250 0 60 ~ 0 -DR2 -Text Label 6050 4150 0 60 ~ 0 -DR1 -Text Label 6050 4050 0 60 ~ 0 -DL2 -Text Label 6050 2450 0 60 ~ 0 -R1 -Text Label 6050 2550 0 60 ~ 0 -R2 -Text Label 6050 2650 0 60 ~ 0 -R3 -Text Label 6050 2750 0 60 ~ 0 -R4 -Text Label 6050 2850 0 60 ~ 0 -R5 -Text Label 6050 2950 0 60 ~ 0 -R6 -Text Label 6050 3050 0 60 ~ 0 -R7 -Text Label 6050 3150 0 60 ~ 0 -R8 -Text Label 6050 5050 0 60 ~ 0 -A -Text Label 6050 5150 0 60 ~ 0 -B -Text Label 6050 5250 0 60 ~ 0 -C -Text Label 6050 5350 0 60 ~ 0 -G -Text Label 1300 3800 0 60 ~ 0 -D+ -Text Label 1300 4000 0 60 ~ 0 -D- -NoConn ~ 10750 2200 -NoConn ~ 10750 2300 -NoConn ~ 10750 2400 -Text Label 10350 4500 0 60 ~ 0 -GND -NoConn ~ 10750 4900 -NoConn ~ 10750 5100 -Text Label 6050 3450 0 60 ~ 0 -KP -Text Label 6050 3350 0 60 ~ 0 -PGM -$Comp -L ATMEGA32U4-A U1 -U 1 1 5462E0B1 -P 4900 4000 -F 0 "U1" H 3950 5700 40 0000 C CNN -F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN -F 2 "TQFP44" H 4900 4000 35 0000 C CIN -F 3 "" H 6000 5100 60 0000 C CNN - 1 4900 4000 - 1 0 0 -1 -$EndComp -Wire Wire Line - 3750 4850 3750 5600 -Wire Wire Line - 4450 2200 5150 2200 -Connection ~ 4700 2200 -Connection ~ 4800 2200 -Connection ~ 5050 2200 -Connection ~ 4800 2000 -Wire Wire Line - 6000 2450 6450 2450 -Wire Wire Line - 6000 2550 6450 2550 -Wire Wire Line - 6000 2650 6450 2650 -Wire Wire Line - 6000 2750 6450 2750 -Wire Wire Line - 6000 2850 6450 2850 -Wire Wire Line - 6000 2950 6450 2950 -Wire Wire Line - 6000 3050 6450 3050 -Wire Wire Line - 6000 3150 6450 3150 -Wire Wire Line - 6000 5050 6450 5050 -Wire Wire Line - 6000 5150 6450 5150 -Wire Wire Line - 6000 5250 6450 5250 -Wire Wire Line - 6000 4050 6450 4050 -Wire Wire Line - 6000 4150 6450 4150 -Wire Wire Line - 6000 4250 6450 4250 -Wire Wire Line - 6000 4350 6450 4350 -Wire Wire Line - 6000 4550 6450 4550 -Entry Wire Line - 6450 3350 6550 3450 -Entry Wire Line - 6450 3450 6550 3550 -Entry Wire Line - 6450 5050 6550 5150 -Entry Wire Line - 6450 5150 6550 5250 -Entry Wire Line - 6450 5250 6550 5350 -Entry Wire Line - 6450 5350 6550 5450 -Entry Wire Line - 6450 4650 6550 4750 -Wire Wire Line - 6000 3350 6450 3350 -Wire Wire Line - 6000 3450 6450 3450 -Wire Wire Line - 1200 5600 6450 5600 -Connection ~ 4950 5600 -Connection ~ 4850 5600 -Wire Wire Line - 4750 5600 4750 5700 -Connection ~ 4750 5600 -Connection ~ 4500 5600 -Text Label 6050 4550 0 60 ~ 0 -HWB -Wire Wire Line - 6000 5350 6450 5350 -Wire Wire Line - 6000 3650 6450 3650 -Wire Wire Line - 6000 3750 6450 3750 -Text Label 6050 3650 0 60 ~ 0 -SCL -Text Label 6050 3750 0 60 ~ 0 -SDA -Wire Wire Line - 6000 3850 6450 3850 -Wire Wire Line - 6000 3950 6450 3950 -Wire Wire Line - 6000 4650 6450 4650 -Text Label 6050 4650 0 60 ~ 0 -BUZZ -NoConn ~ 10750 4600 -NoConn ~ 10750 5000 -NoConn ~ 10750 5200 -Entry Wire Line - 10750 3400 10850 3500 -Entry Wire Line - 10750 3500 10850 3600 -Entry Wire Line - 10750 4500 10850 4600 -Wire Wire Line - 2850 4050 3750 4050 -Text Label 2950 4050 0 60 ~ 0 -UCAP -Wire Wire Line - 6000 4850 6450 4850 -Wire Wire Line - 6000 4950 6450 4950 -NoConn ~ 6450 4850 -NoConn ~ 6450 4950 -NoConn ~ 6450 4550 -$Comp -L USB-MINI-B CON1 -U 1 1 546431C1 -P 2100 5050 -F 0 "CON1" H 1850 5500 60 0000 C CNN -F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN -F 2 "" H 2100 5050 60 0000 C CNN -F 3 "" H 2100 5050 60 0000 C CNN - 1 2100 5050 - 0 1 1 0 -$EndComp -$Comp -L VCC #PWR03 -U 1 1 54643698 -P 2400 4400 -F 0 "#PWR03" H 2400 4500 30 0001 C CNN -F 1 "VCC" H 2400 4500 30 0000 C CNN -F 2 "" H 2400 4400 60 0000 C CNN -F 3 "" H 2400 4400 60 0000 C CNN - 1 2400 4400 - 1 0 0 -1 -$EndComp -Text Notes 2600 2750 0 60 ~ 0 -Teensy 2.0\n(not fully drawn) -$Comp -L CONN_7 B7K-PH-K-S1 -U 1 1 54643939 -P 1950 6900 -F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN -F 1 "CONN_7" V 2020 6900 60 0000 C CNN -F 2 "" H 1950 6900 60 0000 C CNN -F 3 "" H 1950 6900 60 0000 C CNN - 1 1950 6900 - 1 0 0 -1 -$EndComp -Connection ~ 3750 5600 -Connection ~ 2400 5600 -Connection ~ 2250 5600 -Connection ~ 1950 5600 -Wire Wire Line - 2400 4400 2400 4500 -Wire Wire Line - 2250 4000 2250 4500 -Wire Wire Line - 1200 3800 2250 3800 -Wire Wire Line - 2100 3800 2100 4500 -Wire Wire Line - 2850 4450 2850 5600 -Connection ~ 2850 5600 -Entry Wire Line - 1100 6800 1200 6900 -Entry Wire Line - 1100 6900 1200 7000 -Entry Wire Line - 1100 7000 1200 7100 -Entry Wire Line - 1100 6700 1200 6800 -Wire Wire Line - 1200 6600 1600 6600 -Wire Wire Line - 1200 6700 1600 6700 -Wire Wire Line - 1200 6800 1600 6800 -Wire Wire Line - 1200 6900 1600 6900 -Wire Wire Line - 1200 7000 1600 7000 -Wire Wire Line - 1200 7100 1600 7100 -Wire Wire Line - 1200 7200 1600 7200 -Text Label 1300 6600 0 60 ~ 0 -FS2 -Text Label 1300 6700 0 60 ~ 0 -FS1 -Text Label 1300 6800 0 60 ~ 0 -VCC -Text Label 1300 6900 0 60 ~ 0 -D- -Text Label 1300 7000 0 60 ~ 0 -D+ -Text Label 1300 7100 0 60 ~ 0 -GND -Text Label 1300 7200 0 60 ~ 0 -FS3 -NoConn ~ 3750 2450 -Wire Wire Line - 3600 2000 3600 3650 -Wire Wire Line - 3600 3650 3750 3650 -NoConn ~ 1950 4500 -Wire Bus Line - 1100 1900 1100 7100 -NoConn ~ 1200 6600 -NoConn ~ 1200 6700 -NoConn ~ 1200 7200 -Connection ~ 2100 3800 -Wire Wire Line - 1200 4000 2250 4000 -Entry Wire Line - 1100 3700 1200 3800 -Entry Wire Line - 1100 3900 1200 4000 -Text Label 10350 1500 0 60 ~ 0 -VCC -Entry Wire Line - 1100 1900 1200 2000 -Text Label 1250 2000 0 60 ~ 0 -VCC -Entry Wire Line - 1100 5500 1200 5600 -Connection ~ 1800 5600 -Text Label 1300 5600 0 60 ~ 0 -GND -Wire Wire Line - 9250 5500 10750 5500 -Entry Wire Line - 10750 5500 10850 5600 -Text Label 10350 5500 0 60 ~ 0 -GND -Wire Wire Line - 9250 1500 10750 1500 -Entry Wire Line - 10750 1500 10850 1600 -Connection ~ 3600 2000 -Wire Wire Line - 4800 2000 4800 2200 -Entry Wire Line - 6450 2000 6550 2100 -Text Label 6050 2000 0 60 ~ 0 -VCC -Connection ~ 5050 5600 -Entry Wire Line - 6450 5600 6550 5700 -Text Label 6050 5600 0 60 ~ 0 -GND -NoConn ~ 6450 3850 -NoConn ~ 6450 3950 -Wire Wire Line - 1800 4500 1500 4500 -Wire Wire Line - 1500 4500 1500 5600 -Connection ~ 1500 5600 -Entry Wire Line - 10750 2500 10850 2600 -Entry Wire Line - 10750 2100 10850 2200 -Text Notes 1000 5300 1 60 ~ 0 -Sacrificial USB cable from header to Teensy -Text Notes 7850 5950 0 60 ~ 0 -Ribbon cable between Teensy pins and socket -Wire Bus Line - 10850 6050 6550 6050 -$EndSCHEMATC diff --git a/keyboards/kinesis/docs/photos/P1050573.jpg b/keyboards/kinesis/docs/photos/P1050573.jpg deleted file mode 100644 index 027ab9efb..000000000 Binary files a/keyboards/kinesis/docs/photos/P1050573.jpg and /dev/null differ diff --git a/keyboards/kinesis/docs/photos/P1050574.jpg b/keyboards/kinesis/docs/photos/P1050574.jpg deleted file mode 100644 index d49c492b8..000000000 Binary files a/keyboards/kinesis/docs/photos/P1050574.jpg and /dev/null differ diff --git a/keyboards/kinesis/docs/photos/P1050575.jpg b/keyboards/kinesis/docs/photos/P1050575.jpg deleted file mode 100644 index 50cc9897c..000000000 Binary files a/keyboards/kinesis/docs/photos/P1050575.jpg and /dev/null differ diff --git a/keyboards/kinesis/docs/readme.txt b/keyboards/kinesis/docs/readme.txt deleted file mode 100644 index af33ac490..000000000 --- a/keyboards/kinesis/docs/readme.txt +++ /dev/null @@ -1,52 +0,0 @@ -This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis -and is probably Copyright 2014 Warren Janssens -and probably released under GPL v2, which may be recovered at . - -Row configuration -PF0 A -PF1 B -PF2 C -PF3 G 0 = U4, 1 = U5 - -Column configuration - 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 - r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 -PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ -PB1 22 c2 f3 f5 f4 t r e w q TAB -PB2 23 c3 ESC f2 f1 g f d s a CL -PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} -PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ -PB5 26 c6 PB PGM KPD y u i o p \ -PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" -PB7 28 c8 RA PU PD n m ,< .> /? RS - */ - - -40 pin connector - - DL2 1 40 VCC - DR1 2 39 A - DR2 3 38 B - DL1 4 37 C - KPD 5 36 G - PGM 6 35 - SCL 7 34 - SDA 8 33 - RST 9 32 BUZZ - WP 10 31 EA - FS1 11 30 ALE - CLOCK 12 29 PSEN - DATA 13 28 r8 - 14 27 r7 - FS3 15 26 r6 - 16 25 r5 - FS2 17 24 r4 - XTAL1 18 23 r3 - XTAL2 19 22 r2 - GND 20 21 r1 - - -references: -https://github.com/chrisandreae/keyboard-firmware - - diff --git a/keyboards/kinesis/docs/schematic.png b/keyboards/kinesis/docs/schematic.png deleted file mode 100644 index fa9405a1f..000000000 Binary files a/keyboards/kinesis/docs/schematic.png and /dev/null differ diff --git a/keyboards/kinesis/keymaps/default/keymap.c b/keyboards/kinesis/keymaps/default/keymap.c index 3bf80699c..01a66b5e5 100644 --- a/keyboards/kinesis/keymaps/default/keymap.c +++ b/keyboards/kinesis/keymaps/default/keymap.c @@ -1,10 +1,6 @@ #include "kinesis.h" -#include "action_layer.h" -#define QWERTY 0 // Base qerty -#define SYMB 1// Symbol layer - -// An almost entirely blank keymap. Test layers with the upper right hand key - 1 in normal mode, reset in layer 2. +#define QWERTY 0 // Base qwerty /**************************************************************************************************** @@ -33,7 +29,6 @@ * `--------------------' `--------------------' */ - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [QWERTY] = KEYMAP( KC_ESC, KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8, @@ -45,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL,KC_LALT, KC_HOME, KC_BSPC,KC_DEL ,KC_END , - KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK ,KC_PAUS, KC_FN0, KC_1, + KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK ,KC_PAUS, KC_FN0, KC_1, KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, @@ -54,32 +49,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_RGUI,KC_RCTL, KC_PGUP, KC_PGDN,KC_ENTER ,KC_SPC - ), -[SYMB] = KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0, RESET, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS ) }; -const uint16_t PROGMEM fn_actions[] = { - [0] = ACTION_LAYER_TAP_TOGGLE(SYMB) , // FN1 - Momentary Layer 1 (Symbols) +const uint16_t PROGMEM fn_actions[] = { }; diff --git a/keyboards/kinesis/keymaps/dvorak/Makefile b/keyboards/kinesis/keymaps/dvorak/Makefile new file mode 100644 index 000000000..9d3df5964 --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak/Makefile @@ -0,0 +1,21 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/kinesis/keymaps/dvorak/config.h b/keyboards/kinesis/keymaps/dvorak/config.h new file mode 100644 index 000000000..8893d122e --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif diff --git a/keyboards/kinesis/keymaps/dvorak/keymap.c b/keyboards/kinesis/keymaps/dvorak/keymap.c new file mode 100644 index 000000000..9008bc808 --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak/keymap.c @@ -0,0 +1,93 @@ +#include "kinesis.h" + +#define _DVORAK 0 // Base Dvorak layer +#define _MEDIA 1 // Media layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_DVORAK] = KEYMAP( + // left hand + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, + KC_BSPC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, + KC_ESC, KC_LBRC, KC_DOWN, KC_UP, + // left thumb + KC_LGUI, KC_LCTL, + KC_LALT, + KC_BSPC, KC_DEL, TG(_MEDIA), + // right hand + KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, KC_FN0, KC_1, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_LEFT, KC_RIGHT, KC_RBRC, KC_BSLS, + // right thumb + KC_RCTL, KC_RGUI, + KC_RALT, + TG(_MEDIA), KC_ENT, KC_SPC + ), + +[_MEDIA] = KEYMAP( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_BTN4, KC_BTN3, KC_BTN2, KC_BTN1, KC_NO, + KC_NO, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, + KC_NO, KC_NO, KC_MS_D, KC_MS_U, + // left thumb + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_TRNS, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_POWER, + KC_NO, KC_VOLU, KC_MS_U, KC_VOLD, KC_NO, KC_NO, + KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_NO, + KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_NO, + KC_MS_L, KC_MS_R, KC_NO, KC_NO, + // right thumb + KC_NO, KC_NO, + KC_NO, + KC_TRNS, KC_ENT, KC_NO +) +}; + + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + + +void matrix_init_user(void) { + +} + +void matrix_scan_user(void) { + +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + +} diff --git a/keyboards/kinesis/keymaps/milestogo/Makefile b/keyboards/kinesis/keymaps/milestogo/Makefile new file mode 100644 index 000000000..9d3df5964 --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/Makefile @@ -0,0 +1,21 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/kinesis/keymaps/milestogo/config.h b/keyboards/kinesis/keymaps/milestogo/config.h new file mode 100644 index 000000000..8893d122e --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif diff --git a/keyboards/kinesis/keymaps/milestogo/keymap.c b/keyboards/kinesis/keymaps/milestogo/keymap.c new file mode 100644 index 000000000..c2635eefe --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/keymap.c @@ -0,0 +1,331 @@ +#include "kinesis.h" +#include "action_layer.h" +#include "mousekey.h" + +#define _QWERTY 0 // Base qerty +#define _SYMB 1// Symbol layer +#define _MOUSE 2// +#define _TRANS 3// + + + +/* Macros */ +enum { + NONE = 0, + // Diagonal mouse movement + A_MUL, + A_MUR, + A_MDL, + A_MDR, +}; + + +// Why so many gui keys, why not just map all the OS X stuff to buttons? Good question. +/**************************************************************************************************** +* +* Keymap: Default Layer in Qwerty +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* |MouseFN0| A | S | D | F | G | | H | J | K | L | ;: | '" | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | ~` | ESC |GUI/L |L1/RT | | L1/UP|GUI/DN| [{ | ]} | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | CTRL | GUI | | ALT | GUI | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Return| Space| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_QWERTY] = KEYMAP( + KC_ESC, KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8, + KC_EQL, KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , + KC_TAB, KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , + KC_FN0 ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , + KC_GRAVE, KC_ESC, KC_FN4, KC_FN5, + KC_LCTL,KC_LGUI, + KC_HOME, + KC_BSPC,KC_DEL ,KC_FN0 , + KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_FN0 ,KC_FN1 ,KC_FN2, KC_NO, RESET, + KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, + KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, + KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, + KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT, + KC_FN6, KC_FN7, KC_LBRC ,KC_RBRC, + KC_RALT,KC_RGUI, + KC_PGUP, + KC_PGDN,KC_ENTER ,KC_SPC + ), + +/* _SYMBol level +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | | | | | | | | | | | | | | | | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | | | * | # | | | | | | | | | | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | / | [ | ] | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | { | } | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | = | ( | ) | | | | | | | | | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | | |GUI/L |L1/RT | | L1/UP|GUI/DN| { | } | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | CTRL | GUI | | ALT | GUI | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Mouse1|Mouse2| +* | | | End | | PgDn |LClick|Rclick| +* `--------------------' `--------------------' +*/ + + + +[_SYMB] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_ASTR, KC_HASH, KC_TRNS, KC_TRNS, + KC_TRNS, KC_SLSH, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, RSFT(KC_LBRC), RSFT(KC_RBRC), KC_TRNS, KC_TRNS, + KC_TRNS, KC_EQL, RSFT(KC_9), RSFT(KC_0), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_FN4, KC_FN5, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0, KC_2, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_FN6, KC_FN7, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), +/* Keymap: Movement and function layer +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | Caps | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | Tada | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | =+ | ! | @ | # | $ | % | | ^ | & | * | ( | ) |MS Fast | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | | | Up | |PgUp | | MwU |MS_UL | MS_U |MS_UR | | Ms Norm| +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* |MouseFN1| C^A | Left | Down |Right | C^E | | | MS_L |Mouse1| MS_R | |MS Slow | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | GuiZ | GUI X| GUI C| GUI_V|PgDown| | MWD | MDown|MS Dwn|MS_DR | ? | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | `~ | ESC | | | | | | { | } | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | CTRL | GUI | | ALT | GUI | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Mouse1|Mouse2| +* | | | End | | PgDn |LClick|Rclick| +* `--------------------' `--------------------' +*/ + + +[_MOUSE] = KEYMAP( + KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_EXLM ,KC_AT, KC_HASH, KC_DLR ,KC_PERC , + KC_TRNS, KC_NO, KC_NO, KC_UP, KC_NO, KC_PGUP, + KC_FN1, LCTL(KC_A),KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), + KC_TRNS, LGUI(KC_Z),LGUI(KC_X),LGUI(KC_C),LGUI(KC_V),KC_PGDN, + KC_TRNS, KC_TRNS, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0,RESET, + KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_ACL2, + KC_WH_U, M(A_MUL), KC_MS_U, M(A_MUR), KC_NO, KC_ACL1, + KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_ACL0, + KC_WH_D, M(A_MDL), KC_MS_D, M(A_MDR), RSFT(KC_LBRC), RSFT(KC_RBRC), + KC_LCBR, KC_RCBR, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_BTN1, KC_BTN2 + ), + + + +/* EMPTY +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | | | | | | | | | | | | | | | | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | | | | | | | | | | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | Ctrl | Alt | | Gui | Ctrl | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Mouse1|Mouse2| +* | | | End | | PgDn |LClick|Rclick| +* `--------------------' `--------------------' +*/ + + + +[_TRANS] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_FN10, KC_FN11, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0, KC_2, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + + +}; + + + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_LAYER_TAP_TOGGLE(_MOUSE) , + [1] = ACTION_LAYER_TOGGLE(_MOUSE) , + [2] = ACTION_LAYER_TAP_TOGGLE(_SYMB) , + [5]= ACTION_LAYER_TAP_KEY(_SYMB,KC_RIGHT), + [4]= ACTION_MODS_TAP_KEY(MOD_LGUI,KC_LEFT), + [6]= ACTION_LAYER_TAP_KEY(_SYMB,KC_UP), + [7]= ACTION_MODS_TAP_KEY(MOD_LGUI,KC_DOWN), + + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + + // from algernon's ErgoDox EZ layout, + case A_MUL: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MUR: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + + case A_MDL: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MDR: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + } + return MACRO_NONE; +}; + + +void matrix_init_user(void) { + + +} + +void matrix_scan_user(void) { + +#ifdef ALVICSTEP_CONFIG_H + int8_t layer = biton32(layer_state); + + switch (layer) { + case 1: + if (!(host_keyboard_leds() & (1 << USB_LED_CAPS_LOCK))) { + all_led_off(); + caps_lock_led_on(); + } + break; + + case 2: + if (!(host_keyboard_leds() & (1 << USB_LED_SCROLL_LOCK))) { + all_led_off(); + scroll_lock_led_on(); + } + case 0: + all_led_off(); + num_lock_led_on(); + break; + default: + break; + } +#endif + +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + +} diff --git a/keyboards/kinesis/keymaps/milestogo/readme.md b/keyboards/kinesis/keymaps/milestogo/readme.md new file mode 100644 index 000000000..76356a687 --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/readme.md @@ -0,0 +1,2 @@ +# a programmer friendly keymap for the kinesis-advantage +# not really baked yet. diff --git a/keyboards/kinesis/kinesis.c b/keyboards/kinesis/kinesis.c index 1fee90e6f..7a6a1be54 100644 --- a/keyboards/kinesis/kinesis.c +++ b/keyboards/kinesis/kinesis.c @@ -1,106 +1 @@ #include "kinesis.h" - -// begin section origin https://github.com/alvicstep/tmk_keyboard - - -void all_led_off(void) -{ - PORTD = 0b11111111; -} - -void all_led_on(void) -{ - PORTD = 0b00000000; -} -void num_lock_led_on(void) -{ - PORTD = 0b11101111; -} - -void caps_lock_led_on(void) -{ - PORTD = 0b01111111; -} - -void scroll_lock_led_on(void) -{ - PORTD = 0b11011111; -} -void keypad_led_on(void) -{ - PORTD = 0b10111111; -} -void blink_all_leds(void) -{ - all_led_on(); - _delay_ms(500); - - all_led_off(); - _delay_ms(100); - - caps_lock_led_on(); - _delay_ms(100); - - num_lock_led_on(); - _delay_ms(100); - - scroll_lock_led_on(); - _delay_ms(100); - - keypad_led_on(); - _delay_ms(100); - - //back - - scroll_lock_led_on(); - _delay_ms(100); - - num_lock_led_on(); - _delay_ms(100); - - caps_lock_led_on(); - _delay_ms(100); - - all_led_off(); -} - -// End section origin https://github.com/alvicstep/tmk_keyboard - - void matrix_init_kb(void) { - blink_all_leds(); - matrix_init_user(); -} - - -void matrix_scan_kb(void) { - // put your looping keyboard code here - // runs every cycle (a lot) - - matrix_scan_user(); -} - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - // put your per-action keyboard code here - // runs for every action, just before processing by the firmware - - return process_record_user(keycode, record); -} - -void led_set_kb(uint8_t usb_led) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - -//Copyright 2014 Warren Janssens - uint8_t leds = 0xF0; - if (usb_led & 1 << USB_LED_NUM_LOCK) - leds &= ~0x10; - if (usb_led & 1 << USB_LED_CAPS_LOCK) - leds &= ~0x80; - if (usb_led & 1 << USB_LED_SCROLL_LOCK) - leds &= ~0x20; - PORTD = (PORTD & 0x0F) | leds; - - led_set_user(usb_led); - -} - - diff --git a/keyboards/kinesis/kinesis.h b/keyboards/kinesis/kinesis.h index c04fbda15..66713731f 100644 --- a/keyboards/kinesis/kinesis.h +++ b/keyboards/kinesis/kinesis.h @@ -1,67 +1,23 @@ #ifndef KINESIS_H #define KINESIS_H -#include "quantum.h" - - -// The first section contains all of the arguements -// The second converts the arguments into a two-dimensional array +#ifdef SUBPROJECT_alvicstep + #include "alvicstep.h" +#endif +#ifdef SUBPROJECT_stapelberg + #include "stapelberg.h" +#endif -#define KEYMAP( \ - k02,k22,k12,k01,k21,k11,k00,k20,k10, \ - k80,k70,k60,k50,k40,k30, \ - k81,k71,k61,k51,k41,k31, \ - k82,k72,k62,k52,k42,k32, \ - k83,k73,k63,k53,k43,k33, \ - k74,k64,k54,k34, \ - k36,k35, \ - k55, \ - k56,k46,k75, \ - k03,k23,k13,k04,k24,k14,k05,k85,k84, \ - k94,kA4,kB4,kD4,kE4,kF4, \ - k95,kA5,kB5,kD5,kE5,kF5, \ - k96,kA6,kB6,kD6,kE6,kF6, \ - k97,kA7,kB7,kD7,kE7,kF7, \ - k93,kB3,kD3,kE3, \ - k47,k66, \ - k67, \ - k87,k76,k86 \ -) { \ - { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO }, \ - { k10, k11, k12, k13, k14, KC_NO, KC_NO, KC_NO }, \ - { k20, k21, k22, k23, k24, KC_NO, KC_NO, KC_NO }, \ - { k30, k31, k32, k33, k34, k35, k36, KC_NO }, \ - { k40, k41, k42, k43, KC_NO, KC_NO, k46, k47 }, \ - { k50, k51, k52, k53, k54, k55, k56, KC_NO }, \ - { k60, k61, k62, k63, k64, KC_NO, k66, k67 }, \ - { k70, k71, k72, k73, k74, k75, k76, KC_NO }, \ - { k80, k81, k82, k83, KC_NO ,KC_NO, k86, k87}, \ - { KC_NO, KC_NO ,KC_NO ,k93, k94, k95, k96, k97}, \ - { KC_NO, KC_NO ,KC_NO ,KC_NO, kA4, kA5, kA6, kA7}, \ - { KC_NO, KC_NO ,KC_NO ,kB3, kB4, kB5, kB6, kB7}, \ - { KC_NO, KC_NO ,KC_NO ,KC_NO, KC_NO, KC_NO, k84, k85}, \ - { KC_NO, KC_NO ,KC_NO ,kD3, kD4, kD5, kD6, kD7}, \ - { KC_NO, KC_NO ,KC_NO ,kE3, kE4, kE5, kE6, kE7}, \ - { KC_NO, KC_NO ,KC_NO ,KC_NO, kF4, kF5, kF6, kF7} \ -} +#include "quantum.h" -/* 4y0 A 4y1 B 4y2 4y3 D 4y4 E 4y5 F 4y6 G 4y7 H 5y0 I 5y1 J 5y2 K 5y3 L 5y4 M 5y5 N 5y6 O 5y7 P */ +void all_led_off(void); +void all_led_on(void); +void num_lock_led_on(void); +void caps_lock_led_on(void); +void scroll_lock_led_on(void); +void keypad_led_on(void); -/* - 0 1 2 3 4 5 6 7 8 9 A B C D E F - A B C D E F G H I J K L M N O P - 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 - r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 -0 PB0 21 c0 f6 f8 f7 5 4 3 2 1 =+ -1 PB1 22 c1 f3 f5 f4 t r e w q TAB -2 PB2 23 c2 ESC f2 f1 g f d s a CL -3 PB3 24 c3 f9 f11 f10 b v c x z LS UP DN [{ ]} -4 PB4 25 c4 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ -5 PB5 26 c5 PB PGM KPD LA HM END y u i o p \ -6 PB6 27 c6 LC DEL BS RC ENT SP h j k l ;: '" -7 PB7 28 c7 RA PU PD n m ,< .> /? RS -*/ #endif diff --git a/keyboards/kinesis/matrix.c b/keyboards/kinesis/matrix.c deleted file mode 100644 index cb0d5ad7d..000000000 --- a/keyboards/kinesis/matrix.c +++ /dev/null @@ -1,228 +0,0 @@ -/* -Copyright 2014 Warren Janssens - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -/* - * scan matrix - */ -#include -#include -#include -#include -#include "action_layer.h" -#include "print.h" -#include "debug.h" -#include "util.h" -#include "matrix.h" -#include "led.h" -#include "config.h" - -#ifndef DEBOUNCE -# define DEBOUNCE 5 -#endif -static uint8_t debouncing = DEBOUNCE; - -/* matrix state(1:on, 0:off) */ -static uint8_t matrix[MATRIX_ROWS]; -static uint8_t matrix_debouncing[MATRIX_ROWS]; - -static matrix_row_t read_row(uint8_t row); -static void unselect_rows(void); -static void select_rows(uint8_t row); - -__attribute__ ((weak)) -void matrix_init_quantum(void) { - matrix_init_kb(); -} - -__attribute__ ((weak)) -void matrix_scan_quantum(void) { - matrix_scan_kb(); -} - -__attribute__ ((weak)) -void matrix_init_kb(void) { - matrix_init_user(); -} - -__attribute__ ((weak)) -void matrix_scan_kb(void) { - matrix_scan_user(); -} - -__attribute__ ((weak)) -void matrix_init_user(void) { -} - -__attribute__ ((weak)) -void matrix_scan_user(void) { -} - -inline -uint8_t matrix_rows(void) -{ - return MATRIX_ROWS; -} - - -inline -uint8_t matrix_cols(void) -{ - return MATRIX_COLS; -} - -void matrix_init(void) -{ - //debug_enable = true; - - //dprint("matrix_init"); dprintln(); - // output high (leds) - DDRD = 0xFF; - PORTD = 0xFF; - - // output low (multiplexers) - DDRF = 0xFF; - PORTF = 0x00; - - // input with pullup (matrix) - DDRB = 0x00; - PORTB = 0xFF; - - // input with pullup (program and keypad buttons) - DDRC = 0x00; - PORTC = 0xFF; - - // initialize row and col - unselect_rows(); - - // initialize matrix state: all keys off - for (uint8_t i=0; i < MATRIX_ROWS; i++) { - matrix[i] = 0; - matrix_debouncing[i] = 0; - } - -} - -uint8_t matrix_scan(void) -{ - - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - select_rows(i); - uint8_t row = read_row(i); - if (matrix_debouncing[i] != row) { - matrix_debouncing[i] = row; - if (debouncing) { - debug("bounce!: "); debug_hex(debouncing); debug("\n"); - } - debouncing = DEBOUNCE; - } - unselect_rows(); - } - - if (debouncing) { - if (--debouncing) { - _delay_ms(1); - } else { - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - matrix[i] = matrix_debouncing[i]; - } - } - } - matrix_scan_quantum(); - return 1; -} - -bool matrix_is_modified(void) -{ - if (debouncing) return false; - return true; -} - -inline -bool matrix_is_on(uint8_t row, uint8_t col) -{ - return (matrix[row] & ((matrix_row_t)1< /? RS - */ - - diff --git a/keyboards/kinesis/readme.md b/keyboards/kinesis/readme.md index 79c86581e..2813ee273 100644 --- a/keyboards/kinesis/readme.md +++ b/keyboards/kinesis/readme.md @@ -1,42 +1,12 @@ -kinesis-advantage keyboard firmware -====================== +# Firmware for the Kinesis advantage keyboard -## Kinesis specific information -This is a port of https://github.com/alvicstep/tmk_keyboard, -which is a fork of https://github.com/wjanssens/tmk_keyboard, -which is based on work from https://github.com/chrisandreae/keyboard-firmware +There are at least two different ways to replace the controller in this keyboard. -If you replace the kinesis CPU as described in the doc folder, then this code should allow you to use QMK. -I've tested with a Teensy 2++, remember to change the CPU if you use a 32u4 instead. +The Stapelberg folder contains the docs and configuration for using the custom controller created by Michael Stapelberg. -Not yet implemented: -- Kinesis EEProm reading or writing -- Audio - this should be simple if we remove hardcoded pins from audio.h and switch to E7 +The alvicstep folder contains docs and configuration for directly wiring a Teensy2++ to the existing controller board. This follows the pinouts described in https://github.com/alvicstep/tmk_keyboard, which is where the name comes from. +## Keymaps +Both hardware solutions should work with the same keymaps -## Quantum MK Firmware - -For the full Quantum feature list, see [the parent readme.md](/doc/readme.md). - -## Building - -Download or clone the whole firmware and navigate to the keyboards/kinesis-advantage folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. - -Depending on which keymap you would like to use, you will have to compile slightly differently. - -### Default - -To build with the default keymap, simply run `make default`. - -### Other Keymaps - -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a folder with the name of your keymap in the keymaps folder, and see keymap documentation (you can find in top readme.md) and existant keymap files. - -To build the firmware binary hex file with a keymap just do `make` with a keymap like this: - -``` -$ make [default|jack|] -``` - -Keymaps follow the format **__keymap.c__** and are stored in folders in the `keymaps` folder, eg `keymaps/my_keymap/` diff --git a/keyboards/kinesis/stapelberg/Makefile b/keyboards/kinesis/stapelberg/Makefile new file mode 100644 index 000000000..bd09e5885 --- /dev/null +++ b/keyboards/kinesis/stapelberg/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../../Makefile +endif diff --git a/keyboards/kinesis/stapelberg/config.h b/keyboards/kinesis/stapelberg/config.h new file mode 100644 index 000000000..0677e0ade --- /dev/null +++ b/keyboards/kinesis/stapelberg/config.h @@ -0,0 +1,50 @@ +#ifndef STAPELBERG_CONFIG_H +#define STAPELBERG_CONFIG_H + +#include "../config.h" + +/* USB Device descriptor parameter */ +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0002 + +/* key matrix size */ +#define MATRIX_ROWS 15 +#define MATRIX_COLS 7 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +#define MATRIX_ROW_PINS { D0, D1, D2, D3, D4, D5, D6, D7, C0, C1, C2, C3, C4, C5, C6 } +#define MATRIX_COL_PINS { B0, B1, B2, B3, B4, B5, B6 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCING_DELAY 5 + +/* don't know if this should be defined at the board or top level. Assuming board +#define MOUSEKEY_DELAY 100 +#define MOUSEKEY_INTERVAL 20 +#define MOUSEKEY_MAX_SPEED 3 +#define MOUSEKEY_TIME_TO_MAX 10 +*/ + +#define IGNORE_MOD_TAP_INTERRUPT + +/* key combination for magic key command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + + +#endif diff --git a/keyboards/kinesis/stapelberg/images/controller_board.jpg b/keyboards/kinesis/stapelberg/images/controller_board.jpg new file mode 100644 index 000000000..b18f76f7e Binary files /dev/null and b/keyboards/kinesis/stapelberg/images/controller_board.jpg differ diff --git a/keyboards/kinesis/stapelberg/images/exterior_reset.jpg b/keyboards/kinesis/stapelberg/images/exterior_reset.jpg new file mode 100644 index 000000000..6edda8130 Binary files /dev/null and b/keyboards/kinesis/stapelberg/images/exterior_reset.jpg differ diff --git a/keyboards/kinesis/stapelberg/images/teensy_detail.jpg b/keyboards/kinesis/stapelberg/images/teensy_detail.jpg new file mode 100644 index 000000000..12e6c1c8a Binary files /dev/null and b/keyboards/kinesis/stapelberg/images/teensy_detail.jpg differ diff --git a/keyboards/kinesis/stapelberg/readme.md b/keyboards/kinesis/stapelberg/readme.md new file mode 100644 index 000000000..b04a0bd49 --- /dev/null +++ b/keyboards/kinesis/stapelberg/readme.md @@ -0,0 +1,55 @@ +# kinesis_stapelberg keyboard firmware + +This folder contains the firmware customization required to run QMK on the custom controller for the Kinesis Advantage created by Michael Stapelberg. +It differs from the `alvicstep keyboard in that the existing QMK Kinesis Advantage project uses the existing controller board provided by Kinesis. + +The controller board hardware is described +[here](http://michael.stapelberg.de/Artikel/kinesis_custom_controller) + +Mapping the pin assignments was done using the corresponding matrix description provided at this +[link](https://github.com/stapelberg/kinesis-firmware/blob/master/kb_kinesis/config.kspec) + +This code makes no attempt to drive the four LEDs provided on the controller board. + + +## Building the Hardware + +If you want to perform this customization, these parts may be helpful. + +| Function | Quantity | Vendor | Part Number | +| ------------------------------------------------------ | -------- | ------- | ------------ | +| 13 pin connector for function keys and finger keywells | 4 | Digi-Key | WM14526-ND | +| 10 pin headers for thumb clusters | 4 | Digi-Key | 609-3250-ND | +| 8 pin cable for thumb clusters | 2 | Digi-Key | SAM8928-ND | +| Teensy++ 2.0 | 1 | Digi-Key | 1528-1056-ND | +| 2 pin right angle header for reset | 1 | Digi-Key | 3M9467-ND | +| Reset cables | 2 | Sparkfun | PRT-09140 | + +The board and connections are shown here +![](images/controller_board.jpg) + +The Teensy mounting detail can be seen here. +I used a socket for prototyping. +![](images/teensy_detail.jpg) + + +Since the proper mounting of the Teensy board places the reset button in a tight space, I added a 2-pin header to the reset and ground pins on the edge of the board. +Shorting these two pins together will reset the board. +I also put female to male header jumper cables on these so they could be accessed outside the enclosure. +The exterior cables can be seen here. +![](images/exterior_reset.jpg) + + +## Keymaps + +### Default + +To build with the default keymap, run `make default` while in the +`kinesis_stapelberg` working directory. + +### Dvorak + +This keymap contains a dvorak implementation as well as media and symbol layers. + +Run `make dvorak` while in the `kinesis_stapelberg` working directory. + diff --git a/keyboards/kinesis/stapelberg/rules.mk b/keyboards/kinesis/stapelberg/rules.mk new file mode 100644 index 000000000..fb421a34f --- /dev/null +++ b/keyboards/kinesis/stapelberg/rules.mk @@ -0,0 +1,10 @@ +ifndef QUANTUM_DIR + include ../../../Makefile +endif + +# just silently stop, since we need to upload with teensy uploader +upload: build + + + + diff --git a/keyboards/kinesis/stapelberg/stapelberg.c b/keyboards/kinesis/stapelberg/stapelberg.c new file mode 100644 index 000000000..111db81fe --- /dev/null +++ b/keyboards/kinesis/stapelberg/stapelberg.c @@ -0,0 +1,28 @@ +#include "stapelberg.h" + +void matrix_init_kb(void) { + // put your keyboard start-up code here + // runs once when the firmware starts up + + matrix_init_user(); +} + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + + led_set_user(usb_led); +} diff --git a/keyboards/kinesis/stapelberg/stapelberg.h b/keyboards/kinesis/stapelberg/stapelberg.h new file mode 100644 index 000000000..c90fc3d52 --- /dev/null +++ b/keyboards/kinesis/stapelberg/stapelberg.h @@ -0,0 +1,72 @@ +#ifndef KINESIS_STAPELBERG_H +#define KINESIS_STAPELBERG_H + +#include "quantum.h" + +// This a shortcut to help you visually see your layout. +// The first section contains all of the arguments as on the physical keyboard +// The second converts the arguments into the 2-D scanned array + +#define KEYMAP( \ + kC0,kD0,kE0,kC1,kD1,kE1,kC2,kD2,kE2, \ + k00,k10,k20,k30,k40,k50, \ + k01,k11,k21,k31,k41,k51, \ + k02,k12,k22,k32,k42,k52, \ + k03,k13,k23,k33,k43,k53, \ + k14,k24,k34,k54, \ + k56,k55, \ + k35, \ + k36,k46,k25, \ + kC3,kD3,kE3,kC4,kD4,kE4,kC5,kE5,kD5, \ + k60,k70,k80,k90,kA0,kB0, \ + k61,k71,k81,k91,kA1,kB1, \ + k62,k72,k82,k92,kA2,kB2, \ + k63,k73,k83,k93,kA3,kB3, \ + k64,k84,k94,kA4, \ + k96,k85, \ + k86, \ + k66,k75,k65 \ +) { \ + { k00, k01, k02, k03, KC_NO, KC_NO, KC_NO }, \ + { k10, k11, k12, k13, k14, KC_NO, KC_NO }, \ + { k20, k21, k22, k23, k24, k25, KC_NO }, \ + { k30, k31, k32, k33, k34, k35, k36 }, \ + { k40, k41, k42, k43, KC_NO, KC_NO, k46 }, \ + { k50, k51, k52, k53, k54, k55, k56 }, \ + { k60, k61, k62, k63, k64, k65, k66 }, \ + { k70, k71, k72, k73, KC_NO, k75, KC_NO }, \ + { k80, k81, k82, k83, k84, k85, k86 }, \ + { k90, k91, k92, k93, k94, KC_NO, k96 }, \ + { kA0, kA1, kA2, kA3, kA4, KC_NO, KC_NO }, \ + { kB0, kB1, kB2, kB3, KC_NO, KC_NO, KC_NO }, \ + { kC0, kC1, kC2, kC3, kC4, kC5, KC_NO }, \ + { kD0, kD1, kD2, kD3, kD4, kD5, KC_NO }, \ + { kE0, kE1, kE2, kE3, kE4, kE5, KC_NO } \ +} + +/* +This is the Stapelberg matrix as published at +https://github.com/stapelberg/kinesis-firmware/blob/master/kb_kinesis/config.kspec +Along with the pins for each row and column + PB0 PB1 PB2 PB3 PB4 PB5 PB6 + kx0 kx1 kx2 kx3 kx4 kx5 kx6 +PD0 k0x Row: EQL TAB CAP LSH X2 -- -- +PD1 k1x Row: 1 Q A Z BQ -- -- +PD2 k2x Row: 2 W S X INS END -- +PD3 k3x Row: 3 E D C LFT HOM BAK +PD4 k4x Row: 4 R F V -- -- DEL +PD5 k5x Row: 5 T G B RT LAL LCT +PD6 k6x Row: 6 Y H N UP SPC PGD +PD7 k7x Row: 7 U J M -- RET -- +PB0 k8x Row: 8 I K COM DWN RCT PGU +PB1 k9x Row: 9 O L PER LBR -- RAL +PB2 kAx Row: 0 P SEM SLA RBR -- -- +PB3 kBx Row: MIN BSL APO RSH X1 -- -- +PB4 kCx Row: ESC F3 F6 F9 F12 PAU -- +PB5 kDx Row: F1 F4 F7 F10 PRT PRG -- +PB6 kEx Row: F2 F5 F8 F11 SLK KEY -- +*/ + + + +#endif -- cgit v1.2.3-70-g09d2 From 62f1c13c3ad56e1a3fd90328355c57a4b1b61c6a Mon Sep 17 00:00:00 2001 From: milestogo Date: Sun, 8 Jan 2017 22:17:47 -0800 Subject: trying to clean up duplicate docs --- .../alvicstep/docs/docs/kicad/kinesis-cache.lib | 232 -------- .../kinesis/alvicstep/docs/docs/kicad/kinesis.pro | 83 --- .../kinesis/alvicstep/docs/docs/kicad/kinesis.sch | 634 --------------------- .../alvicstep/docs/docs/photos/P1050573.jpg | Bin 177711 -> 0 bytes .../alvicstep/docs/docs/photos/P1050574.jpg | Bin 343978 -> 0 bytes .../alvicstep/docs/docs/photos/P1050575.jpg | Bin 266771 -> 0 bytes keyboards/kinesis/alvicstep/docs/docs/readme.txt | 52 -- .../kinesis/alvicstep/docs/docs/schematic.png | Bin 175014 -> 0 bytes 8 files changed, 1001 deletions(-) delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/readme.txt delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/schematic.png diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib deleted file mode 100644 index f798d39d6..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib +++ /dev/null @@ -1,232 +0,0 @@ -EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm -#encoding utf-8 -# -# AT90S4414-P -# -DEF AT90S4414-P IC 0 40 Y Y 1 F N -F0 "IC" -850 1880 40 H V L BNN -F1 "AT90S4414-P" 450 -1950 40 H V L BNN -F2 "DIL40" 0 0 30 H V C CIN -F3 "~" 0 0 60 H V C CNN -ALIAS AT90S8515-P -$FPLIST - 40DIP-ELL600 - 40dip600 -$ENDFPLIST -DRAW -S -850 1850 850 -1850 0 1 10 f -X (T0)PB0 1 1000 700 150 L 40 40 1 1 B -X (T1)PB1 2 1000 600 150 L 40 40 1 1 B -X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B -X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B -X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B -X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B -X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B -X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B -X ~RESET 9 -1000 1700 150 R 40 40 1 1 I -X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B -X GND 20 0 -2000 150 U 40 40 1 1 W -X ALE 30 1000 850 150 L 40 40 1 1 O -X VCC 40 0 2000 150 D 40 40 1 1 W -X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B -X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B -X ICP 31 -1000 -1400 150 R 40 40 1 1 I -X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B -X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B -X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B -X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B -X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B -X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B -X PD4 14 1000 -1400 150 L 40 40 1 1 B -X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B -X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B -X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B -X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B -X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B -X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B -X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B -X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B -X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B -X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B -X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B -X XTAL2 18 -1000 1200 150 R 40 40 1 1 B -X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B -X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B -X XTAL1 19 -1000 800 150 R 40 40 1 1 B -X OC1B 29 -1000 -1500 150 R 40 40 1 1 W -X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# ATMEGA16U4-A -# -DEF ATMEGA16U4-A U 0 40 Y Y 1 F N -F0 "U" -950 1700 40 H V C CNN -F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN -F2 "TQFP44" 0 0 35 H V C CIN -F3 "~" 1100 1100 60 H V C CNN -ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A -$FPLIST - TQFP44 -$ENDFPLIST -DRAW -S -1000 1650 950 -1450 0 1 10 f -X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B -X UVCC 2 -450 1800 150 D 40 40 1 1 W -X D- 3 -1150 100 150 R 40 40 1 1 B -X D+ 4 -1150 200 150 R 40 40 1 1 B -X UGND 5 -400 -1600 150 U 40 40 1 1 P -X UCAP 6 -1150 -50 150 R 40 40 1 1 P -X VBUS 7 -1150 350 150 R 40 40 1 1 P -X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B -X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B -X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B -X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B -X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B -X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B -X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B -X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B -X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B -X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B -X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B -X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B -X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B -X AREF 42 -1150 -850 150 R 40 40 1 1 P -X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I -X GND 23 -50 -1600 150 U 40 40 1 1 W -X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B -X GND 43 150 -1600 150 U 40 40 1 1 W -X VCC 14 -200 1800 150 D 40 40 1 1 W -X AVCC 24 150 1800 150 D 40 40 1 1 W -X VCC 34 -100 1800 150 D 40 40 1 1 W -X AVCC 44 250 1800 150 D 40 40 1 1 W -X GND 15 -150 -1600 150 U 40 40 1 1 W -X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B -X GND 35 50 -1600 150 U 40 40 1 1 W -X XTAL2 16 -1150 950 150 R 40 40 1 1 O -X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B -X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B -X XTAL1 17 -1150 1150 150 R 40 40 1 1 I -X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B -X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B -X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B -X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B -X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B -X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B -X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B -X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# C -# -DEF C C 0 10 N Y 1 F N -F0 "C" 0 100 40 H V L CNN -F1 "C" 6 -85 40 H V L CNN -F2 "~" 38 -150 30 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - SM* - C? - C1-1 -$ENDFPLIST -DRAW -P 2 0 1 20 -80 -30 80 -30 N -P 2 0 1 20 -80 30 80 30 N -X ~ 1 0 200 170 D 40 40 1 1 P -X ~ 2 0 -200 170 U 40 40 1 1 P -ENDDRAW -ENDDEF -# -# CONN_7 -# -DEF CONN_7 P 0 40 Y N 1 F N -F0 "P" -30 0 60 V V C CNN -F1 "CONN_7" 70 0 60 V V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -S -100 350 150 -350 0 1 0 N -X P1 1 -350 300 250 R 50 50 1 1 P I -X P2 2 -350 200 250 R 50 50 1 1 P I -X P3 3 -350 100 250 R 50 50 1 1 P I -X P4 4 -350 0 250 R 50 50 1 1 P I -X P5 5 -350 -100 250 R 50 50 1 1 P I -X P6 6 -350 -200 250 R 50 50 1 1 P I -X P7 7 -350 -300 250 R 50 50 1 1 P I -ENDDRAW -ENDDEF -# -# GND -# -DEF ~GND #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 0 30 H I C CNN -F1 "GND" 0 -70 30 H I C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N -X GND 1 0 0 0 U 30 30 1 1 W N -ENDDRAW -ENDDEF -# -# R -# -DEF R R 0 0 N Y 1 F N -F0 "R" 80 0 40 V V C CNN -F1 "R" 7 1 40 V V C CNN -F2 "~" -70 0 30 V V C CNN -F3 "~" 0 0 30 H V C CNN -$FPLIST - R? - SM0603 - SM0805 - R?-* - SM1206 -$ENDFPLIST -DRAW -S -40 150 40 -150 0 1 12 N -X ~ 1 0 250 100 D 60 60 1 1 P -X ~ 2 0 -250 100 U 60 60 1 1 P -ENDDRAW -ENDDEF -# -# USB-MINI-B -# -DEF USB-MINI-B CON 0 40 Y Y 1 F N -F0 "CON" -250 450 60 H V C CNN -F1 "USB-MINI-B" -50 -500 60 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - USB-Mini-B-Jack -$ENDFPLIST -DRAW -S -350 400 350 -400 0 1 0 N -X VBUS 1 -550 300 200 R 50 50 1 1 W -X D- 2 -550 150 200 R 50 50 1 1 B -X D+ 3 -550 0 200 R 50 50 1 1 B -X ID 4 -550 -150 200 R 50 50 1 1 B -X GND 5 -550 -300 200 R 50 50 1 1 W -X SHELL1 6 550 300 200 L 50 50 1 1 B -X SHELL2 7 550 150 200 L 50 50 1 1 B -X SHELL3 8 550 -150 200 L 50 50 1 1 B -X SHELL4 9 550 -300 200 L 50 50 1 1 B -ENDDRAW -ENDDEF -# -# VCC -# -DEF VCC #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 100 30 H I C CNN -F1 "VCC" 0 100 30 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -X VCC 1 0 0 0 U 20 20 0 0 W N -C 0 50 20 0 1 0 N -P 3 0 1 0 0 0 0 30 0 30 N -ENDDRAW -ENDDEF -# -#End Library diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro deleted file mode 100644 index 9f130b509..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro +++ /dev/null @@ -1,83 +0,0 @@ -update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm -version=1 -last_client=pcbnew -[cvpcb] -version=1 -NetIExt=net -[cvpcb/libraries] -EquName1=devcms -[general] -version=1 -[eeschema] -version=1 -PageLayoutDescrFile= -SubpartIdSeparator=0 -SubpartFirstId=65 -LibDir=../../../lib/kicad/library -NetFmtName= -RptD_X=0 -RptD_Y=100 -RptLab=1 -LabSize=60 -[eeschema/libraries] -LibName1=power -LibName2=device -LibName3=transistors -LibName4=conn -LibName5=linear -LibName6=regul -LibName7=74xx -LibName8=cmos4000 -LibName9=adc-dac -LibName10=memory -LibName11=xilinx -LibName12=special -LibName13=microcontrollers -LibName14=dsp -LibName15=microchip -LibName16=analog_switches -LibName17=motorola -LibName18=texas -LibName19=intel -LibName20=audio -LibName21=interface -LibName22=digital-audio -LibName23=philips -LibName24=display -LibName25=cypress -LibName26=siliconi -LibName27=opto -LibName28=atmel -LibName29=contrib -LibName30=valves -LibName31=custom -[pcbnew] -version=1 -LastNetListRead= -UseCmpFile=1 -PadDrill=1.016000000000 -PadDrillOvalY=1.016000000000 -PadSizeH=1.524000000000 -PadSizeV=1.524000000000 -PcbTextSizeV=1.500000000000 -PcbTextSizeH=1.500000000000 -PcbTextThickness=0.300000000000 -ModuleTextSizeV=1.000000000000 -ModuleTextSizeH=1.000000000000 -ModuleTextSizeThickness=0.150000000000 -SolderMaskClearance=0.000000000000 -SolderMaskMinWidth=0.000000000000 -DrawSegmentWidth=0.200000000000 -BoardOutlineThickness=0.100000000000 -ModuleOutlineThickness=0.150000000000 -[pcbnew/libraries] -LibDir=../../../lib/kicad/modules -LibName1=custom -LibName2=Sockets -LibName3=Connect -LibName4=Discret -LibName5=Divers -LibName6=Display -LibName7=LEDs -LibName8=SMD_Packages -LibName9=Sockets_DIP diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch deleted file mode 100644 index f75335aa0..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch +++ /dev/null @@ -1,634 +0,0 @@ -EESchema Schematic File Version 2 -LIBS:power -LIBS:device -LIBS:transistors -LIBS:conn -LIBS:linear -LIBS:regul -LIBS:74xx -LIBS:cmos4000 -LIBS:adc-dac -LIBS:memory -LIBS:xilinx -LIBS:special -LIBS:microcontrollers -LIBS:dsp -LIBS:microchip -LIBS:analog_switches -LIBS:motorola -LIBS:texas -LIBS:intel -LIBS:audio -LIBS:interface -LIBS:digital-audio -LIBS:philips -LIBS:display -LIBS:cypress -LIBS:siliconi -LIBS:opto -LIBS:atmel -LIBS:contrib -LIBS:valves -LIBS:custom -LIBS:kinesis-cache -EELAYER 27 0 -EELAYER END -$Descr A4 11693 8268 -encoding utf-8 -Sheet 1 1 -Title "" -Date "13 nov 2014" -Rev "" -Comp "" -Comment1 "" -Comment2 "" -Comment3 "" -Comment4 "" -$EndDescr -$Comp -L C C4 -U 1 1 545804FB -P 2850 4250 -F 0 "C4" H 2850 4350 40 0000 L CNN -F 1 "1uF" H 2856 4165 40 0000 L CNN -F 2 "~" H 2888 4100 30 0000 C CNN -F 3 "~" H 2850 4250 60 0000 C CNN - 1 2850 4250 - -1 0 0 1 -$EndComp -$Comp -L R R3 -U 1 1 545805E8 -P 2500 4000 -F 0 "R3" V 2580 4000 40 0000 C CNN -F 1 "22" V 2507 4001 40 0000 C CNN -F 2 "~" V 2430 4000 30 0000 C CNN -F 3 "~" H 2500 4000 30 0000 C CNN - 1 2500 4000 - 0 -1 -1 0 -$EndComp -$Comp -L R R2 -U 1 1 545805FA -P 2500 3800 -F 0 "R2" V 2580 3800 40 0000 C CNN -F 1 "22" V 2507 3801 40 0000 C CNN -F 2 "~" V 2430 3800 30 0000 C CNN -F 3 "~" H 2500 3800 30 0000 C CNN - 1 2500 3800 - 0 -1 -1 0 -$EndComp -Entry Wire Line - 6450 2450 6550 2550 -Entry Wire Line - 6450 2550 6550 2650 -Entry Wire Line - 6450 2650 6550 2750 -Entry Wire Line - 6450 2750 6550 2850 -Entry Wire Line - 6450 2950 6550 3050 -Entry Wire Line - 6450 3050 6550 3150 -Entry Wire Line - 6450 2850 6550 2950 -Entry Wire Line - 6450 3150 6550 3250 -Wire Wire Line - 10250 1800 10750 1800 -Entry Wire Line - 10750 1800 10850 1900 -Entry Wire Line - 10750 1900 10850 2000 -Entry Wire Line - 10750 2000 10850 2100 -Entry Wire Line - 10750 2800 10850 2900 -Entry Wire Line - 10750 2900 10850 3000 -Entry Wire Line - 10750 3000 10850 3100 -Entry Wire Line - 10750 3100 10850 3200 -Entry Wire Line - 10750 3200 10850 3300 -Entry Wire Line - 10750 3300 10850 3400 -$Comp -L AT90S8515-P IC2 -U 1 1 545A62EA -P 9250 3500 -F 0 "IC2" H 8400 5380 40 0000 L BNN -F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN -F 2 "DIL40" H 9250 3500 30 0000 C CIN -F 3 "" H 9250 3500 60 0000 C CNN - 1 9250 3500 - 1 0 0 -1 -$EndComp -NoConn ~ 10250 2650 -Entry Wire Line - 10750 3650 10850 3750 -Entry Wire Line - 10750 3750 10850 3850 -Entry Wire Line - 10750 3850 10850 3950 -Entry Wire Line - 10750 3950 10850 4050 -Entry Wire Line - 10750 4050 10850 4150 -Entry Wire Line - 10750 4150 10850 4250 -Entry Wire Line - 10750 4350 10850 4450 -Entry Wire Line - 10750 4250 10850 4350 -NoConn ~ 8250 4900 -NoConn ~ 8250 5000 -NoConn ~ 8250 1800 -Wire Wire Line - 10250 1900 10750 1900 -Wire Wire Line - 10250 2000 10750 2000 -Wire Wire Line - 10250 2100 10750 2100 -Wire Wire Line - 10250 2200 10750 2200 -Wire Wire Line - 10250 2300 10750 2300 -Wire Wire Line - 10250 2400 10750 2400 -Wire Wire Line - 10250 2500 10750 2500 -Text Label 10350 1800 0 60 ~ 0 -A -Text Label 10350 1900 0 60 ~ 0 -B -Text Label 10350 2000 0 60 ~ 0 -C -Text Label 10350 2100 0 60 ~ 0 -G -Wire Wire Line - 10250 2800 10750 2800 -Wire Wire Line - 10250 2900 10750 2900 -Wire Wire Line - 10250 3000 10750 3000 -Wire Wire Line - 10250 3100 10750 3100 -Wire Wire Line - 10250 3200 10750 3200 -Wire Wire Line - 10250 3300 10750 3300 -Wire Wire Line - 10250 3400 10750 3400 -Wire Wire Line - 10250 3500 10750 3500 -Text Label 10350 2800 0 60 ~ 0 -DL2 -Text Label 10350 2900 0 60 ~ 0 -DR1 -Text Label 10350 3000 0 60 ~ 0 -DR2 -Text Label 10350 3100 0 60 ~ 0 -DL1 -Text Label 10350 3400 0 60 ~ 0 -SCL -Text Label 10350 3500 0 60 ~ 0 -SDA -Wire Wire Line - 10250 3650 10750 3650 -Wire Wire Line - 10250 3750 10750 3750 -Wire Wire Line - 10250 3850 10750 3850 -Wire Wire Line - 10250 3950 10750 3950 -Wire Wire Line - 10250 4050 10750 4050 -Wire Wire Line - 10250 4150 10750 4150 -Wire Wire Line - 10250 4250 10750 4250 -Wire Wire Line - 10250 4350 10750 4350 -Text Label 10350 3650 0 60 ~ 0 -R1 -Text Label 10350 3750 0 60 ~ 0 -R2 -Text Label 10350 3850 0 60 ~ 0 -R3 -Text Label 10350 3950 0 60 ~ 0 -R4 -Text Label 10350 4050 0 60 ~ 0 -R5 -Text Label 10350 4150 0 60 ~ 0 -R6 -Text Label 10350 4250 0 60 ~ 0 -R7 -Text Label 10350 4350 0 60 ~ 0 -R8 -Wire Wire Line - 10250 4500 10750 4500 -Wire Wire Line - 10250 4600 10750 4600 -Wire Wire Line - 10250 4700 10750 4700 -Wire Wire Line - 10250 4800 10750 4800 -Wire Wire Line - 10250 4900 10750 4900 -Wire Wire Line - 10250 5000 10750 5000 -Wire Wire Line - 10250 5100 10750 5100 -Wire Wire Line - 10250 5200 10750 5200 -Text Label 10350 4600 0 60 ~ 0 -FS1 -Text Label 10350 5000 0 60 ~ 0 -FS3 -Text Label 10350 5200 0 60 ~ 0 -FS2 -$Comp -L GND #PWR01 -U 1 1 545A7377 -P 9250 5600 -F 0 "#PWR01" H 9250 5600 30 0001 C CNN -F 1 "GND" H 9250 5530 30 0001 C CNN -F 2 "" H 9250 5600 60 0000 C CNN -F 3 "" H 9250 5600 60 0000 C CNN - 1 9250 5600 - 1 0 0 -1 -$EndComp -Wire Wire Line - 9250 5500 9250 5600 -Text Label 10350 4700 0 60 ~ 0 -CLOCK -Text Label 10350 4800 0 60 ~ 0 -DATA -NoConn ~ 10750 4700 -NoConn ~ 10750 4800 -Text Label 10350 3200 0 60 ~ 0 -KP -Text Label 10350 3300 0 60 ~ 0 -PGM -Text Label 10350 2500 0 60 ~ 0 -BUZZ -NoConn ~ 8250 2300 -NoConn ~ 8250 2700 -$Comp -L GND #PWR02 -U 1 1 545A7565 -P 4750 5700 -F 0 "#PWR02" H 4750 5700 30 0001 C CNN -F 1 "GND" H 4750 5630 30 0001 C CNN -F 2 "" H 4750 5700 60 0000 C CNN -F 3 "" H 4750 5700 60 0000 C CNN - 1 4750 5700 - 1 0 0 -1 -$EndComp -Entry Wire Line - 6450 3650 6550 3750 -Entry Wire Line - 6450 3750 6550 3850 -Entry Wire Line - 6450 4150 6550 4250 -Entry Wire Line - 6450 4250 6550 4350 -Entry Wire Line - 6450 4050 6550 4150 -Entry Wire Line - 6450 4350 6550 4450 -NoConn ~ 3750 2850 -Wire Wire Line - 1200 2000 6450 2000 -NoConn ~ 3750 3050 -Wire Wire Line - 2750 3800 3750 3800 -Wire Wire Line - 2750 3900 3750 3900 -Wire Wire Line - 2750 3900 2750 4000 -Wire Bus Line - 6550 2100 6550 6050 -Wire Bus Line - 10850 1600 10850 6050 -Text Label 6050 4350 0 60 ~ 0 -DL1 -Text Label 6050 4250 0 60 ~ 0 -DR2 -Text Label 6050 4150 0 60 ~ 0 -DR1 -Text Label 6050 4050 0 60 ~ 0 -DL2 -Text Label 6050 2450 0 60 ~ 0 -R1 -Text Label 6050 2550 0 60 ~ 0 -R2 -Text Label 6050 2650 0 60 ~ 0 -R3 -Text Label 6050 2750 0 60 ~ 0 -R4 -Text Label 6050 2850 0 60 ~ 0 -R5 -Text Label 6050 2950 0 60 ~ 0 -R6 -Text Label 6050 3050 0 60 ~ 0 -R7 -Text Label 6050 3150 0 60 ~ 0 -R8 -Text Label 6050 5050 0 60 ~ 0 -A -Text Label 6050 5150 0 60 ~ 0 -B -Text Label 6050 5250 0 60 ~ 0 -C -Text Label 6050 5350 0 60 ~ 0 -G -Text Label 1300 3800 0 60 ~ 0 -D+ -Text Label 1300 4000 0 60 ~ 0 -D- -NoConn ~ 10750 2200 -NoConn ~ 10750 2300 -NoConn ~ 10750 2400 -Text Label 10350 4500 0 60 ~ 0 -GND -NoConn ~ 10750 4900 -NoConn ~ 10750 5100 -Text Label 6050 3450 0 60 ~ 0 -KP -Text Label 6050 3350 0 60 ~ 0 -PGM -$Comp -L ATMEGA32U4-A U1 -U 1 1 5462E0B1 -P 4900 4000 -F 0 "U1" H 3950 5700 40 0000 C CNN -F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN -F 2 "TQFP44" H 4900 4000 35 0000 C CIN -F 3 "" H 6000 5100 60 0000 C CNN - 1 4900 4000 - 1 0 0 -1 -$EndComp -Wire Wire Line - 3750 4850 3750 5600 -Wire Wire Line - 4450 2200 5150 2200 -Connection ~ 4700 2200 -Connection ~ 4800 2200 -Connection ~ 5050 2200 -Connection ~ 4800 2000 -Wire Wire Line - 6000 2450 6450 2450 -Wire Wire Line - 6000 2550 6450 2550 -Wire Wire Line - 6000 2650 6450 2650 -Wire Wire Line - 6000 2750 6450 2750 -Wire Wire Line - 6000 2850 6450 2850 -Wire Wire Line - 6000 2950 6450 2950 -Wire Wire Line - 6000 3050 6450 3050 -Wire Wire Line - 6000 3150 6450 3150 -Wire Wire Line - 6000 5050 6450 5050 -Wire Wire Line - 6000 5150 6450 5150 -Wire Wire Line - 6000 5250 6450 5250 -Wire Wire Line - 6000 4050 6450 4050 -Wire Wire Line - 6000 4150 6450 4150 -Wire Wire Line - 6000 4250 6450 4250 -Wire Wire Line - 6000 4350 6450 4350 -Wire Wire Line - 6000 4550 6450 4550 -Entry Wire Line - 6450 3350 6550 3450 -Entry Wire Line - 6450 3450 6550 3550 -Entry Wire Line - 6450 5050 6550 5150 -Entry Wire Line - 6450 5150 6550 5250 -Entry Wire Line - 6450 5250 6550 5350 -Entry Wire Line - 6450 5350 6550 5450 -Entry Wire Line - 6450 4650 6550 4750 -Wire Wire Line - 6000 3350 6450 3350 -Wire Wire Line - 6000 3450 6450 3450 -Wire Wire Line - 1200 5600 6450 5600 -Connection ~ 4950 5600 -Connection ~ 4850 5600 -Wire Wire Line - 4750 5600 4750 5700 -Connection ~ 4750 5600 -Connection ~ 4500 5600 -Text Label 6050 4550 0 60 ~ 0 -HWB -Wire Wire Line - 6000 5350 6450 5350 -Wire Wire Line - 6000 3650 6450 3650 -Wire Wire Line - 6000 3750 6450 3750 -Text Label 6050 3650 0 60 ~ 0 -SCL -Text Label 6050 3750 0 60 ~ 0 -SDA -Wire Wire Line - 6000 3850 6450 3850 -Wire Wire Line - 6000 3950 6450 3950 -Wire Wire Line - 6000 4650 6450 4650 -Text Label 6050 4650 0 60 ~ 0 -BUZZ -NoConn ~ 10750 4600 -NoConn ~ 10750 5000 -NoConn ~ 10750 5200 -Entry Wire Line - 10750 3400 10850 3500 -Entry Wire Line - 10750 3500 10850 3600 -Entry Wire Line - 10750 4500 10850 4600 -Wire Wire Line - 2850 4050 3750 4050 -Text Label 2950 4050 0 60 ~ 0 -UCAP -Wire Wire Line - 6000 4850 6450 4850 -Wire Wire Line - 6000 4950 6450 4950 -NoConn ~ 6450 4850 -NoConn ~ 6450 4950 -NoConn ~ 6450 4550 -$Comp -L USB-MINI-B CON1 -U 1 1 546431C1 -P 2100 5050 -F 0 "CON1" H 1850 5500 60 0000 C CNN -F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN -F 2 "" H 2100 5050 60 0000 C CNN -F 3 "" H 2100 5050 60 0000 C CNN - 1 2100 5050 - 0 1 1 0 -$EndComp -$Comp -L VCC #PWR03 -U 1 1 54643698 -P 2400 4400 -F 0 "#PWR03" H 2400 4500 30 0001 C CNN -F 1 "VCC" H 2400 4500 30 0000 C CNN -F 2 "" H 2400 4400 60 0000 C CNN -F 3 "" H 2400 4400 60 0000 C CNN - 1 2400 4400 - 1 0 0 -1 -$EndComp -Text Notes 2600 2750 0 60 ~ 0 -Teensy 2.0\n(not fully drawn) -$Comp -L CONN_7 B7K-PH-K-S1 -U 1 1 54643939 -P 1950 6900 -F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN -F 1 "CONN_7" V 2020 6900 60 0000 C CNN -F 2 "" H 1950 6900 60 0000 C CNN -F 3 "" H 1950 6900 60 0000 C CNN - 1 1950 6900 - 1 0 0 -1 -$EndComp -Connection ~ 3750 5600 -Connection ~ 2400 5600 -Connection ~ 2250 5600 -Connection ~ 1950 5600 -Wire Wire Line - 2400 4400 2400 4500 -Wire Wire Line - 2250 4000 2250 4500 -Wire Wire Line - 1200 3800 2250 3800 -Wire Wire Line - 2100 3800 2100 4500 -Wire Wire Line - 2850 4450 2850 5600 -Connection ~ 2850 5600 -Entry Wire Line - 1100 6800 1200 6900 -Entry Wire Line - 1100 6900 1200 7000 -Entry Wire Line - 1100 7000 1200 7100 -Entry Wire Line - 1100 6700 1200 6800 -Wire Wire Line - 1200 6600 1600 6600 -Wire Wire Line - 1200 6700 1600 6700 -Wire Wire Line - 1200 6800 1600 6800 -Wire Wire Line - 1200 6900 1600 6900 -Wire Wire Line - 1200 7000 1600 7000 -Wire Wire Line - 1200 7100 1600 7100 -Wire Wire Line - 1200 7200 1600 7200 -Text Label 1300 6600 0 60 ~ 0 -FS2 -Text Label 1300 6700 0 60 ~ 0 -FS1 -Text Label 1300 6800 0 60 ~ 0 -VCC -Text Label 1300 6900 0 60 ~ 0 -D- -Text Label 1300 7000 0 60 ~ 0 -D+ -Text Label 1300 7100 0 60 ~ 0 -GND -Text Label 1300 7200 0 60 ~ 0 -FS3 -NoConn ~ 3750 2450 -Wire Wire Line - 3600 2000 3600 3650 -Wire Wire Line - 3600 3650 3750 3650 -NoConn ~ 1950 4500 -Wire Bus Line - 1100 1900 1100 7100 -NoConn ~ 1200 6600 -NoConn ~ 1200 6700 -NoConn ~ 1200 7200 -Connection ~ 2100 3800 -Wire Wire Line - 1200 4000 2250 4000 -Entry Wire Line - 1100 3700 1200 3800 -Entry Wire Line - 1100 3900 1200 4000 -Text Label 10350 1500 0 60 ~ 0 -VCC -Entry Wire Line - 1100 1900 1200 2000 -Text Label 1250 2000 0 60 ~ 0 -VCC -Entry Wire Line - 1100 5500 1200 5600 -Connection ~ 1800 5600 -Text Label 1300 5600 0 60 ~ 0 -GND -Wire Wire Line - 9250 5500 10750 5500 -Entry Wire Line - 10750 5500 10850 5600 -Text Label 10350 5500 0 60 ~ 0 -GND -Wire Wire Line - 9250 1500 10750 1500 -Entry Wire Line - 10750 1500 10850 1600 -Connection ~ 3600 2000 -Wire Wire Line - 4800 2000 4800 2200 -Entry Wire Line - 6450 2000 6550 2100 -Text Label 6050 2000 0 60 ~ 0 -VCC -Connection ~ 5050 5600 -Entry Wire Line - 6450 5600 6550 5700 -Text Label 6050 5600 0 60 ~ 0 -GND -NoConn ~ 6450 3850 -NoConn ~ 6450 3950 -Wire Wire Line - 1800 4500 1500 4500 -Wire Wire Line - 1500 4500 1500 5600 -Connection ~ 1500 5600 -Entry Wire Line - 10750 2500 10850 2600 -Entry Wire Line - 10750 2100 10850 2200 -Text Notes 1000 5300 1 60 ~ 0 -Sacrificial USB cable from header to Teensy -Text Notes 7850 5950 0 60 ~ 0 -Ribbon cable between Teensy pins and socket -Wire Bus Line - 10850 6050 6550 6050 -$EndSCHEMATC diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg deleted file mode 100644 index 027ab9efb..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg and /dev/null differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg deleted file mode 100644 index d49c492b8..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg and /dev/null differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg deleted file mode 100644 index 50cc9897c..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg and /dev/null differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/readme.txt b/keyboards/kinesis/alvicstep/docs/docs/readme.txt deleted file mode 100644 index af33ac490..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/readme.txt +++ /dev/null @@ -1,52 +0,0 @@ -This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis -and is probably Copyright 2014 Warren Janssens -and probably released under GPL v2, which may be recovered at . - -Row configuration -PF0 A -PF1 B -PF2 C -PF3 G 0 = U4, 1 = U5 - -Column configuration - 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 - r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 -PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ -PB1 22 c2 f3 f5 f4 t r e w q TAB -PB2 23 c3 ESC f2 f1 g f d s a CL -PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} -PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ -PB5 26 c6 PB PGM KPD y u i o p \ -PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" -PB7 28 c8 RA PU PD n m ,< .> /? RS - */ - - -40 pin connector - - DL2 1 40 VCC - DR1 2 39 A - DR2 3 38 B - DL1 4 37 C - KPD 5 36 G - PGM 6 35 - SCL 7 34 - SDA 8 33 - RST 9 32 BUZZ - WP 10 31 EA - FS1 11 30 ALE - CLOCK 12 29 PSEN - DATA 13 28 r8 - 14 27 r7 - FS3 15 26 r6 - 16 25 r5 - FS2 17 24 r4 - XTAL1 18 23 r3 - XTAL2 19 22 r2 - GND 20 21 r1 - - -references: -https://github.com/chrisandreae/keyboard-firmware - - diff --git a/keyboards/kinesis/alvicstep/docs/docs/schematic.png b/keyboards/kinesis/alvicstep/docs/docs/schematic.png deleted file mode 100644 index fa9405a1f..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/schematic.png and /dev/null differ -- cgit v1.2.3-70-g09d2 From 9d4cc2f3f1666fc110506c6a982c53d1df67548b Mon Sep 17 00:00:00 2001 From: milestogo Date: Sun, 8 Jan 2017 22:25:41 -0800 Subject: removing old programmer layout, in favor of milestogo --- keyboards/kinesis/keymaps/programmer/Makefile | 21 --- keyboards/kinesis/keymaps/programmer/config.h | 8 - keyboards/kinesis/keymaps/programmer/keymap.c | 245 ------------------------- keyboards/kinesis/keymaps/programmer/readme.md | 2 - 4 files changed, 276 deletions(-) delete mode 100644 keyboards/kinesis/keymaps/programmer/Makefile delete mode 100644 keyboards/kinesis/keymaps/programmer/config.h delete mode 100644 keyboards/kinesis/keymaps/programmer/keymap.c delete mode 100644 keyboards/kinesis/keymaps/programmer/readme.md diff --git a/keyboards/kinesis/keymaps/programmer/Makefile b/keyboards/kinesis/keymaps/programmer/Makefile deleted file mode 100644 index 9d3df5964..000000000 --- a/keyboards/kinesis/keymaps/programmer/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Build Options -# change to "no" to disable the options, or define them in the Makefile in -# the appropriate keymap folder that will get included automatically -# -BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = yes # Mouse keys(+4700) -EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) -COMMAND_ENABLE = yes # Commands for debug and configuration -NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -MIDI_ENABLE = no # MIDI controls -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif diff --git a/keyboards/kinesis/keymaps/programmer/config.h b/keyboards/kinesis/keymaps/programmer/config.h deleted file mode 100644 index 8893d122e..000000000 --- a/keyboards/kinesis/keymaps/programmer/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -// place overrides here - -#endif diff --git a/keyboards/kinesis/keymaps/programmer/keymap.c b/keyboards/kinesis/keymaps/programmer/keymap.c deleted file mode 100644 index 83fb7bd5f..000000000 --- a/keyboards/kinesis/keymaps/programmer/keymap.c +++ /dev/null @@ -1,245 +0,0 @@ -#include "kinesis.h" -#include "action_layer.h" -#include "mousekey.h" - -#define QWERTY 0 // Base qerty -#define SYMB 1// Symbol layer -#define MOUSE 2// - - - - -/* Macros */ -enum { - NONE = 0, - // Diagonal mouse movement - A_MUL, - A_MUR, - A_MDL, - A_MDR, -}; - - -// Borrowing very heavily from -// https://github.com/alvicstep/tmk_keyboard -/**************************************************************************************************** -* -* Keymap: Default Layer in Qwerty -* -* ,-------------------------------------------------------------------------------------------------------------------. -* | Esc | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | | bOOT | -* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| -* | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ | -* |--------+------+------+------+------+------| +------+------+------+------+------+--------| -* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* |MouseFN1| A | S | D | F | G | | H | J | K | L | ;: | '" | -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | -* `--------+------+------+------+------+------- `------+------+------+------+------+--------' -* | `~ | ESC |MOUSE1|MOUSE2| | [{ | ]} | ESC | GUI | -* `---------------------------' `---------------------------' -* ,-------------. ,-------------. -* | Ctrl | Alt | | Gui | Ctrl | -* ,------|------|------| |------+------+------. -* | | | Home | | PgUp | | | -* | BkSp | Del |------| |------|Return| Space| -* | | | End | | PgDn | | | -* `--------------------' `--------------------' -*/ - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[QWERTY] = KEYMAP( - KC_ESC, KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8, - KC_EQL, KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , - KC_TAB, KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , - KC_FN1 ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , - KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , - KC_GRV ,KC_ESC, KC_BTN1,KC_BTN2, - KC_LCTL,KC_LALT, - KC_HOME, - KC_BSPC,KC_DEL ,KC_FN0 , - KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_FN0 ,KC_FN1 ,KC_FN2, KC_NO, RESET, - KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, - KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, - KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, - KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT, - KC_LBRC,KC_RBRC, KC_ESC, KC_RGUI, - KC_RGUI,KC_RCTL, - KC_PGUP, - KC_PGDN,KC_ENTER ,KC_SPC - ), -[SYMB] = KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0, KC_2, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS - ), -/* Keymap: Movement and function layer -* -* ,-------------------------------------------------------------------------------------------------------------------. -* | Caps | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | Tada | bOOT | -* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| -* | =+ | ! | @ | # | $ | % | | ^ | & | * | ( | ) |MS Fast | -* |--------+------+------+------+------+------| +------+------+------+------+------+--------| -* | Tab | | | Up | |PgUp | | MwU |MS_UL | MS_U |MS_UR | | Ms Norm| -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* |MouseFN1| C^A | Left | Down |Right | C^E | | | MS_L |Mouse1| MS_R | |MS Slow | -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* | | GuiZ | GUI X| GUI C| GUI_V|PgDown| | MWD | MDown|MS Dwn|MS_DR | ? | | -* `--------+------+------+------+------+------- `------+------+------+------+------+--------' -* | `~ | ESC | < | > | | { | } | ESC | | -* `---------------------------' `---------------------------' -* ,-------------. ,-------------. -* | Ctrl | Alt | | Gui | Ctrl | -* ,------|------|------| |------+------+------. -* | | | Home | | PgUp | | | -* | BkSp | Del |------| |------|Mouse1|Mouse2| -* | | | End | | PgDn |LClick|Rclick| -* `--------------------' `--------------------' -*/ - - -[MOUSE] = KEYMAP( - KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_EXLM ,KC_AT, KC_HASH, KC_DLR ,KC_PERC , - KC_TRNS, KC_NO, KC_NO, KC_UP, KC_NO, KC_PGUP, - KC_FN1, LCTL(KC_A),KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), - KC_TRNS, LGUI(KC_Z),LGUI(KC_X),LGUI(KC_C),LGUI(KC_V),KC_PGDN, - KC_TRNS, KC_TRNS, KC_LABK, KC_RABK, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0,RESET, - KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_ACL2, - KC_WH_U, M(A_MUL), KC_MS_U, M(A_MUR), KC_NO, KC_ACL1, - KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_ACL0, - KC_WH_D, M(A_MDL), KC_MS_D, M(A_MDR), KC_TRNS, KC_TRNS, - KC_LCBR, KC_RCBR, KC_ESC, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_BTN1, KC_BTN2 - ), - - -}; - -const uint16_t PROGMEM fn_actions[] = { - [0] = ACTION_LAYER_TAP_TOGGLE(MOUSE) , // FN1 - Momentary Layer 1 (Symbols) - [1] = ACTION_LAYER_TOGGLE(MOUSE) , // FN1 - Momentary Layer 1 (Symbols) - [2] = ACTION_LAYER_TAP_TOGGLE(SYMB) , // FN1 - Momentary Layer 1 (Symbols) - - -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - - // from algernon's ErgoDox EZ layout, - case A_MUL: - if (record->event.pressed) { - mousekey_on(KC_MS_UP); - mousekey_on(KC_MS_LEFT); - } else { - mousekey_off(KC_MS_UP); - mousekey_off(KC_MS_LEFT); - } - mousekey_send(); - break; - - case A_MUR: - if (record->event.pressed) { - mousekey_on(KC_MS_UP); - mousekey_on(KC_MS_RIGHT); - } else { - mousekey_off(KC_MS_UP); - mousekey_off(KC_MS_RIGHT); - } - mousekey_send(); - break; - - case A_MDL: - if (record->event.pressed) { - mousekey_on(KC_MS_DOWN); - mousekey_on(KC_MS_LEFT); - } else { - mousekey_off(KC_MS_DOWN); - mousekey_off(KC_MS_LEFT); - } - mousekey_send(); - break; - - case A_MDR: - if (record->event.pressed) { - mousekey_on(KC_MS_DOWN); - mousekey_on(KC_MS_RIGHT); - } else { - mousekey_off(KC_MS_DOWN); - mousekey_off(KC_MS_RIGHT); - } - mousekey_send(); - break; - } - return MACRO_NONE; -}; - - -void matrix_init_user(void) { - - -} - -void matrix_scan_user(void) { - int8_t layer = biton32(layer_state); - - switch (layer) { - case 1: - all_led_off(); - break; - case 2: - if (!(host_keyboard_leds() & (1 << USB_LED_CAPS_LOCK))) { - all_led_off(); - caps_lock_led_on(); - } - break; - case 0: - all_led_off(); - num_lock_led_on(); - break; - default: - break; - } - -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - -void led_set_user(uint8_t usb_led) { - -} diff --git a/keyboards/kinesis/keymaps/programmer/readme.md b/keyboards/kinesis/keymaps/programmer/readme.md deleted file mode 100644 index 76356a687..000000000 --- a/keyboards/kinesis/keymaps/programmer/readme.md +++ /dev/null @@ -1,2 +0,0 @@ -# a programmer friendly keymap for the kinesis-advantage -# not really baked yet. -- cgit v1.2.3-70-g09d2 From ef2ebeb3cace7f2555ccf655f3a7bb7c9bb77b76 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 10:45:23 -0800 Subject: Remove KC_ prefix from KEYMAP macro to match other keyboards --- keyboards/whitefox/keymaps/default/keymap.c | 20 +++++++++---------- keyboards/whitefox/keymaps/matt3o/keymap.c | 30 ++++++++++++++--------------- keyboards/whitefox/whitefox.h | 20 +++++++++---------- 3 files changed, 35 insertions(+), 35 deletions(-) diff --git a/keyboards/whitefox/keymaps/default/keymap.c b/keyboards/whitefox/keymaps/default/keymap.c index 426b226a0..714f90659 100644 --- a/keyboards/whitefox/keymaps/default/keymap.c +++ b/keyboards/whitefox/keymaps/default/keymap.c @@ -31,18 +31,18 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------------------------------------------------' */ [0] = KEYMAP( \ - ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, INS, \ - TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ - CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ - LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ - LCTL,LGUI,LALT, SPC, RALT,FN0, RCTL, LEFT,DOWN,RGHT \ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSLS,KC_GRV, KC_INS, \ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL, \ + KC_CAPS,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,\ + KC_LSFT,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,\ + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_FN0, KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT \ ), [1] = KEYMAP( \ - TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,MUTE,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS, TRNS,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ - TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,KC_TRNS,KC_MUTE,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SLCK,KC_PAUS,KC_TRNS, KC_TRNS,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_VOLU,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_PGUP,KC_VOLD,\ + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END \ ), }; diff --git a/keyboards/whitefox/keymaps/matt3o/keymap.c b/keyboards/whitefox/keymaps/matt3o/keymap.c index ecadcd284..9321553bf 100644 --- a/keyboards/whitefox/keymaps/matt3o/keymap.c +++ b/keyboards/whitefox/keymaps/matt3o/keymap.c @@ -31,25 +31,25 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------------------------------------------------' */ [0] = KEYMAP( \ - ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, MUTE,\ - TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ - FN0, A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ - LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ - LCTL,LGUI,LALT, SPC, RALT,FN1, RCTL, LEFT,DOWN,RGHT \ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSLS,KC_GRV, KC_MUTE,\ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL, \ + KC_FN0, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,\ + KC_LSFT,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,\ + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_FN1, KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT \ ), [1] = KEYMAP( \ - TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,TRNS,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,DEL , INS ,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ - TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,KC_TRNS,KC_TRNS,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_DEL , KC_INS ,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_VOLU,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_PGUP,KC_VOLD,\ + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END \ ), [2] = KEYMAP( \ - SLEP,P1, P2, P3, P4, P5, P6, P7, P8, P9, P0, TRNS,TRNS,TRNS,TRNS,FN2, \ - TRNS,TRNS,FN5 ,FN6 ,TRNS,FN7 ,TRNS,TRNS,TRNS,TRNS,PSCR,TRNS,TRNS,TRNS, FN3, \ - CAPS,TRNS,TRNS,TRNS,FN4 ,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,\ - TRNS,TRNS,TRNS,TRNS,CALC,TRNS,TRNS,TRNS,MAIL,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,\ - TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS \ + KC_SLEP,KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_FN2, \ + KC_TRNS,KC_TRNS,KC_FN5 ,KC_FN6 ,KC_TRNS,KC_FN7 ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_TRNS,KC_TRNS,KC_TRNS, KC_FN3, \ + KC_CAPS,KC_TRNS,KC_TRNS,KC_TRNS,KC_FN4 ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_CALC,KC_TRNS,KC_TRNS,KC_TRNS,KC_MAIL,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,\ + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS \ ), }; diff --git a/keyboards/whitefox/whitefox.h b/keyboards/whitefox/whitefox.h index 0ffcdca01..3b3c6bd21 100644 --- a/keyboards/whitefox/whitefox.h +++ b/keyboards/whitefox/whitefox.h @@ -19,7 +19,7 @@ along with this program. If not, see . #include "quantum.h" -/* WhiteFox +/* WhiteFox * ,---------------------------------------------------------------. * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| * |---------------------------------------------------------------| @@ -40,15 +40,15 @@ along with this program. If not, see . K15, K25, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \ K76, K86, K07, K17, K27, K37, K47, K57, K67, K77 \ ) { \ - { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07 }, \ - { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17 }, \ - { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27 }, \ - { KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37 }, \ - { KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_##K46, KC_##K47 }, \ - { KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56, KC_##K57 }, \ - { KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_##K67 }, \ - { KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74, KC_##K75, KC_##K76, KC_##K77 }, \ - { KC_##K80, KC_##K81, KC_##K82, KC_##K83, KC_##K84, KC_##K85, KC_##K86, KC_NO } \ + { K00, K01, K02, K03, K04, K05, K06, K07 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57 }, \ + { K60, K61, K62, K63, K64, K65, K66, K67 }, \ + { K70, K71, K72, K73, K74, K75, K76, K77 }, \ + { K80, K81, K82, K83, K84, K85, K86, KC_NO } \ } #endif -- cgit v1.2.3-70-g09d2 From a702f4631ebfb8f2ae92c8da0cc9a49d899bd920 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 10:54:36 -0800 Subject: Increase tick frequency for responsiveness Based off of PR #866 which did the same thing for the infinity60 --- keyboards/whitefox/chconf.h | 2 +- keyboards/whitefox/matrix.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/whitefox/chconf.h b/keyboards/whitefox/chconf.h index 43c845739..d9114ec85 100644 --- a/keyboards/whitefox/chconf.h +++ b/keyboards/whitefox/chconf.h @@ -48,7 +48,7 @@ * @details Frequency of the system timer that drives the system ticks. This * setting also defines the system tick time unit. */ -#define CH_CFG_ST_FREQUENCY 1000 +#define CH_CFG_ST_FREQUENCY 100000 /** * @brief Time delta constant for the tick-less mode. diff --git a/keyboards/whitefox/matrix.c b/keyboards/whitefox/matrix.c index ce35bca28..d69b82d61 100644 --- a/keyboards/whitefox/matrix.c +++ b/keyboards/whitefox/matrix.c @@ -69,7 +69,7 @@ uint8_t matrix_scan(void) case 8: palSetPad(GPIOC, 11); break; } - wait_us(1); // need wait to settle pin state + wait_us(10); // need wait to settle pin state // read col data: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } data = ((palReadPort(GPIOC) & 0x06UL) << 5) | -- cgit v1.2.3-70-g09d2 From 49a00a535f6106f37e5ebd272238e018832803a0 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 11:15:10 -0800 Subject: Update clock frequencies to match the infinity ergodox --- keyboards/whitefox/mcuconf.h | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/keyboards/whitefox/mcuconf.h b/keyboards/whitefox/mcuconf.h index 68c29cf68..28f3c6cda 100644 --- a/keyboards/whitefox/mcuconf.h +++ b/keyboards/whitefox/mcuconf.h @@ -29,21 +29,10 @@ /* PEE mode - 48MHz system clock driven by external crystal. */ #define KINETIS_MCG_MODE KINETIS_MCG_MODE_PEE -#define KINETIS_PLLCLK_FREQUENCY 96000000UL -#define KINETIS_SYSCLK_FREQUENCY 48000000UL - -#if 0 -/* FEI mode - 48 MHz with internal 32.768 kHz crystal */ -#define KINETIS_MCG_MODE KINETIS_MCG_MODE_FEI -#define KINETIS_MCG_FLL_DMX32 1 /* Fine-tune for 32.768 kHz */ -#define KINETIS_MCG_FLL_DRS 1 /* 1464x FLL factor */ -#define KINETIS_SYSCLK_FREQUENCY 47972352UL /* 32.768 kHz * 1464 (~48 MHz) */ -#define KINETIS_CLKDIV1_OUTDIV1 1 -#define KINETIS_CLKDIV1_OUTDIV2 1 -#define KINETIS_CLKDIV1_OUTDIV4 2 -#define KINETIS_BUSCLK_FREQUENCY KINETIS_SYSCLK_FREQUENCY -#define KINETIS_FLASHCLK_FREQUENCY KINETIS_SYSCLK_FREQUENCY/2 -#endif +#define KINETIS_PLLCLK_FREQUENCY 72000000UL +#define KINETIS_SYSCLK_FREQUENCY 72000000UL +#define KINETIS_BUSCLK_FREQUENCY 36000000UL +#define KINETIS_FLASHCLK_FREQUENCY 24000000UL /* * SERIAL driver system settings. -- cgit v1.2.3-70-g09d2 From 0b38204e62446a7ce2eaf60709cbf7e426a200be Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 11:57:44 -0800 Subject: Fix mismatched indentation --- keyboards/whitefox/keymaps/matt3o/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/whitefox/keymaps/matt3o/keymap.c b/keyboards/whitefox/keymaps/matt3o/keymap.c index 9321553bf..4455886a5 100644 --- a/keyboards/whitefox/keymaps/matt3o/keymap.c +++ b/keyboards/whitefox/keymaps/matt3o/keymap.c @@ -72,7 +72,7 @@ const uint16_t fn_actions[] = { /* custom action function */ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { - /* + /* (void)opt; switch(id) { case ACTION_LEDS_ALL: -- cgit v1.2.3-70-g09d2 From a55c5e3ea353e3d1a73550bcc898bbc4f023c42e Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Tue, 10 Jan 2017 03:00:36 -0800 Subject: Wait for two ticks rather than 1 --- keyboards/whitefox/matrix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/whitefox/matrix.c b/keyboards/whitefox/matrix.c index d69b82d61..9202ab023 100644 --- a/keyboards/whitefox/matrix.c +++ b/keyboards/whitefox/matrix.c @@ -69,7 +69,7 @@ uint8_t matrix_scan(void) case 8: palSetPad(GPIOC, 11); break; } - wait_us(10); // need wait to settle pin state + wait_us(20); // need wait to settle pin state // read col data: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } data = ((palReadPort(GPIOC) & 0x06UL) << 5) | -- cgit v1.2.3-70-g09d2 From db1aec159d37748de7413816a377dc5b63111c71 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 10 Jan 2017 19:20:25 +0100 Subject: Added layer images to deadcyclo layout readme --- .../deadcyclo/images/deadcyclo-base-layout.png | Bin 0 -> 79741 bytes .../deadcyclo/images/deadcyclo-layer-1-symbols.png | Bin 0 -> 55349 bytes .../images/deadcyclo-layer-2-media-and-mouse.png | Bin 0 -> 50926 bytes .../images/deadcyclo-layer-3-navigation.png | Bin 0 -> 43551 bytes keyboards/ergodox/keymaps/deadcyclo/readme.md | 26 +++++++++++++++++++++ 5 files changed, 26 insertions(+) create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png new file mode 100644 index 000000000..4208c5189 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png new file mode 100644 index 000000000..ccda70e39 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png new file mode 100644 index 000000000..481e63e32 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png new file mode 100644 index 000000000..9ebba6734 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 915507440..07e8e62a3 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -5,6 +5,32 @@ some common keys might be missing, as this layout is intented to be used on *nix with their system. The layout is geared towards avoiding using the rat (mouse for those of you who are unfamiliar with tiling window managers) as much as possibly. +# Layouts + +All layer images created using [keyboard-layout-editor](http://www.keyboard-layout-editor.com/) + +## Base layer + +[![Base layer](images/deadcyclo-base-layout.png)](http://www.keyboard-layout-editor.com/#/gists/0321b18620180a3e46c498206eb65366) + +## Layer 1 - Symbols + +[![Layer 1 - Symbols](images/deadcyclo-layer-1-symbols.png)](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) + +## Layer 2 - Media and Mouse + +[![Layer 2 - Media and Mouse](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/824759486e378bcec30784309a7e5731) + +## Layer 3 - Navigation + +[![Layer 3 - Navigation](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) + # Changelog - 02.01.2017 Added delete key on second layer +- 10.01.2017 Added layer images to readme + +# TODO + +- Add unicode support (direct input and indirect? see algernon layout for examples) +- Add descriptions below each layer image of any special functions/keys -- cgit v1.2.3-70-g09d2 From c4fca8b6bc06178ad578dbc4be67d579a3f4d59a Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 10 Jan 2017 19:23:59 +0100 Subject: Fixed incorrect layer image in deadcyclo readme --- keyboards/ergodox/keymaps/deadcyclo/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 07e8e62a3..809dd6eb5 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -23,7 +23,7 @@ All layer images created using [keyboard-layout-editor](http://www.keyboard-layo ## Layer 3 - Navigation -[![Layer 3 - Navigation](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) +[![Layer 3 - Navigation](images/deadcyclo-layer-3-navigation.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) # Changelog -- cgit v1.2.3-70-g09d2 From 3a453a03ed5f029bb9cf23955e87789245d39a22 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:00:34 +0100 Subject: Atreus62 first semi-final draft --- keyboards/atreus62/keymaps/mneme/Makefile | 6 + keyboards/atreus62/keymaps/mneme/README.md | 2 + keyboards/atreus62/keymaps/mneme/config.h | 7 + keyboards/atreus62/keymaps/mneme/keymap.c | 316 +++++++++++++++++++++++++++++ keyboards/atreus62/keymaps/mneme/unicode | 114 +++++++++++ 5 files changed, 445 insertions(+) create mode 100644 keyboards/atreus62/keymaps/mneme/Makefile create mode 100644 keyboards/atreus62/keymaps/mneme/README.md create mode 100644 keyboards/atreus62/keymaps/mneme/config.h create mode 100644 keyboards/atreus62/keymaps/mneme/keymap.c create mode 100644 keyboards/atreus62/keymaps/mneme/unicode diff --git a/keyboards/atreus62/keymaps/mneme/Makefile b/keyboards/atreus62/keymaps/mneme/Makefile new file mode 100644 index 000000000..f20750dbc --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/Makefile @@ -0,0 +1,6 @@ +TAP_DANCE_ENABLE = yes +BOOTMAGIC_ENABLE = no +COMMAND_ENABLE = no +SLEEP_LED_ENABLE = no +UNICODE_ENABLE = yes +NKRO_ENABLE = true diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md new file mode 100644 index 000000000..54f5e21ab --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -0,0 +1,2 @@ +Keymap that owes just about everything to Algernon. +Check out his keymap for the Ergodox. It's pretty damned amazing. diff --git a/keyboards/atreus62/keymaps/mneme/config.h b/keyboards/atreus62/keymaps/mneme/config.h new file mode 100644 index 000000000..2c2a08c05 --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/config.h @@ -0,0 +1,7 @@ +#define ONESHOT_TIMEOUT 3000 +#define TAPPING_TERM 200 +#define PREVENT_STUCK_MODIFIERS + +#define LEADER_TIMEOUT 1000 + +#include "../../config.h" diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c new file mode 100644 index 000000000..8c3f8aa43 --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -0,0 +1,316 @@ +#include +#include "atreus62.h" +#include "led.h" +#include "action_layer.h" +#include "action_util.h" + +//avrdude -p atmega32u4 -P /dev/tty.usbmodem1411 -c avr109 -U flash:w:atreus63_default.hex +/* + *WINDOWS SWEDISH + */ +#define KN_HALF KC_GRV // 1/2 +#define KN_PLUS KC_MINS // + +#define KN_ACUT KC_EQL // ´ +#define KN_AO KC_LBRC // Å +#define KN_UMLA KC_RBRC // ¨ +#define KN_OE KC_SCLN // Ö +#define KN_AE KC_QUOT // Ä +#define KN_QUOT KC_NUHS // ' +#define KN_LABK KC_NUBS // < +#define KN_MINS KC_SLSH // - +#define KN_EXLM LSFT(KC_1) // ! +#define KN_DQT LSFT(KC_2) // " +#define KN_AT RALT(KC_2) // @ +#define KN_HASH LSFT(KC_3) // # +#define KN_DLR RALT(KC_4) // $ +#define KN_PERC LSFT(KC_5) // % +#define KN_AMPR LSFT(KC_6) // & +#define KN_SLSH LSFT(KC_7) // / +#define KN_LPRN LSFT(KC_8) // ( +#define KN_RPRN LSFT(KC_9) // ) +#define KN_EQL LSFT(KC_0) // = +#define KN_UNDS LSFT(KN_MINS) // _ +#define KN_QUES LSFT(KN_PLUS) // ? +#define KN_GRAV LSFT(KN_ACUT) // ` +#define KN_LCBR RALT(KC_7) // { +#define KN_RCBR RALT(KC_0) // } +#define KN_LBRC RALT(KC_8) // [ +#define KN_RBRC RALT(KC_9) // ] +#define KN_RABK LSFT(KN_LABK) // < +#define KN_COLN LSFT(KC_DOT) // : +#define KN_SCLN LSFT(KC_COMM) // : +#define KN_PIPE RALT(KN_LABK) // | +#define KN_QUES LSFT(KN_PLUS) // ? +#define KN_CIRC LSFT(KN_UMLA) // ^ +#define KN_ASTR LSFT(KN_QUOT) // * +#define KN_TILD RALT(KN_UMLA) // ~ +#define KN_BSLS RALT(KN_PLUS) // + +#define OSM_LCTL OSM(MOD_LCTL) +#define OSM_LALT OSM(MOD_LALT) +#define OSM_LSFT OSM(MOD_LSFT) + +#define KC_HYP LSFT(LALT(LCTL(KC_LGUI))) + +#define KC_COPY LCTL(KC_C) +#define KC_PASTE LCTL(KC_V) +#define KC_UNDO LCTL(KC_Z) +#define KC_REDO LCTL(LSFT(KC_Z)) + +// Layers +enum { + BASE = 0, + NAV, + SYM +}; + +//Macros +enum { + KF_1 = 0, // 1, F1 + KF_2, // ... + KF_3, + KF_4, + KF_5, + KF_6, + KF_7, + KF_8, + KF_9, + KF_10, + KF_11, + KF_12 +}; + +// Tapdance +enum { + TD_FUN = 0, + TD_EQ +}; + +//Custom keycodes +enum { + PLACEHOLDER = SAFE_RANGE +}; + +//State and timers +uint16_t kf_timers[12]; + + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [BASE] = { + + { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, + { KC_HYP ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, + { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, + { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, + { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_TAB ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } + + }, + [NAV] = { + + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_HOME ,KC_UP ,KC_END ,KC_PGUP ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_PGDN ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F11 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } + + }, + [SYM] = { + + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,TD(TD_EQ) ,KC_NO ,TD(TD_FUN) ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KN_LABK ,KN_RABK ,KN_LCBR ,KN_RCBR ,KN_PLUS ,KC_NO ,KN_AT ,KN_DQT ,KN_QUOT ,KN_GRAV ,KN_SLSH ,KC_TRNS }, + { KC_TRNS ,KN_EXLM ,KN_EQL ,KN_LPRN ,KN_RPRN ,KN_MINS ,KC_NO ,KN_UNDS ,KN_SCLN ,KN_COLN ,KN_AMPR ,KN_PIPE ,KC_TRNS }, + { KC_TRNS ,KN_DLR ,KN_PERC ,KN_LBRC ,KN_RBRC ,KN_ASTR ,KC_TRNS ,KN_HASH ,KC_COMM ,KC_DOT ,KN_QUES ,KN_BSLS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS } + + } +}; + +#define TAP_ONCE(code) \ + register_code (code); \ + unregister_code (code) + +static void m_tapn (uint8_t code, ...) { + uint8_t kc = code; + va_list ap; + + va_start(ap, code); + do { + register_code(kc); + unregister_code(kc); + wait_ms(50); + kc = va_arg(ap, int); + } while (kc != 0); + va_end(ap); +} + +static void m_handle_kf (keyrecord_t *record, uint8_t id) { + uint8_t code = id - KF_1; + + if (record->event.pressed) { + kf_timers[code] = timer_read (); + } else { + uint8_t kc_base; + uint8_t long_press = (kf_timers[code] && timer_elapsed (kf_timers[code]) > TAPPING_TERM); + + kf_timers[code] = 0; + + switch(id){ + case KF_1 ... KF_10: + if (long_press) { + // Long press + kc_base = KC_F1; + } else { + kc_base = KC_1; + } + code += kc_base; + break; + case KF_11: + code = long_press ? KC_F11 : KC_ESC; + break; + case KF_12: + code = long_press ? KC_F12 : KC_PLUS; + break; + } + register_code (code); + unregister_code (code); + } +} + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch (id) { + case KF_1 ... KF_12: + m_handle_kf(record, id); + break; + } + return MACRO_NONE; +}; + +// Custom keycodes +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + bool queue = true; + + //Cancle one-shot mods. + switch (keycode) { + case KC_ESC: + if (record->event.pressed && get_oneshot_mods() && !has_oneshot_mods_timed_out()) { + clear_oneshot_mods(); + queue = false; + } + break; + } + return queue; +} + +// TAP DANCE SETTINGS +void dance_eq (qk_tap_dance_state_t *state, void *user_data) { + switch (state->count) { + case 1: // === + register_code(KC_LSHIFT); + m_tapn(KC_0, KC_0, KC_0, 0); + unregister_code(KC_LSHIFT); + break; + case 2: + register_code(KC_LSHIFT); + m_tapn(KC_1, KC_0, KC_0, 0); + unregister_code(KC_LSHIFT); + break; + default: + reset_tap_dance(state); + } +} + +void dance_fun (qk_tap_dance_state_t *state, void *user_data) { + switch (state->count) { + case 1: // => + register_code(KC_LSHIFT); + m_tapn(KC_0, KN_LABK, 0); + unregister_code(KC_LSHIFT); + break; + case 2: // () => {} + register_code(KC_LSHIFT); + m_tapn(KC_8, KC_9, KC_SPC, KC_0, KN_LABK, KC_SPC, 0); + unregister_code(KC_LSHIFT); + register_code(KC_RALT); + m_tapn(KC_7, 0); + unregister_code(KC_RALT); + TAP_ONCE(KC_ENT); + break; + default: + reset_tap_dance(state); + } +} + +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_FUN] = ACTION_TAP_DANCE_FN (dance_fun) + ,[TD_EQ] = ACTION_TAP_DANCE_FN (dance_eq) +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + set_unicode_input_mode(UC_WINC); +}; + +LEADER_EXTERNS(); +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + LEADER_DICTIONARY() { + leading = false; + leader_end(); + SEQ_ONE_KEY(KC_L){ + register_code(KC_RGUI); + TAP_ONCE(KC_L); + unregister_code(KC_RGUI); + }; // Todo + + SEQ_TWO_KEYS(KC_F, KC_S){ + register_code(KC_LCTRL); + TAP_ONCE(KC_S); + unregister_code(KC_LCTRL); + }; // Todo + + SEQ_TWO_KEYS(KC_B, KC_D){ + register_code(KC_LCTRL); + TAP_ONCE(KC_W); + unregister_code(KC_LCTRL); + }; // Todo + + SEQ_ONE_KEY(KC_SLSH){ + register_code(KC_LCTRL); + TAP_ONCE(KC_F); + unregister_code(KC_LCTRL); + } + + SEQ_TWO_KEYS (KC_S, KC_S) { + // ¯\_(ツ)_/¯ + unicode_input_start(); register_hex(0xaf); unicode_input_finish(); + register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0xaf); unicode_input_finish(); + } + + SEQ_TWO_KEYS (KC_S, KC_F) { + // 凸(ツ)凸 + unicode_input_start(); register_hex(0x51F8); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x51F8); unicode_input_finish(); + } + + SEQ_TWO_KEYS (KC_S, KC_L) { + // λ + unicode_input_start(); + register_hex(0x03bb); + unicode_input_finish(); + } + }; +}; diff --git a/keyboards/atreus62/keymaps/mneme/unicode b/keyboards/atreus62/keymaps/mneme/unicode new file mode 100644 index 000000000..b3f62b6d3 --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/unicode @@ -0,0 +1,114 @@ +Todo +☐ 2610 Todo +☑ 2611 Done +☒ 2612 Failed + +Operator +× 00D7 Multiplication +÷ 00F7 Division +≤ 2264 LessEqual +≥ 2265 MoreEqual +± 00B1 Plusminus + +Math +∏ 220F Product +∑ 2211 Sum +≈ 2248 Almost +≡ 2261 Equivalent +∞ 221E Infinity +‰ 2030 Mille + +Set +⊂ 2282 Subset +⊃ 2283 sUperset +∩ 2229 Intersextion +∪ 222A Union +∈ 2208 Element +∉ 2209 Notelement +∍ 220D Contains +∌ 220C doesNotcontain + +Logic +¬ 00AC Not +∧ 2227 And +∨ 2228 Or +∃ 2203 Exists +∄ 2204 Notexists + +Greek +µ 00B5 Micro +λ 03BB Lamda +Ω 2126 Omega +α 03B1 Alpha +β 03B2 Beta +γ 03B3 Gamma +π 03C0 Pi +δ 03B4 Delta + +Other +☁ 2601 Cloud +☼ 263C Sun +☂ 2602 Rain +☠ 2620 Skull +♺ 267A Recycle +👍1F44D thumbsUp +👎1F44E thumbsDown +💩 1F4A9 Poo + + +//Todo +SEQ_THREE_KEYS(KC_U, KC_G, KC_T){m_unicode(0x2610);}; // Todo +SEQ_THREE_KEYS(KC_U, KC_G, KC_D){m_unicode(0x2611);}; // Done +SEQ_THREE_KEYS(KC_U, KC_G, KC_F){m_unicode(0x2612);}; // Failed + +//Operator +SEQ_THREE_KEYS(KC_U, KC_O, KC_M){m_unicode(0x00D7);}; // Multiplication +SEQ_THREE_KEYS(KC_U, KC_O, KC_D){m_unicode(0x00F7);}; // Division +SEQ_THREE_KEYS(KC_U, KC_O, KC_L){m_unicode(0x2264);}; // LessEqual +SEQ_THREE_KEYS(KC_U, KC_O, KC_M){m_unicode(0x2265);}; // MoreEqual +SEQ_THREE_KEYS(KC_U, KC_O, KC_P){m_unicode(0x00B1);}; // Plusminus + +//Math +SEQ_THREE_KEYS(KC_U, KC_M, KC_P){m_unicode(0x220F);}; // Product +SEQ_THREE_KEYS(KC_U, KC_M, KC_S){m_unicode(0x2211);}; // Sum +SEQ_THREE_KEYS(KC_U, KC_M, KC_A){m_unicode(0x2248);}; // Almost +SEQ_THREE_KEYS(KC_U, KC_M, KC_E){m_unicode(0x2261);}; // Equivalent +SEQ_THREE_KEYS(KC_U, KC_M, KC_I){m_unicode(0x221E);}; // Infinity +SEQ_THREE_KEYS(KC_U, KC_M, KC_M){m_unicode(0x2030);}; // Mille + +//Set +SEQ_THREE_KEYS(KC_U, KC_S, KC_S){m_unicode(0x2282);}; Subset +SEQ_THREE_KEYS(KC_U, KC_S, KC_P){m_unicode(0x2283);}; suPerset +SEQ_THREE_KEYS(KC_U, KC_S, KC_I){m_unicode(0x2229);}; Intersection +SEQ_THREE_KEYS(KC_U, KC_S, KC_U){m_unicode(0x222A);}; Union +SEQ_THREE_KEYS(KC_U, KC_S, KC_E){m_unicode(0x2208);}; Element +SEQ_THREE_KEYS(KC_U, KC_S, KC_N){m_unicode(0x2209);}; Notelement +SEQ_THREE_KEYS(KC_U, KC_S, KC_C){m_unicode(0x220D);}; Contains +SEQ_THREE_KEYS(KC_U, KC_S, KC_D){m_unicode(0x220C);}; doesNotcontain + +//Logic +SEQ_THREE_KEYS(KC_U, KC_L, KC_N){m_unicode(0x00AC);}; // Not +SEQ_THREE_KEYS(KC_U, KC_L, KC_A){m_unicode(0x2227);}; // And +SEQ_THREE_KEYS(KC_U, KC_L, KC_O){m_unicode(0x2228);}; // Or +SEQ_THREE_KEYS(KC_U, KC_L, KC_E){m_unicode(0x2203);}; // Exists +SEQ_THREE_KEYS(KC_U, KC_L, KC_N){m_unicode(0x2204);}; // Notexists + +//Greek +SEQ_THREE_KEYS(KC_U, KC_G, KC_M){m_unicode(0x00B5);}; // Micro +SEQ_THREE_KEYS(KC_U, KC_G, KC_L){m_unicode(0x03BB);}; // Lamda +SEQ_THREE_KEYS(KC_U, KC_G, KC_O){m_unicode(0x2126);}; // Omega +SEQ_THREE_KEYS(KC_U, KC_G, KC_A){m_unicode(0x03B1);}; // Alpha +SEQ_THREE_KEYS(KC_U, KC_G, KC_B){m_unicode(0x03B2);}; // Beta +SEQ_THREE_KEYS(KC_U, KC_G, KC_G){m_unicode(0x03B3);}; // Gamma +SEQ_THREE_KEYS(KC_U, KC_G, KC_P){m_unicode(0x03C0);}; // Pi +SEQ_THREE_KEYS(KC_U, KC_G, KC_D){m_unicode(0x03B4);}; // Delta + +//Zother +SEQ_THREE_KEYS(KC_U, KC_Z, KC_C){m_unicode(0x2601);}; // Cloud +SEQ_THREE_KEYS(KC_U, KC_Z, KC_S){m_unicode(0x263C);}; // Sun +SEQ_THREE_KEYS(KC_U, KC_Z, KC_R){m_unicode(0x2602);}; // Rain +SEQ_THREE_KEYS(KC_U, KC_Z, KC_K){m_unicode(0x2620);}; // sKull +SEQ_THREE_KEYS(KC_U, KC_Z, KC_R){m_unicode(0x267A);}; // rEcycle +SEQ_THREE_KEYS(KC_U, KC_Z, KC_U){m_unicode(0x1F44D);}; // thumbsUp +SEQ_THREE_KEYS(KC_U, KC_Z, KC_D){m_unicode(0x1F44E);}; // thumbsDown +SEQ_THREE_KEYS(KC_U, KC_Z, KC_P){m_unicode(0x1F4A9);}; // Poo -- cgit v1.2.3-70-g09d2 From e491f5a4d0465c1499e14183358730cf73d0ceaf Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:41:07 +0100 Subject: Readme + minor change to make it match reality. --- keyboards/atreus62/keymaps/mneme/README.md | 56 +++++++++++++++++++++++++- keyboards/atreus62/keymaps/mneme/img/base.png | Bin 0 -> 458762 bytes keyboards/atreus62/keymaps/mneme/img/fun.png | Bin 0 -> 268634 bytes keyboards/atreus62/keymaps/mneme/img/sym.png | Bin 0 -> 433342 bytes keyboards/atreus62/keymaps/mneme/keymap.c | 18 +++------ 5 files changed, 60 insertions(+), 14 deletions(-) create mode 100644 keyboards/atreus62/keymaps/mneme/img/base.png create mode 100644 keyboards/atreus62/keymaps/mneme/img/fun.png create mode 100644 keyboards/atreus62/keymaps/mneme/img/sym.png diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 54f5e21ab..b4dc89625 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -1,2 +1,54 @@ -Keymap that owes just about everything to Algernon. -Check out his keymap for the Ergodox. It's pretty damned amazing. + + +Mnemes Swedish Bonaza +======================= + +My Layout in process, most of the code is shamelessly stolen from [algernons][algernon] excellent layout + + [algernon]: https://github.com/algernon/ergodox-layout + +It's for Windows (current work forces me to) and Swedish (matter of birth) so ymmw. + +## Table of Contents + +* [Layouts](#layouts) + - [Base layer](#base-layer) + - [Fun layer](#fun-layer) + - [Nav layer](#nav-layer) + - [LED states](#led-states) + +# Layouts + +## Base layer + +![Base layer](img/base.png) + + +* The number row doubles as a function row. Short presses produces numbers, long presses produces Fxx +* The `Shift`, `Alt`, and `Control` modifiers are one-shot. +* `Backspace` and `Enter` doubles as switches to the `sym` layer when held +* The `ESC` key also doubles as a one-shot cancel key. +* The **Lead** key is followed by a sequence of keys. + - `LEAD l` : `lgui+l`. + - `LEAD s l` : `λ`. + - `LEAD s s` : `¯\_(ツ)_/¯` + - `LEAD s f` : `凸(ツ)凸` + - `LEAD f s` : `ctrl+s` + - `LEAD b d` : `ctrl+w` + + +## Nav layer + +![Fun layer](img/fun.png) + +Basic navigation on the right hand and modifiers close +by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. + +## Sym layer + +![Sym layer](img/sym.png) + +Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. + +# License + GPL-3+ diff --git a/keyboards/atreus62/keymaps/mneme/img/base.png b/keyboards/atreus62/keymaps/mneme/img/base.png new file mode 100644 index 000000000..86907d544 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/base.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/fun.png b/keyboards/atreus62/keymaps/mneme/img/fun.png new file mode 100644 index 000000000..a58933d96 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/fun.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/sym.png b/keyboards/atreus62/keymaps/mneme/img/sym.png new file mode 100644 index 000000000..11b5bd4b0 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/sym.png differ diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 8c3f8aa43..56d637120 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -44,7 +44,7 @@ #define KN_CIRC LSFT(KN_UMLA) // ^ #define KN_ASTR LSFT(KN_QUOT) // * #define KN_TILD RALT(KN_UMLA) // ~ -#define KN_BSLS RALT(KN_PLUS) // +#define KN_BSLS RALT(KN_PLUS) // #define OSM_LCTL OSM(MOD_LCTL) #define OSM_LALT OSM(MOD_LALT) @@ -110,8 +110,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [NAV] = { { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_HOME ,KC_UP ,KC_END ,KC_PGUP ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_PGDN ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F11 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } @@ -281,19 +281,13 @@ void matrix_scan_user(void) { unregister_code(KC_LCTRL); }; // Todo - SEQ_ONE_KEY(KC_SLSH){ - register_code(KC_LCTRL); - TAP_ONCE(KC_F); - unregister_code(KC_LCTRL); - } - SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ unicode_input_start(); register_hex(0xaf); unicode_input_finish(); - register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); - register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); + register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0xaf); unicode_input_finish(); } @@ -302,7 +296,7 @@ void matrix_scan_user(void) { unicode_input_start(); register_hex(0x51F8); unicode_input_finish(); register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); - register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x51F8); unicode_input_finish(); } -- cgit v1.2.3-70-g09d2 From 1bef7bf45a2b05e755b17267aa08a66d1588134f Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:43:13 +0100 Subject: Link fix in readme. --- keyboards/atreus62/keymaps/mneme/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index b4dc89625..1461f6c52 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -13,8 +13,8 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym * [Layouts](#layouts) - [Base layer](#base-layer) - - [Fun layer](#fun-layer) - [Nav layer](#nav-layer) + - [Sym layer](#sym-layer) - [LED states](#led-states) # Layouts @@ -39,7 +39,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym ## Nav layer -![Fun layer](img/fun.png) +![Nav layer](img/fun.png) Basic navigation on the right hand and modifiers close by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. -- cgit v1.2.3-70-g09d2 From ed975f2454692fec28539a7014116beeb21b4c9e Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 00:14:42 +0100 Subject: Remove comments and change to correct KN_PLUS instead of KC_PLUS. --- keyboards/atreus62/keymaps/mneme/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 56d637120..eca452b77 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -170,7 +170,7 @@ static void m_handle_kf (keyrecord_t *record, uint8_t id) { code = long_press ? KC_F11 : KC_ESC; break; case KF_12: - code = long_press ? KC_F12 : KC_PLUS; + code = long_press ? KC_F12 : KN_PLUS; break; } register_code (code); @@ -267,19 +267,19 @@ void matrix_scan_user(void) { register_code(KC_RGUI); TAP_ONCE(KC_L); unregister_code(KC_RGUI); - }; // Todo + }; SEQ_TWO_KEYS(KC_F, KC_S){ register_code(KC_LCTRL); TAP_ONCE(KC_S); unregister_code(KC_LCTRL); - }; // Todo + }; SEQ_TWO_KEYS(KC_B, KC_D){ register_code(KC_LCTRL); TAP_ONCE(KC_W); unregister_code(KC_LCTRL); - }; // Todo + }; SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ -- cgit v1.2.3-70-g09d2 From 8459bb97c1e8bcb9ccce55a1ed849d373bd7706c Mon Sep 17 00:00:00 2001 From: Erez Zukerman Date: Wed, 11 Jan 2017 21:57:41 -0500 Subject: Adds SCMD and SCMD_T --- quantum/quantum_keycodes.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 5cd3c8e78..7466e185c 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -159,6 +159,7 @@ enum quantum_keycodes { #define MEH(kc) (kc | QK_LCTL | QK_LSFT | QK_LALT) #define LCAG(kc) (kc | QK_LCTL | QK_LALT | QK_LGUI) #define ALTG(kc) (kc | QK_RCTL | QK_RALT) +#define SCMD(kc) (kc | QK_LGUI | QK_LSFT) #define MOD_HYPR 0xf #define MOD_MEH 0x7 @@ -293,6 +294,7 @@ enum quantum_keycodes { #define MEH_T(kc) MT((MOD_LCTL | MOD_LSFT | MOD_LALT), kc) // Meh is a less hyper version of the Hyper key -- doesn't include Win or Cmd, so just alt+shift+ctrl #define LCAG_T(kc) MT((MOD_LCTL | MOD_LALT | MOD_LGUI), kc) // Left control alt and gui #define ALL_T(kc) MT((MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI), kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/ +#define SCMD_T(kc) MT((MOD_LGUI | MOD_LSFT), kc) // Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap #define KC_HYPR HYPR(KC_NO) -- cgit v1.2.3-70-g09d2 From 3717cf5864d6505e406b5eb75f315e6dc2392912 Mon Sep 17 00:00:00 2001 From: Erez Zukerman Date: Thu, 12 Jan 2017 07:38:07 -0500 Subject: A shot at aliasing --- quantum/quantum_keycodes.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 7466e185c..80cd1d41d 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -160,6 +160,7 @@ enum quantum_keycodes { #define LCAG(kc) (kc | QK_LCTL | QK_LALT | QK_LGUI) #define ALTG(kc) (kc | QK_RCTL | QK_RALT) #define SCMD(kc) (kc | QK_LGUI | QK_LSFT) +#define SWIN SCMD #define MOD_HYPR 0xf #define MOD_MEH 0x7 @@ -295,6 +296,7 @@ enum quantum_keycodes { #define LCAG_T(kc) MT((MOD_LCTL | MOD_LALT | MOD_LGUI), kc) // Left control alt and gui #define ALL_T(kc) MT((MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI), kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/ #define SCMD_T(kc) MT((MOD_LGUI | MOD_LSFT), kc) +#define SWIN_T SCMD_T // Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap #define KC_HYPR HYPR(KC_NO) -- cgit v1.2.3-70-g09d2 From b2419b31d3d4198192a1b5fb78b1c2e8ade0ce87 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 15:36:14 +0100 Subject: - Change docs to match keymap. - Switched around modifiers on the function layer to match muscle memory. - Added support for application switching. --- keyboards/atreus62/keymaps/mneme/README.md | 8 ++-- keyboards/atreus62/keymaps/mneme/img/fun.png | Bin 268634 -> 430634 bytes keyboards/atreus62/keymaps/mneme/keymap.c | 63 +++++++++++++++++++-------- 3 files changed, 50 insertions(+), 21 deletions(-) diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 1461f6c52..5bac545fc 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -33,8 +33,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym - `LEAD s l` : `λ`. - `LEAD s s` : `¯\_(ツ)_/¯` - `LEAD s f` : `凸(ツ)凸` - - `LEAD f s` : `ctrl+s` - - `LEAD b d` : `ctrl+w` + - `LEAD a *` : Application switching based on position in start menu. Very specific to my computer. ## Nav layer @@ -48,7 +47,10 @@ by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. ![Sym layer](img/sym.png) -Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. +* Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. + +- `eq` : Tapdance, produces `===` and `!==` +- `fun`: Tapdance, produces `=>` and `() => {\n` # License GPL-3+ diff --git a/keyboards/atreus62/keymaps/mneme/img/fun.png b/keyboards/atreus62/keymaps/mneme/img/fun.png index a58933d96..ec5a478c6 100644 Binary files a/keyboards/atreus62/keymaps/mneme/img/fun.png and b/keyboards/atreus62/keymaps/mneme/img/fun.png differ diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index eca452b77..7c1879982 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -4,7 +4,6 @@ #include "action_layer.h" #include "action_util.h" -//avrdude -p atmega32u4 -P /dev/tty.usbmodem1411 -c avr109 -U flash:w:atreus63_default.hex /* *WINDOWS SWEDISH */ @@ -101,19 +100,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = { { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, - { KC_HYP ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, + { KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, - { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_TAB ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } + { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_HYP ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } }, [NAV] = { { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F11 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } + { KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_L ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } }, [SYM] = { @@ -179,7 +178,6 @@ static void m_handle_kf (keyrecord_t *record, uint8_t id) { } const uint16_t PROGMEM fn_actions[] = { - }; const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) @@ -269,22 +267,51 @@ void matrix_scan_user(void) { unregister_code(KC_RGUI); }; - SEQ_TWO_KEYS(KC_F, KC_S){ - register_code(KC_LCTRL); - TAP_ONCE(KC_S); - unregister_code(KC_LCTRL); - }; - SEQ_TWO_KEYS(KC_B, KC_D){ - register_code(KC_LCTRL); - TAP_ONCE(KC_W); - unregister_code(KC_LCTRL); - }; + SEQ_TWO_KEYS (KC_A, KC_W) { + //Web - chrome + register_code (KC_LGUI); TAP_ONCE (KC_1); unregister_code (KC_LGUI); + } + SEQ_TWO_KEYS (KC_A, KC_P) { + //sPotify + register_code (KC_LGUI); TAP_ONCE (KC_2); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_T) { + //Total Commander + register_code (KC_LGUI); TAP_ONCE (KC_3); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_A) { + //Atom + register_code (KC_LGUI); TAP_ONCE (KC_4); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_E) { + //Emacs + register_code (KC_LGUI); TAP_ONCE (KC_5); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_C) { + //Cmdr + register_code (KC_LGUI); TAP_ONCE (KC_6); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_S) { + //Slack + register_code (KC_LGUI); TAP_ONCE (KC_7); unregister_code (KC_LGUI); + } + SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ unicode_input_start(); register_hex(0xaf); unicode_input_finish(); - register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_LALT); + register_code (KC_LCTL); + TAP_ONCE (KN_PLUS); + unregister_code (KC_LCTL); + unregister_code (KC_LALT); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); -- cgit v1.2.3-70-g09d2 From 236a0b0b6012d311a3ec048498dacdb1851327a0 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 16:00:09 +0100 Subject: Update makefile. Readme. --- keyboards/atreus62/keymaps/mneme/Makefile | 7 +++---- keyboards/atreus62/keymaps/mneme/README.md | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/keyboards/atreus62/keymaps/mneme/Makefile b/keyboards/atreus62/keymaps/mneme/Makefile index f20750dbc..046aec273 100644 --- a/keyboards/atreus62/keymaps/mneme/Makefile +++ b/keyboards/atreus62/keymaps/mneme/Makefile @@ -1,6 +1,5 @@ TAP_DANCE_ENABLE = yes -BOOTMAGIC_ENABLE = no -COMMAND_ENABLE = no -SLEEP_LED_ENABLE = no -UNICODE_ENABLE = yes NKRO_ENABLE = true +MOUSEKEY_ENABLE = no +EXTRAKEY_ENABLE = yes +CONSOLE_ENABLE = no diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 5bac545fc..04ab070be 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -42,7 +42,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym Basic navigation on the right hand and modifiers close by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. - + ## Sym layer ![Sym layer](img/sym.png) -- cgit v1.2.3-70-g09d2 From c660d5f8140f7ebc9a4c8302992438026a85b61d Mon Sep 17 00:00:00 2001 From: kd0kkv Date: Fri, 13 Jan 2017 08:30:46 -0600 Subject: Update keymap.c Fixed the default querty layout to have a B button and just one F --- keyboards/tv44/keymaps/default/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/tv44/keymaps/default/keymap.c b/keyboards/tv44/keymaps/default/keymap.c index f3f989f2d..b9fe33a7c 100644 --- a/keyboards/tv44/keymaps/default/keymap.c +++ b/keyboards/tv44/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QW] = { /* Qwerty */ {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC }, {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1) }, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_F, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } }, [_DV] = { /* Dvorak */ -- cgit v1.2.3-70-g09d2 From c6299a785916d021dbfc2f533d059d7b0a51f121 Mon Sep 17 00:00:00 2001 From: Wojciech Siewierski Date: Sun, 18 Dec 2016 01:39:41 +0100 Subject: Update the vifon keymap --- keyboards/planck/keymaps/vifon/Makefile | 5 +---- keyboards/planck/keymaps/vifon/config.h | 5 +++++ keyboards/planck/keymaps/vifon/keymap.c | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/keyboards/planck/keymaps/vifon/Makefile b/keyboards/planck/keymaps/vifon/Makefile index 53660a2e7..15a7b736f 100644 --- a/keyboards/planck/keymaps/vifon/Makefile +++ b/keyboards/planck/keymaps/vifon/Makefile @@ -1,6 +1,3 @@ -# Please remove if no longer applicable -$(warning THIS FILE MAY BE TOO LARGE FOR YOUR KEYBOARD) -$(warning Please disable some options in the Makefile to resolve) # Build Options @@ -10,7 +7,7 @@ $(warning Please disable some options in the Makefile to resolve) BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) MOUSEKEY_ENABLE = yes # Mouse keys(+4700) EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = yes # Console for debug(+400) +CONSOLE_ENABLE = no # Console for debug(+400) COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality diff --git a/keyboards/planck/keymaps/vifon/config.h b/keyboards/planck/keymaps/vifon/config.h index 9cb0634fb..a08b37cbe 100644 --- a/keyboards/planck/keymaps/vifon/config.h +++ b/keyboards/planck/keymaps/vifon/config.h @@ -81,6 +81,11 @@ along with this program. If not, see . /* prevent the modifiers from being stuck, sacrificing some memory */ #define PREVENT_STUCK_MODIFIERS +/* A larger buffer for the dynamic macros as this keymap is not taking + * up that much memory. + */ +#define DYNAMIC_MACRO_SIZE 256 + #ifdef SUBPROJECT_rev3 #include "rev3/config.h" #endif diff --git a/keyboards/planck/keymaps/vifon/keymap.c b/keyboards/planck/keymaps/vifon/keymap.c index 80c4a516c..ee0c0ac36 100644 --- a/keyboards/planck/keymaps/vifon/keymap.c +++ b/keyboards/planck/keymaps/vifon/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_PPG] = { /* Pure Pro: Gaming */ {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, DF(_RS), _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, XXXXXXX, _______, KM_RS , _______, _______, KM_LW , _______, _______, _______, _______}, }, [_NM] = { /* Numeric */ @@ -90,7 +90,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {_______, _______, KC_LGUI, KC_LALT, _______, _______, _______, _______, _______, _______, _______, _______} }, [_DYN]= { /* special */ - {_______, DYN_REC_START1, DYN_MACRO_PLAY1, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, KC_PAUS}, + {_______, DYN_REC_START1, DYN_MACRO_PLAY1, _______, _______, _______, _______, KC_APP, KC_INS, _______, KC_PSCR, KC_PAUS}, {_______, DYN_REC_START2, DYN_MACRO_PLAY2, _______, _______, _______, _______, _______, _______, KC_CAPS, KC_SLCK, KC_NLCK}, {KM_SHLK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} -- cgit v1.2.3-70-g09d2 From 7288e5ab9c005a7b035d91e68358aa2b6a12420c Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Fri, 13 Jan 2017 14:04:51 -0500 Subject: Update quantum_keycodes.h --- quantum/quantum_keycodes.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 80cd1d41d..4853655f9 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -160,7 +160,7 @@ enum quantum_keycodes { #define LCAG(kc) (kc | QK_LCTL | QK_LALT | QK_LGUI) #define ALTG(kc) (kc | QK_RCTL | QK_RALT) #define SCMD(kc) (kc | QK_LGUI | QK_LSFT) -#define SWIN SCMD +#define SWIN(kc) SCMD(kc) #define MOD_HYPR 0xf #define MOD_MEH 0x7 @@ -296,7 +296,7 @@ enum quantum_keycodes { #define LCAG_T(kc) MT((MOD_LCTL | MOD_LALT | MOD_LGUI), kc) // Left control alt and gui #define ALL_T(kc) MT((MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI), kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/ #define SCMD_T(kc) MT((MOD_LGUI | MOD_LSFT), kc) -#define SWIN_T SCMD_T +#define SWIN_T(kc) SCMD_T(kc) // Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap #define KC_HYPR HYPR(KC_NO) -- cgit v1.2.3-70-g09d2 From aa0939b5ef410e3003cc52383046a5d2dd0744f5 Mon Sep 17 00:00:00 2001 From: Bryan Hernandez Date: Fri, 13 Jan 2017 21:35:09 -0600 Subject: Added Bryan's keymap --- keyboards/ergodox/keymaps/bryan/keymap.c | 226 +++++++++++++++++++++++++++++++ 1 file changed, 226 insertions(+) create mode 100644 keyboards/ergodox/keymaps/bryan/keymap.c diff --git a/keyboards/ergodox/keymaps/bryan/keymap.c b/keyboards/ergodox/keymaps/bryan/keymap.c new file mode 100644 index 000000000..572cea8cd --- /dev/null +++ b/keyboards/ergodox/keymaps/bryan/keymap.c @@ -0,0 +1,226 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + EPRM, + VRSN, + RGB_SLD +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------------. ,--------------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | Cmd,Shft,[ | | Cmd,Shft,] | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------------| |------------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |BkSp/Cmd| A | S | D | F | G |------------| |------------| H | J | K | L |; / L2|' / Cmd | + * |--------+------+------+------+------+------| Hyper | | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |Ctrl/Esc|PgUp| | App | LGui | + * ,------|------|------| |------+--------+------. + * | | | PgDn | | Home | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | Esc | | Alt | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, M(2), + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + GUI_T(KC_BSPC), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + CTL_T(KC_ESC),KC_PGUP, + KC_PGDN, + KC_SPC,KC_BSPC, KC_ESC, + // right hand + M(3), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_LALT,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | <- | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, M(1), KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +// KC_COMM, KC_MINS + +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + } + return MACRO_NONE; +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + // dynamically generate these. + case EPRM: + if (record->event.pressed) { + eeconfig_init(); + } + return false; + break; + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + case RGB_SLD: + if (record->event.pressed) { + #ifdef RGBLIGHT_ENABLE + rgblight_mode(1); + #endif + } + return false; + break; + } + return true; +} + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; -- cgit v1.2.3-70-g09d2 From b56ec38d5ccc10e6e0b2ff6e7e859bbae3cb9610 Mon Sep 17 00:00:00 2001 From: Jason Milkins Date: Sun, 15 Jan 2017 14:08:17 +0800 Subject: Typo fix --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 90584cabc..d33c3ad01 100644 --- a/readme.md +++ b/readme.md @@ -31,7 +31,7 @@ The OLKB product firmwares are maintained by [Jack Humbert](https://github.com/j This is not a tiny project. While this is the main readme, there are many other files you might want to consult. Here are some points of interest: -* [**The Wiki**](https://github.com/jackhumbert/qmk_firmware/wiki) - the entirity of the readme has been moved here +* [**The Wiki**](https://github.com/jackhumbert/qmk_firmware/wiki) - the entirety of the readme has been moved here * The readme for your own keyboard: This is found under `keyboards//`. So for the ErgoDox EZ, it's [here](keyboards/ergodox/ez/); for the Planck, it's [here](keyboards/planck/) and so on. * The list of possible keycodes you can use in your keymap is actually spread out in a few different places: * [doc/keycode.txt](doc/keycode.txt) - an explanation of those same keycodes. -- cgit v1.2.3-70-g09d2 From 0815c7ae17cc19007c2074d178cb27476c5c6b83 Mon Sep 17 00:00:00 2001 From: Mitch Lloyd Date: Tue, 17 Jan 2017 12:48:58 -0800 Subject: Update mitch layout for new keymaps --- keyboards/planck/keymaps/mitch/Makefile | 5 ++ keyboards/planck/keymaps/mitch/config.h | 2 + keyboards/planck/keymaps/mitch/keymap.c | 70 ++++++++++++++++++++++ keyboards/planck/keymaps/mitch/readme.md | 26 ++++++++ .../old_keymap_files/common_keymaps/keymap_mitch.c | 49 --------------- 5 files changed, 103 insertions(+), 49 deletions(-) create mode 100644 keyboards/planck/keymaps/mitch/Makefile create mode 100644 keyboards/planck/keymaps/mitch/config.h create mode 100644 keyboards/planck/keymaps/mitch/keymap.c create mode 100644 keyboards/planck/keymaps/mitch/readme.md delete mode 100644 keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c diff --git a/keyboards/planck/keymaps/mitch/Makefile b/keyboards/planck/keymaps/mitch/Makefile new file mode 100644 index 000000000..7955003d4 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/Makefile @@ -0,0 +1,5 @@ +SUBPROJECT = rev3 + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/planck/keymaps/mitch/config.h b/keyboards/planck/keymaps/mitch/config.h new file mode 100644 index 000000000..73bc50bc2 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/config.h @@ -0,0 +1,2 @@ +#include "../../config.h" +#define PREVENT_STUCK_MODIFIERS diff --git a/keyboards/planck/keymaps/mitch/keymap.c b/keyboards/planck/keymaps/mitch/keymap.c new file mode 100644 index 000000000..79b5204f0 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/keymap.c @@ -0,0 +1,70 @@ +#include "keymap.h" +#include "quantum.h" + +#define QWERTY 0 +#define LOWER 1 +#define RAISE 2 + +// Alias to make layering more clear +#define _______ KC_TRNS + +// In MacOS, switch between windows within an application +#define GUI_GRV LGUI(KC_GRV) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Ctl | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | Del | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[QWERTY] = { + {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, + {KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MT(MOD_RSFT, KC_ENT) }, + {KC_ESC, KC_DEL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | GUIGR| | | | | | | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | | Mute | Vol- | Vol+ | | Bksp | $ | % | ^ | | | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | ! | @ | # | \ |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | Enter | | | PgUp | PgUn | | + * `-----------------------------------------------------------------------------------' + */ +[LOWER] = { + {GUI_GRV, _______, _______, _______, _______, _______, _______, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL}, + {KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_BSPC, KC_DLR, KC_PERC, KC_CIRC, KC_PIPE, KC_PIPE}, + {_______, _______, _______, _______, _______, _______, _______, KC_EXLM, KC_AT, KC_HASH, KC_BSLS, KC_ENT}, + {_______, _______, _______, _______, _______, KC_ENT, KC_ENT, _______, _______, KC_PGDN, KC_PGUP, _______} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | ` | ~ | ( | ) | | | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | [ | ] | { | } | | | 4 | 5 | 6 | | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | - | _ | = | + | | | 1 | 2 | 3 | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | Enter | | | | | | + * `-----------------------------------------------------------------------------------' + */ + +[RAISE] = { + {KC_GRV, KC_GRV, KC_TILD, KC_LPRN, KC_RPRN, _______, _______, KC_7, KC_8, KC_9, KC_0, _______}, + {_______, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, _______, _______, KC_4, KC_5, KC_6, _______, KC_BSLS}, + {_______, KC_MINS, KC_UNDS, KC_EQL, KC_PLUS, _______, _______, KC_1, KC_2, KC_3, _______, KC_ENT}, + {_______, _______, _______, _______, _______, KC_ENT, KC_ENT, _______, _______, KC_PGDN, KC_PGUP, _______} +} +}; diff --git a/keyboards/planck/keymaps/mitch/readme.md b/keyboards/planck/keymaps/mitch/readme.md new file mode 100644 index 000000000..3869304f4 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/readme.md @@ -0,0 +1,26 @@ +## Flashing Keyboard + +1. Install `dfu` tools: + + brew tap osx-cross/avr + brew install avr-libc + brew install dfu-programmer + +2. Move to this directory. +3. Hit the reset button on the keyboard. +4. run `make dfu`. + +## The Keymap + +This keymap is designed for a rev3 Planck Keyboard. + +The default layer is QWERTY. The raise layer has a ten key on the right +and common programming punctuation on the left. The lower layer provides the +rest of the symbols, mostly mapped with the ten key numbers. + +The normal right shift key uses the `MT` macro to trigger Enter on tap and right +shift when held. + +This keymap sets the `PREVENT_STUCK_MODIFIERS` flag to avoid the occasional WTF +moments when using a modifier keys and accidentally releasing them after moving +to a new layer. diff --git a/keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c b/keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c deleted file mode 100644 index e5a86b402..000000000 --- a/keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c +++ /dev/null @@ -1,49 +0,0 @@ -#include "keymap.h" - -const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = KEYMAP( - TAB, Q, W, E, R, T, Y, U, I, O, P, BSPC, - LCTL, A, S, D, F, G, H, J, K, L, SCLN, QUOT, - LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN3, - ESC, DEL, LALT, LGUI, FN2, SPC, FN1, LEFT, DOWN, UP, RGHT), -[1] = KEYMAP( - GRV, GRV, FN22, FN19, FN10, TRNS, TRNS, 7, 8, 9, 0, BSPC, - TRNS, LBRC, RBRC, FN23, FN24, TRNS, TRNS, 4, 5, 6, TRNS, BSLS, - TRNS, MINS, FN20, EQL, FN21, TRNS, TRNS, 1, 2, 3, TRNS, ENT, - TRNS, TRNS, TRNS, TRNS, TRNS, SPC, FN1, TRNS, PGDN, PGUP, TRNS), -[2] = KEYMAP( - FN26, FN10, FN11, FN12, FN13, FN14, FN15, FN17, FN18, FN19, FN10, DEL, - TRNS, TRNS, MUTE, VOLD, VOLU, TRNS, BSPC, FN14, FN15, FN16, TRNS, FN25, - TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, FN11, FN12, FN13, TRNS, ENT, - TRNS, TRNS, TRNS, TRNS, FN2, ENT, TRNS, TRNS, PGDN, PGUP, TRNS), -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_MOMENTARY(1), // Switch layer raise - [2] = ACTION_LAYER_MOMENTARY(2), // Switch layer lower - - [3] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ENT), // Right shift serves as Enter on tap - - // Numeric shift modifiers - [10] = ACTION_MODS_KEY(MOD_LSFT, KC_0), - [11] = ACTION_MODS_KEY(MOD_LSFT, KC_1), - [12] = ACTION_MODS_KEY(MOD_LSFT, KC_2), - [13] = ACTION_MODS_KEY(MOD_LSFT, KC_3), - [14] = ACTION_MODS_KEY(MOD_LSFT, KC_4), - [15] = ACTION_MODS_KEY(MOD_LSFT, KC_5), - [16] = ACTION_MODS_KEY(MOD_LSFT, KC_6), - [17] = ACTION_MODS_KEY(MOD_LSFT, KC_7), - [18] = ACTION_MODS_KEY(MOD_LSFT, KC_8), - [19] = ACTION_MODS_KEY(MOD_LSFT, KC_9), - - // Other shift modifiers - [20] = ACTION_MODS_KEY(MOD_LSFT, KC_MINS), // _ - [21] = ACTION_MODS_KEY(MOD_LSFT, KC_EQL), // + - [22] = ACTION_MODS_KEY(MOD_LSFT, KC_GRV), // ~ - [23] = ACTION_MODS_KEY(MOD_LSFT, KC_LBRC), // { - [24] = ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), // } - [25] = ACTION_MODS_KEY(MOD_LSFT, KC_BSLS), // | - - // Switch windows in app - [26] = ACTION_MODS_KEY(MOD_LGUI, KC_GRV), -}; -- cgit v1.2.3-70-g09d2 From 489d0ab5818555b8f8ff6e9e7d9a9ea717902ab0 Mon Sep 17 00:00:00 2001 From: Arthur Nogueira Neves Date: Wed, 18 Jan 2017 21:12:02 -0500 Subject: this is the atreus doc --- keyboards/atreus/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/atreus/readme.md b/keyboards/atreus/readme.md index a4077668e..8baa581f0 100644 --- a/keyboards/atreus/readme.md +++ b/keyboards/atreus/readme.md @@ -169,7 +169,7 @@ This requires [some hardware changes](https://www.reddit.com/r/MechanicalKeyboar ## Building -Download or clone the whole firmware and navigate to the keyboards/planck folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use `make dfu` to program your PCB once you hit the reset button. +Download or clone the whole firmware and navigate to the keyboards/atreus folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use `make dfu` to program your PCB once you hit the reset button. Depending on which keymap you would like to use, you will have to compile slightly differently. -- cgit v1.2.3-70-g09d2