#ifndef SDK_CONFIG_H #define SDK_CONFIG_H //*** <<< Use Configuration Wizard in Context Menu >>> *** // ========================================================== // SoC Platform // Chip Power Mode // <0=> LDO // <1=> DCDC #define CONFIG_SOC_DCDC_PAN1070 1 // System Clock // <48=> 48 MHz (DPLL) // <32=> 32 MHz (DPLL) // System main frequency, Unit MHz #define CONFIG_SYSTEM_CLOCK 32 // APB1 Clock Divisor // <0=> No Divider // <2=> 2 // <4=> 4 // <6=> 6 // <8=> 8 // <10=> 10 // <12=> 12 // <14=> 14 // <16=> 16 // Divisor of peripheral clocks on APB1, It can only be even numbers. #define CONFIG_APB1_CLOCK_DIVISOR 2 // APB2 Clock Divisor // <0=> No Divider // <2=> 2 // <4=> 4 // <6=> 6 // <8=> 8 // <10=> 10 // <12=> 12 // <14=> 14 // <16=> 16 // Divisor of peripheral clocks on APB2, It can only be even numbers. #define CONFIG_APB2_CLOCK_DIVISOR 2 // 32K Low-Speed Clock Source // <0=> RCL (32000 Hz) // <1=> XTL (32768 Hz) // <2=> ACT32K (32000 Hz) // Select a low-speed clock source #define CONFIG_LOW_SPEED_CLOCK_SRC 1 // Force Calib RCL Clock // Force calibrate the 32K RCL clock at system init stage. // NOTE this only take effect when the Low-Speed Clock Source is seleted to RCL. #define CONFIG_FORCE_CALIB_RCL_CLK 0 // Enable UART Log #define CONFIG_UART_LOG_ENABLE 1 // Log UART Tx Pin // <0=> P05 (UART0) // <1=> P11 (UART0) // <2=> P16 (UART0) // <3=> P01 (UART1) // <4=> P10 (UART1) // <5=> P12 (UART1) // <6=> P25 (UART1) // <7=> P31 (UART1) // Select a UART Tx pin for logging output. #define CONFIG_LOG_UART_PIN 2 // Log UART Baudrate // <115200=> 115200 // <230400=> 230400 // <460800=> 460800 // <921600=> 921600 // <1000000=> 1M // <2000000=> 2M #define CONFIG_LOG_UART_BAUDRATE 921600 // // Enable RTT Log // Note that the Low Power Mode (CONFIG_PM) should be disabled // while using RTT log, since the Jlink SWD connnection would be lost // at SoC DeepSleep or Standby Mode. #define CONFIG_RTT_LOG_ENABLE 0 // RTT Log Buffer Size (Bytes) // Configure Log RTT Up Buffer Size in Bytes (Channel 0). #define CONFIG_LOG_RTT_UP_BUFFER_SIZE 512 // // Enable RAM Function // Adding essential code to SRAM could improve running performance. #define CONFIG_RAM_FUNCTION 1 // Enable Flash LDO // Enable the internal 1.8v flash LDO for flash power supply // instead of the default flash power from SoC VBAT. #define CONFIG_FLASH_LDO_EN 1 // Remap Vector Table to SRAM #define CONFIG_VECTOR_REMAP_TO_RAM 1 // Enable Auto Power Optimization // Several power configurations could be updated due to temperature change. #define CONFIG_AUTO_OPTIMIZE_POWER_PARAM 0 // Temperature Sample Interval (in Seconds) #define CONFIG_TEMP_SAMPLE_INTERVAL_S 300 // Enable DVDD Voltage Optimization #define CONFIG_DVDD_VOL_OPTIMIZE_EN 1 // // Enable Low Power Mode #define CONFIG_PM 0 // Enable System Watchdog #define CONFIG_SYSTEM_WATCH_DOG_ENABLE 0 // Keep Flash Power in Low Power Mode // Select this means flash power would be retained in Low Power Mode, and // there would be a little avg-current increase (about 1uA). The benefit is that // the large peak current (>15mA) would not occur. #define CONFIG_KEEP_FLASH_POWER_IN_LP_MODE 1 // Enable DeepSleep Mode 2 // Enable DeepSleep Mode 2 (Only LPLDOH in use), and the HW APB Timer Wakeup // and PWM waveform output can be use in this mode. #define CONFIG_DEEPSLEEP_MODE_2 0 // Increase LPLDOH trim value // <0=> +0 // <1=> +1 // <2=> +2 // <3=> +3 // <4=> +4 // <5=> +5 // <6=> +6 // <7=> +7 // <8=> +8 // Increase LPLDOH voltage for specific LowPower scenario use. #define CONFIG_SOC_INCREASE_LPLDOH_CALIB_CODE 0 // Continue Run After Standby M1 Wakeup // Check this configuration to let CPU continue run after standby M1 waking up, // or CPU would reset after waking up from standby M1. #define CONFIG_PM_STANDBY_M1_WAKEUP_WITHOUT_RESET 0 // Enable AHB Clock Optimization #define CONFIG_HCLK_OPTIMIZE_EN 1 // // // ========================================================== SoC Platform // ========================================================== // RTOS // ****************************** // Timer Thread // Use freeretos software timer #define configUSE_TIMERS 1 // Timer thread priority #define configTIMER_TASK_PRIORITY 2 // Support maximun number of timer queue length #define configTIMER_QUEUE_LENGTH 12 // Timer thread stack size #define configTIMER_TASK_STACK_DEPTH 128 // // ****************************** Timer Thread // ****************************** // BLE Host Thread // Host thread stack size #define MYNEWT_VAL_BLE_HOST_THREAD_STACK_SIZE 256 // Host thread prioirty #define MYNEWT_VAL_BLE_HOST_THREAD_PRIORITY 6 // // ****************************** BLE Host Thread // Total Heap Size #define configTOTAL_HEAP_SIZE 7000 // Print Current Heap Usage #define CONFIG_FREERTOS_HEAP_PRINT 0 // Enable OS Idle Hook #define configUSE_IDLE_HOOK 0 // Enable OS Tick Hook #define configUSE_TICK_HOOK 0 // Enable OS Malloc Fail Hook #define configUSE_MALLOC_FAILED_HOOK 1 // // ========================================================== RTOS // ========================================================== // BLE Resource // Support maximun number of BLE Master Link #define CONFIG_BT_MAX_NUM_OF_CENTRAL 1 // Support maximun number of BLE Slave Link #define CONFIG_BT_MAX_NUM_OF_PERIPHERAL 0 // Support gap broadcaster role #define MYNEWT_VAL_BLE_ROLE_BROADCASTER 0 // Support gap central role #define MYNEWT_VAL_BLE_ROLE_CENTRAL 1 // Support gap observser role #define MYNEWT_VAL_BLE_ROLE_OBSERVER 1 // Support gap peripheral role #define MYNEWT_VAL_BLE_ROLE_PERIPHERAL 0 // Support acl buffer counts receiving data from controller #define MYNEWT_VAL_BLE_TRANSPORT_ACL_FROM_LL_COUNT 5 // Support acl buffer receiving data from controller #define MYNEWT_VAL_BLE_TRANSPORT_ACL_SIZE 27 // Support hci events counts #define MYNEWT_VAL_BLE_TRANSPORT_EVT_COUNT 4 // Support hci discardable events counts #define MYNEWT_VAL_BLE_TRANSPORT_EVT_DISCARDABLE_COUNT 6 // Support l2cap buffer counts #define MYNEWT_VAL_MSYS_1_BLOCK_COUNT 4 // Support l2cap buffer size #define MYNEWT_VAL_MSYS_1_BLOCK_SIZE 120 // BLE Controller RF RX Buffer Number (must be a power of 2) #define CONFIG_BLE_CONTROLLER_RF_RX_BUF_NUM 16 // BLE Controller RF TX Buffer Number (must be a power of 2) #define CONFIG_BLE_CONTROLLER_RF_TX_BUF_NUM 16 // BLE Controller Packet Encrypt Time (unit:us) #define CONFIG_BLE_CONTROLLER_LL_ENC_TIME 100 // BLE Controller More Data Number #define CONFIG_BLE_CONTROLLER_MORE_DATA_NUM 6 // BLE Controller WhiteList Number #define CONFIG_BLE_CONTROLLER_WIHTELIST_NUM 1 // BLE Controller Resolving List Number #define CONFIG_BLE_CONTROLLER_RESOLVELIST_NUM 0 // BLE Controller Master Link Margin (unit:0.625ms) #define CONFIG_BLE_CONTROLLER_MASTER_LINK_MARGIN 6 // Use Chip unique Mac Address #define CONFIG_USER_CHIP_MAC_ADDR 1 // TX power // <0=> 0dBm // <1=> 1dBm // <2=> 2dBm // <3=> 3dBm // <4=> 4dBm // <5=> 5dBm // <6=> 6dBm // <7=> 7dBm // <8=> 8dBm // <9=> 9dBm #define CONFIG_BT_CTLR_TX_POWER_DFT 0 // BLE Timing Debug #define CONFIG_BT_CTLR_LINK_LAYER_DEBUG 0 // // ========================================================== BLE Resource // ========================================================== // BLE Security Manager // Security level selection #define MYNEWT_VAL_BLE_SM_SC_LVL 0 // Support SM legacy pair #define MYNEWT_VAL_BLE_SM_LEGACY 0 // Support SM security pair #define MYNEWT_VAL_BLE_SM_SC 0 // IO capability // <0=> DisplayOnly // <1=> DisplayYesN // <2=> KeyboardOnly // <3=> NoInputNoOutput // <4=> KeyboardDisplay Only #define CONFIG_HS_IO_CAPABILITY 3 // Support SM Bonding #define MYNEWT_VAL_BLE_SM_BONDING 0 // Support SM MITM #define MYNEWT_VAL_BLE_SM_MITM 0 // Support SM oob #define MYNEWT_VAL_BLE_SM_OOB_DATA_FLAG 0 // Support persist store key #define MYNEWT_VAL_BLE_STORE_CONFIG_PERSIST 0 // Support maximun store bonded devices #define MYNEWT_VAL_BLE_STORE_MAX_BONDS 1 // Support maximun store bonded device's cccd #define MYNEWT_VAL_BLE_STORE_MAX_CCCDS 8 // Support host software rpa feature #define MYNEWT_VAL_HOST_SOFTWARE_RPA 0 // // ========================================================== BLE Security Manager // ========================================================== // BLE Services // // ========================================================== BLE Services // Flash KVStore Area // ========================================================== // Configure Key-Value-Store (kvstore) Area on Flash // Start Address #define CONFIG_SETTINGS_START_ADDR 0x78000 // Number of Flash Sectors (>=2) // 1 flash sector means 4096 Bytes #define CONFIG_SETTINGS_SECTOR_NUM 4 // // ========================================================== Flash KVStore Area // Flash Map // ========================================================== // Support BootLoader #define CONFIG_BOOT_ENABLE 0 // Flash Image Size // <0xFF000=> 1M // <0x7F000=> 512K // <0x3F000=> 256K #define CONFIG_FLASH_MAP_SIZE 520192 // Support Back-up area in OTA model #define CONFIG_OTA_IN_APP 0 // // ========================================================== Flash Map //*** <<< end of configuration section >>> *** #endif /* SDK_CONFIG_H */