13 #include "action_util.h"
19 static int8_t sendchar_func(uint8_t c)
26 static void SetupHardware(void)
28 /* Disable watchdog if enabled by bootloader/fuses */
29 MCUSR &= ~(1 << WDRF);
32 /* Disable clock division */
33 clock_prescale_set(clock_div_1);
35 // Leonardo needs. Without this USB device is not recognized.
41 USB_Device_EnableSOFEvents();
42 print_set_sendchar(sendchar_func);
44 // SUART PD0:output, PD1:input
51 int main(void) __attribute__ ((weak));
57 /* wait for USB startup to get ready for debug output */
58 uint8_t timeout = 255; // timeout when USB is not available(Bluetooth)
59 while (timeout-- && USB_DeviceState != DEVICE_STATE_Configured) {
61 #if defined(INTERRUPT_CONTROL_ENDPOINT)
67 print("\nUSB init\n");
71 print("RN-42 init\n");
76 #ifdef SLEEP_LED_ENABLE
80 print("Keyboard start\n");
82 while (rn42_rts() && // RN42 is off
83 USB_DeviceState == DEVICE_STATE_Suspended) {
93 if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) {
94 USB_Device_SendRemoteWakeup();
100 #if !defined(INTERRUPT_CONTROL_ENDPOINT)