diff options
Diffstat (limited to 'protocol/bluefruit/main.c')
-rw-r--r-- | protocol/bluefruit/main.c | 100 |
1 files changed, 61 insertions, 39 deletions
diff --git a/protocol/bluefruit/main.c b/protocol/bluefruit/main.c index 871062ab11..0dbb637e2c 100644 --- a/protocol/bluefruit/main.c +++ b/protocol/bluefruit/main.c @@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include <avr/wdt.h> #include <avr/sleep.h> #include <util/delay.h> -#include "serial.h" +#include "../serial.h" #include "keyboard.h" #include "usb.h" #include "host.h" @@ -40,23 +40,26 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define BLUEFRUIT_HOST_DRIVER 1 #define PJRC_HOST_DRIVER 2 + int main(void) { CPU_PRESCALE(0); - DDRD = _BV(PD5); - DDRB = _BV(PB0); + // DDRD = _BV(PD5); + // DDRB = _BV(PB0); - PORTD = _BV(PD5); - PORTB = _BV(PB0); + // PORTD = _BV(PD5); + // PORTB = _BV(PB0); print_set_sendchar(sendchar); - usb_init(); - _delay_ms(2000); + // usb_init(); + // _delay_ms(2000); // while (!usb_configured()) /* wait */ + + dprintf("Initializing keyboard...\n"); keyboard_init(); @@ -64,53 +67,72 @@ int main(void) // is not configured, choose the Bluefruit, otherwise use USB // Definitely would prefer to have this driven by an input pin and make // it switch dynamically - BCG - if (!usb_configured()) { + // if (!usb_configured()) { - // Send power to Bluefruit... Adafruit says it takes 27 mA, I think - // the pins should provide 40 mA, but just in case I switch the - // Bluefruit using a transistor - BCG - DDRB = _BV(PB6); - PORTB |= _BV(PB6); + // // Send power to Bluefruit... Adafruit says it takes 27 mA, I think + // // the pins should provide 40 mA, but just in case I switch the + // // Bluefruit using a transistor - BCG + // DDRB = _BV(PB6); + // PORTB |= _BV(PB6); dprintf("Setting host driver to bluefruit...\n"); host_set_driver(bluefruit_driver()); dprintf("Initializing serial...\n"); serial_init(); - - // wait an extra second for the PC's operating system - // to load drivers and do whatever it does to actually - // be ready for input - _delay_ms(1000); - PORTD = ~_BV(PD5); - dprintf("Starting main loop"); - while (1) { - keyboard_task(); - } - } else { + // char swpa[] = "+++\r\n"; + // for (int i = 0; i < 5; i++) { + // serial_send(swpa[i]); + // } + + // char ble_enable[] = "AT+BLEKEYBOARDEN=1\r\n"; + // for (int i = 0; i < 20; i++) { + // serial_send(ble_enable[i]); + // } + + // char reset[] = "ATZ\r\n"; + // for (int i = 0; i < 5; i++) { + // serial_send(reset[i]); + // } + + // for (int i = 0; i < 5; i++) { + // serial_send(swpa[i]); + // } - // I'm not smart enough to get this done with LUFA - BCG - dprintf("Setting host driver to PJRC...\n"); - host_set_driver(pjrc_driver()); -#ifdef SLEEP_LED_ENABLE - sleep_led_init(); -#endif // wait an extra second for the PC's operating system // to load drivers and do whatever it does to actually // be ready for input _delay_ms(1000); - PORTB = ~_BV(PB0); + // PORTD = ~_BV(PD5); dprintf("Starting main loop"); while (1) { - while (suspend) { - suspend_power_down(); - if (remote_wakeup && suspend_wakeup_condition()) { - usb_remote_wakeup(); - } - } - keyboard_task(); + keyboard_task(); } - } + +// } else { + +// // I'm not smart enough to get this done with LUFA - BCG +// dprintf("Setting host driver to PJRC...\n"); +// host_set_driver(pjrc_driver()); +// #ifdef SLEEP_LED_ENABLE +// sleep_led_init(); +// #endif +// // wait an extra second for the PC's operating system +// // to load drivers and do whatever it does to actually +// // be ready for input +// _delay_ms(1000); +// PORTB = ~_BV(PB0); +// dprintf("Starting main loop"); +// while (1) { +// while (suspend) { +// suspend_power_down(); +// if (remote_wakeup && suspend_wakeup_condition()) { +// usb_remote_wakeup(); +// } +// } +// keyboard_task(); +// } +// } } |