summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Humbert <jack.humb@gmail.com>2015-10-25 21:40:56 -0400
committerJack Humbert <jack.humb@gmail.com>2015-10-25 21:40:56 -0400
commitff8d8a50dfbb8502003a5181878c54a71b8c57d5 (patch)
treea3c8d93d831a69b5ef7cd04173d41c7810e24335
parent61fea81a2469da4db9f161c7d4bdf90fe66a3dd2 (diff)
downloadqmk_firmware-ff8d8a50dfbb8502003a5181878c54a71b8c57d5.tar.gz
qmk_firmware-ff8d8a50dfbb8502003a5181878c54a71b8c57d5.zip
fixes for bluetooth without usb
-rw-r--r--keyboard/planck/keymap_common.h68
-rw-r--r--keyboard/planck/keymap_french.h2
-rw-r--r--keyboard/planck/keymap_nordic.h4
-rw-r--r--keyboard/planck/keymap_spanish.h4
-rw-r--r--protocol/lufa/lufa.c91
5 files changed, 52 insertions, 117 deletions
diff --git a/keyboard/planck/keymap_common.h b/keyboard/planck/keymap_common.h
index 73df8424a5..21908a2be3 100644
--- a/keyboard/planck/keymap_common.h
+++ b/keyboard/planck/keymap_common.h
@@ -78,74 +78,6 @@ extern const uint16_t fn_actions[];
#define S(kc) LSFT(kc)
#define F(kc) FUNC(kc)
-// For software implementation of colemak
-#define CM_Q KC_Q
-#define CM_W KC_W
-#define CM_F KC_E
-#define CM_P KC_R
-#define CM_G KC_T
-#define CM_J KC_Y
-#define CM_L KC_U
-#define CM_U KC_I
-#define CM_Y KC_O
-#define CM_SCLN KC_P
-
-#define CM_A KC_A
-#define CM_R KC_S
-#define CM_S KC_D
-#define CM_T KC_F
-#define CM_D KC_G
-#define CM_H KC_H
-#define CM_N KC_J
-#define CM_E KC_K
-#define CM_I KC_L
-#define CM_O KC_SCLN
-
-#define CM_Z KC_Z
-#define CM_X KC_X
-#define CM_C KC_C
-#define CM_V KC_V
-#define CM_B KC_B
-#define CM_K KC_N
-#define CM_M KC_M
-#define CM_COMM KC_COMM
-#define CM_DOT KC_DOT
-#define CM_SLSH KC_SLSH
-
-// Make it easy to support these in macros
-#define KC_CM_Q CM_Q
-#define KC_CM_W CM_W
-#define KC_CM_F CM_F
-#define KC_CM_P CM_P
-#define KC_CM_G CM_G
-#define KC_CM_J CM_J
-#define KC_CM_L CM_L
-#define KC_CM_U CM_U
-#define KC_CM_Y CM_Y
-#define KC_CM_SCLN CM_SCLN
-
-#define KC_CM_A CM_A
-#define KC_CM_R CM_R
-#define KC_CM_S CM_S
-#define KC_CM_T CM_T
-#define KC_CM_D CM_D
-#define KC_CM_H CM_H
-#define KC_CM_N CM_N
-#define KC_CM_E CM_E
-#define KC_CM_I CM_I
-#define KC_CM_O CM_O
-
-#define KC_CM_Z CM_Z
-#define KC_CM_X CM_X
-#define KC_CM_C CM_C
-#define KC_CM_V CM_V
-#define KC_CM_B CM_B
-#define KC_CM_K CM_K
-#define KC_CM_M CM_M
-#define KC_CM_COMM CM_COMM
-#define KC_CM_DOT CM_DOT
-#define KC_CM_SLSH CM_SLSH
-
#define M(kc) kc | 0x3000
#define MACRODOWN(...) (record->event.pressed ? MACRO(__VA_ARGS__) : MACRO_NONE)
diff --git a/keyboard/planck/keymap_french.h b/keyboard/planck/keymap_french.h
index 71c8033c2a..ccfaed8f07 100644
--- a/keyboard/planck/keymap_french.h
+++ b/keyboard/planck/keymap_french.h
@@ -14,7 +14,7 @@
#define FR_QUOT KC_3
#define FR_APOS KC_4
#define FR_LPRN KC_5
-#define FR_DASH KC_6
+#define FR_MINS KC_6
#define FR_EGRV KC_7
#define FR_UNDS KC_8
#define FR_CCED KC_9
diff --git a/keyboard/planck/keymap_nordic.h b/keyboard/planck/keymap_nordic.h
index 56ae8b63bd..02a704216a 100644
--- a/keyboard/planck/keymap_nordic.h
+++ b/keyboard/planck/keymap_nordic.h
@@ -19,7 +19,7 @@
#define NO_APOS KC_NUHS
#define NO_LESS KC_NUBS
-#define NO_DASH KC_SLSH
+#define NO_MINS KC_SLSH
// Shifted characters
#define NO_SECT LSFT(NO_HALF)
@@ -38,7 +38,7 @@
#define NO_GRTR LSFT(NO_LESS)
#define NO_SCLN LSFT(KC_COMM)
#define NO_COLN LSFT(KC_DOT)
-#define NO_UNDS LSFT(NO_DASH)
+#define NO_UNDS LSFT(NO_MINS)
// Alt Gr-ed characters
#define NO_AT ALGR(KC_2)
diff --git a/keyboard/planck/keymap_spanish.h b/keyboard/planck/keymap_spanish.h
index 50bcb999b1..7f980afbcf 100644
--- a/keyboard/planck/keymap_spanish.h
+++ b/keyboard/planck/keymap_spanish.h
@@ -20,7 +20,7 @@
#define ES_CCED KC_NUHS
#define ES_LESS KC_NUBS
-#define ES_DASH KC_SLSH
+#define ES_MINS KC_SLSH
// Shifted characters
#define ES_ASML LSFT(ES_OVRR)
@@ -42,7 +42,7 @@
#define ES_GRTR LSFT(ES_LESS)
#define ES_SCLN LSFT(ES_COMM)
#define ES_COLN LSFT(ES_DOT)
-#define ES_UNDS LSFT(ES_DASH)
+#define ES_UNDS LSFT(ES_MINS)
// Alt Gr-ed characters
#define ES_BSLS ALGR(ES_OVRR)
diff --git a/protocol/lufa/lufa.c b/protocol/lufa/lufa.c
index e5267fead6..c9504483af 100644
--- a/protocol/lufa/lufa.c
+++ b/protocol/lufa/lufa.c
@@ -445,6 +445,14 @@ static uint8_t keyboard_leds(void)
static void send_keyboard(report_keyboard_t *report)
{
+
+#ifdef BLUETOOTH_ENABLE
+ bluefruit_serial_send(0xFD);
+ for (uint8_t i = 0; i < KEYBOARD_EPSIZE; i++) {
+ bluefruit_serial_send(report->raw[i]);
+ }
+#endif
+
uint8_t timeout = 255;
if (USB_DeviceState != DEVICE_STATE_Configured)
@@ -482,17 +490,24 @@ static void send_keyboard(report_keyboard_t *report)
keyboard_report_sent = *report;
-#ifdef BLUETOOTH_ENABLE
- bluefruit_serial_send(0xFD);
- for (uint8_t i = 0; i < KEYBOARD_EPSIZE; i++) {
- bluefruit_serial_send(report->raw[i]);
- }
-#endif
}
static void send_mouse(report_mouse_t *report)
{
#ifdef MOUSE_ENABLE
+
+#ifdef BLUETOOTH_ENABLE
+ 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
+
uint8_t timeout = 255;
if (USB_DeviceState != DEVICE_STATE_Configured)
@@ -511,19 +526,6 @@ static void send_mouse(report_mouse_t *report)
/* Finalize the stream transfer to send the last packet */
Endpoint_ClearIN();
-
-#ifdef BLUETOOTH_ENABLE
- 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
}
@@ -550,6 +552,23 @@ static void send_system(uint16_t data)
static void send_consumer(uint16_t data)
{
+
+#ifdef BLUETOOTH_ENABLE
+ static uint16_t last_data = 0;
+ if (data == last_data) return;
+ last_data = data;
+ uint16_t bitmap = CONSUMER2BLUEFRUIT(data);
+ bluefruit_serial_send(0xFD);
+ bluefruit_serial_send(0x00);
+ bluefruit_serial_send(0x02);
+ bluefruit_serial_send((bitmap>>8)&0xFF);
+ bluefruit_serial_send(bitmap&0xFF);
+ bluefruit_serial_send(0x00);
+ bluefruit_serial_send(0x00);
+ bluefruit_serial_send(0x00);
+ bluefruit_serial_send(0x00);
+#endif
+
uint8_t timeout = 255;
if (USB_DeviceState != DEVICE_STATE_Configured)
@@ -568,21 +587,6 @@ static void send_consumer(uint16_t data)
Endpoint_Write_Stream_LE(&r, sizeof(report_extra_t), NULL);
Endpoint_ClearIN();
-#ifdef BLUETOOTH_ENABLE
- static uint16_t last_data = 0;
- if (data == last_data) return;
- last_data = data;
- uint16_t bitmap = CONSUMER2BLUEFRUIT(data);
- bluefruit_serial_send(0xFD);
- bluefruit_serial_send(0x00);
- bluefruit_serial_send(0x02);
- bluefruit_serial_send((bitmap>>8)&0xFF);
- bluefruit_serial_send(bitmap&0xFF);
- bluefruit_serial_send(0x00);
- bluefruit_serial_send(0x00);
- bluefruit_serial_send(0x00);
- bluefruit_serial_send(0x00);
-#endif
}
@@ -881,19 +885,18 @@ int main(void)
#endif
#ifdef BLUETOOTH_ENABLE
- print_set_sendchar(sendchar);
serial_init();
#endif
/* wait for USB startup & debug output */
- while (USB_DeviceState != DEVICE_STATE_Configured) {
+ // while (USB_DeviceState != DEVICE_STATE_Configured) {
// #if defined(INTERRUPT_CONTROL_ENDPOINT)
// ;
// #else
USB_USBTask();
// #endif
- }
+ // }
print("USB configured.\n");
/* init modules */
@@ -905,13 +908,13 @@ int main(void)
print("Keyboard start.\n");
while (1) {
- while (USB_DeviceState == DEVICE_STATE_Suspended) {
- print("[s]");
- suspend_power_down();
- if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) {
- USB_Device_SendRemoteWakeup();
- }
- }
+ // while (USB_DeviceState == DEVICE_STATE_Suspended) {
+ // print("[s]");
+ // suspend_power_down();
+ // if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) {
+ // USB_Device_SendRemoteWakeup();
+ // }
+ // }
#ifdef MIDI_ENABLE
midi_device_process(&midi_device);