/* * Copyright (C) 2018 SoloKeys, Inc. * * This file is part of Solo. * * Solo is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Solo is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Solo. If not, see * * This code is available under licenses for commercial use. * Please contact SoloKeys for more information. */ #ifndef _APP_H_ #define _APP_H_ #include #define DEBUG_UART USART1 #ifndef DEBUG_LEVEL #define DEBUG_LEVEL 0 #endif #define NON_BLOCK_PRINTING 0 #define BOOT_TO_DFU 0 //#define USING_DEV_BOARD //#define ENABLE_U2F_EXTENSIONS #define ENABLE_U2F #define DISABLE_CTAPHID_PING #define DISABLE_CTAPHID_WINK #define DISABLE_CTAPHID_CBOR void printing_init(); void hw_init(int lf); //#define TEST //#define TEST_POWER // 0xRRGGBB #define LED_INIT_VALUE 0x000800 #define LED_WINK_VALUE 0x000010 #define LED_MAX_SCALER 30 #define LED_MIN_SCALER 1 // # of ms between each change in LED #define HEARTBEAT_PERIOD 100 // Each LED channel will be multiplied by a integer between LED_MAX_SCALER // and LED_MIN_SCALER to cause the slow pulse. E.g. // #define LED_INIT_VALUE 0x301000 // #define LED_MAX_SCALER 30 // #define LED_MIN_SCALER 1 // #define HEARTBEAT_PERIOD 8 // Will pulse from 0x301000 to 0x903000 to 0x301000 ... // Which will take ~8 * (30)*2 ms // Button #define SOLO_BUTTON_PORT GPIOA #define SOLO_BUTTON_PIN LL_GPIO_PIN_0 #define SOLO_AMS_CS_PORT GPIOB #define SOLO_AMS_CS_PIN LL_GPIO_PIN_0 #define SKIP_BUTTON_CHECK_WITH_DELAY 0 #define SKIP_BUTTON_CHECK_FAST 0 #endif