diff options
Diffstat (limited to 'tmk_core')
| -rw-r--r-- | tmk_core/common.mk | 14 | ||||
| -rw-r--r-- | tmk_core/protocol/lufa.mk | 12 | ||||
| -rw-r--r-- | tmk_core/protocol/lufa/adafruit_ble.h | 4 | ||||
| -rw-r--r-- | tmk_core/protocol/lufa/lufa.c | 73 | ||||
| -rw-r--r-- | tmk_core/protocol/lufa/outputselect.c | 6 | ||||
| -rw-r--r-- | tmk_core/protocol/lufa/outputselect.h | 1 | 
6 files changed, 58 insertions, 52 deletions
| diff --git a/tmk_core/common.mk b/tmk_core/common.mk index a86dccc61..47f6fc571 100644 --- a/tmk_core/common.mk +++ b/tmk_core/common.mk @@ -93,14 +93,20 @@ ifeq ($(strip $(BACKLIGHT_ENABLE)), yes)      TMK_COMMON_DEFS += -DBACKLIGHT_ENABLE  endif -ifeq ($(strip $(ADAFRUIT_BLE_ENABLE)), yes) -    TMK_COMMON_DEFS += -DADAFRUIT_BLE_ENABLE -endif -  ifeq ($(strip $(BLUETOOTH_ENABLE)), yes)      TMK_COMMON_DEFS += -DBLUETOOTH_ENABLE  endif +ifeq ($(strip $(BLUETOOTH)), AdafruitBLE) +		TMK_COMMON_DEFS += -DBLUETOOTH_ENABLE +		TMK_COMMON_DEFS += -DMODULE_ADAFRUIT_BLE +endif + +ifeq ($(strip $(BLUETOOTH)), AdafruitEZKey) +		TMK_COMMON_DEFS += -DBLUETOOTH_ENABLE +		TMK_COMMON_DEFS += -DMODULE_ADAFRUIT_EZKEY +endif +  ifeq ($(strip $(ONEHAND_ENABLE)), yes)      TMK_COMMON_DEFS += -DONEHAND_ENABLE  endif diff --git a/tmk_core/protocol/lufa.mk b/tmk_core/protocol/lufa.mk index de0cc795f..5b1577972 100644 --- a/tmk_core/protocol/lufa.mk +++ b/tmk_core/protocol/lufa.mk @@ -22,11 +22,16 @@ ifeq ($(strip $(MIDI_ENABLE)), yes)  	include $(TMK_PATH)/protocol/midi.mk  endif -ifeq ($(strip $(ADAFRUIT_BLE_ENABLE)), yes) -	LUFA_SRC += $(LUFA_DIR)/adafruit_ble.cpp +ifeq ($(strip $(BLUETOOTH_ENABLE)), yes) +	LUFA_SRC += $(LUFA_DIR)/bluetooth.c \ +	$(TMK_DIR)/protocol/serial_uart.c  endif -ifeq ($(strip $(BLUETOOTH_ENABLE)), yes) +ifeq ($(strip $(BLUETOOTH)), AdafruitBLE) +		LUFA_SRC += $(LUFA_DIR)/adafruit_ble.cpp +endif + +ifeq ($(strip $(BLUETOOTH)), AdafruitEZKey)  	LUFA_SRC += $(LUFA_DIR)/bluetooth.c \  	$(TMK_DIR)/protocol/serial_uart.c  endif @@ -54,6 +59,7 @@ LUFA_OPTS += -DUSE_FLASH_DESCRIPTORS  LUFA_OPTS += -DUSE_STATIC_OPTIONS="(USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)"  #LUFA_OPTS += -DINTERRUPT_CONTROL_ENDPOINT  LUFA_OPTS += -DFIXED_CONTROL_ENDPOINT_SIZE=8  +LUFA_OPTS += -DFIXED_CONTROL_ENDPOINT_SIZE=8  LUFA_OPTS += -DFIXED_NUM_CONFIGURATIONS=1  # Remote wakeup fix for ATmega32U2        https://github.com/tmk/tmk_keyboard/issues/361 diff --git a/tmk_core/protocol/lufa/adafruit_ble.h b/tmk_core/protocol/lufa/adafruit_ble.h index 351fd55ae..b3bab3ca0 100644 --- a/tmk_core/protocol/lufa/adafruit_ble.h +++ b/tmk_core/protocol/lufa/adafruit_ble.h @@ -3,7 +3,7 @@   * Supports the Adafruit BLE board built around the nRF51822 chip.   */  #pragma once -#ifdef ADAFRUIT_BLE_ENABLE +#ifdef MODULE_ADAFRUIT_BLE  #include <stdbool.h>  #include <stdint.h>  #include <string.h> @@ -57,4 +57,4 @@ extern bool adafruit_ble_set_power_level(int8_t level);  }  #endif -#endif // ADAFRUIT_BLE_ENABLE +#endif // MODULE_ADAFRUIT_BLE diff --git a/tmk_core/protocol/lufa/lufa.c b/tmk_core/protocol/lufa/lufa.c index ba49284c9..4cb23ebc8 100644 --- a/tmk_core/protocol/lufa/lufa.c +++ b/tmk_core/protocol/lufa/lufa.c @@ -67,10 +67,11 @@  #endif  #ifdef BLUETOOTH_ENABLE -    #include "bluetooth.h" -#endif -#ifdef ADAFRUIT_BLE_ENABLE +  #ifdef MODULE_ADAFRUIT_BLE      #include "adafruit_ble.h" +  #else +    #include "bluetooth.h" +  #endif  #endif  #ifdef VIRTSER_ENABLE @@ -602,18 +603,16 @@ static void send_keyboard(report_keyboard_t *report)      uint8_t where = where_to_send();  #ifdef BLUETOOTH_ENABLE -    if (where == OUTPUT_BLUETOOTH || where == OUTPUT_USB_AND_BT) { -        bluefruit_serial_send(0xFD); -        for (uint8_t i = 0; i < KEYBOARD_EPSIZE; i++) { -            bluefruit_serial_send(report->raw[i]); -        } -    } -#endif - -#ifdef ADAFRUIT_BLE_ENABLE -    if (where == OUTPUT_ADAFRUIT_BLE) { +  if (where == OUTPUT_BLUETOOTH || where == OUTPUT_USB_AND_BT) { +    #ifdef MODULE_ADAFRUIT_BLE        adafruit_ble_send_keys(report->mods, report->keys, sizeof(report->keys)); -    } +    #else +      bluefruit_serial_send(0xFD); +      for (uint8_t i = 0; i < KEYBOARD_EPSIZE; i++) { +        bluefruit_serial_send(report->raw[i]); +      } +    #endif +  }  #endif      if (where != OUTPUT_USB && where != OUTPUT_USB_AND_BT) { @@ -660,24 +659,22 @@ static void send_mouse(report_mouse_t *report)      uint8_t where = where_to_send();  #ifdef BLUETOOTH_ENABLE -    if (where == OUTPUT_BLUETOOTH || where == OUTPUT_USB_AND_BT) { -        bluefruit_serial_send(0xFD); -        bluefruit_serial_send(0x00); -        bluefruit_serial_send(0x03); -        bluefruit_serial_send(report->buttons); -        bluefruit_serial_send(report->x); -        bluefruit_serial_send(report->y); -        bluefruit_serial_send(report->v); // should try sending the wheel v here -        bluefruit_serial_send(report->h); // should try sending the wheel h here -        bluefruit_serial_send(0x00); -    } -#endif - -#ifdef ADAFRUIT_BLE_ENABLE -    if (where == OUTPUT_ADAFRUIT_BLE) { +  if (where == OUTPUT_BLUETOOTH || where == OUTPUT_USB_AND_BT) { +    #ifdef MODULE_ADAFRUIT_BLE        // FIXME: mouse buttons        adafruit_ble_send_mouse_move(report->x, report->y, report->v, report->h); -    } +    #else +      bluefruit_serial_send(0xFD); +      bluefruit_serial_send(0x00); +      bluefruit_serial_send(0x03); +      bluefruit_serial_send(report->buttons); +      bluefruit_serial_send(report->x); +      bluefruit_serial_send(report->y); +      bluefruit_serial_send(report->v); // should try sending the wheel v here +      bluefruit_serial_send(report->h); // should try sending the wheel h here +      bluefruit_serial_send(0x00); +    #endif +  }  #endif      if (where != OUTPUT_USB && where != OUTPUT_USB_AND_BT) { @@ -727,6 +724,9 @@ static void send_consumer(uint16_t data)  #ifdef BLUETOOTH_ENABLE      if (where == OUTPUT_BLUETOOTH || where == OUTPUT_USB_AND_BT) { +      #ifdef MODULE_ADAFRUIT_BLE +        adafruit_ble_send_consumer_key(data, 0); +      #else          static uint16_t last_data = 0;          if (data == last_data) return;          last_data = data; @@ -740,12 +740,7 @@ static void send_consumer(uint16_t data)          bluefruit_serial_send(0x00);          bluefruit_serial_send(0x00);          bluefruit_serial_send(0x00); -    } -#endif - -#ifdef ADAFRUIT_BLE_ENABLE -    if (where == OUTPUT_ADAFRUIT_BLE) { -      adafruit_ble_send_consumer_key(data, 0); +      #endif      }  #endif @@ -1130,7 +1125,7 @@ int main(void)      // midi_send_noteoff(&midi_device, 0, 64, 127);  #endif -#ifdef BLUETOOTH_ENABLE +#ifdef MODULE_ADAFRUIT_EZKEY      serial_init();  #endif @@ -1161,7 +1156,7 @@ int main(void)      print("Keyboard start.\n");      while (1) { -        #if !defined(BLUETOOTH_ENABLE) && !defined(ADAFRUIT_BLE_ENABLE) +        #if !defined(BLUETOOTH_ENABLE)          while (USB_DeviceState == DEVICE_STATE_Suspended) {              print("[s]");              suspend_power_down(); @@ -1182,7 +1177,7 @@ int main(void)          rgblight_task();  #endif -#ifdef ADAFRUIT_BLE_ENABLE +#ifdef MODULE_ADAFRUIT_BLE          adafruit_ble_task();  #endif diff --git a/tmk_core/protocol/lufa/outputselect.c b/tmk_core/protocol/lufa/outputselect.c index 5d2457bff..0df5d3b75 100644 --- a/tmk_core/protocol/lufa/outputselect.c +++ b/tmk_core/protocol/lufa/outputselect.c @@ -14,7 +14,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #include "lufa.h"  #include "outputselect.h" -#ifdef ADAFRUIT_BLE_ENABLE +#ifdef MODULE_ADAFRUIT_BLE      #include "adafruit_ble.h"  #endif @@ -34,9 +34,9 @@ uint8_t auto_detect_output(void) {          return OUTPUT_USB;      } -#ifdef ADAFRUIT_BLE_ENABLE +#ifdef MODULE_ADAFRUIT_BLE      if (adafruit_ble_is_connected()) { -        return OUTPUT_ADAFRUIT_BLE; +        return OUTPUT_BLUETOOTH;      }  #endif diff --git a/tmk_core/protocol/lufa/outputselect.h b/tmk_core/protocol/lufa/outputselect.h index 79b4dd35d..28cc3298e 100644 --- a/tmk_core/protocol/lufa/outputselect.h +++ b/tmk_core/protocol/lufa/outputselect.h @@ -18,7 +18,6 @@ enum outputs {      OUTPUT_NONE,      OUTPUT_USB,      OUTPUT_BLUETOOTH, -    OUTPUT_ADAFRUIT_BLE,      // backward compatibility      OUTPUT_USB_AND_BT | 
