]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - tmk_core/protocol/bluefruit/main.c
Add RN42 Bluetooth module support
[qmk_firmware.git] / tmk_core / protocol / bluefruit / main.c
index 871062ab11727e852071a13b11c7ff549297e5c2..0dbb637e2cfd1d959e4f2a3a1ca3df44a267d45e 100644 (file)
@@ -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(); 
+//         }
+//     }
 
 }