Abraham Marsen / Mbed 2 deprecated Jazz_Hands_Nordic

Dependencies:   mbed

Committer:
Grimmkey
Date:
Thu Apr 30 20:46:27 2015 +0000
Revision:
0:b8221deeaa87
Georgia Institute of Technology ECE 4180 Spring 2015 Jazz Hands project, Nordic nRF51822 half

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Grimmkey 0:b8221deeaa87 1 /* mbed Microcontroller Library
Grimmkey 0:b8221deeaa87 2 * Copyright (c) 2006-2013 ARM Limited
Grimmkey 0:b8221deeaa87 3 *
Grimmkey 0:b8221deeaa87 4 * Licensed under the Apache License, Version 2.0 (the "License");
Grimmkey 0:b8221deeaa87 5 * you may not use this file except in compliance with the License.
Grimmkey 0:b8221deeaa87 6 * You may obtain a copy of the License at
Grimmkey 0:b8221deeaa87 7 *
Grimmkey 0:b8221deeaa87 8 * http://www.apache.org/licenses/LICENSE-2.0
Grimmkey 0:b8221deeaa87 9 *
Grimmkey 0:b8221deeaa87 10 * Unless required by applicable law or agreed to in writing, software
Grimmkey 0:b8221deeaa87 11 * distributed under the License is distributed on an "AS IS" BASIS,
Grimmkey 0:b8221deeaa87 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Grimmkey 0:b8221deeaa87 13 * See the License for the specific language governing permissions and
Grimmkey 0:b8221deeaa87 14 * limitations under the License.
Grimmkey 0:b8221deeaa87 15 */
Grimmkey 0:b8221deeaa87 16
Grimmkey 0:b8221deeaa87 17 #ifndef _PROJECTCONFIG_H_
Grimmkey 0:b8221deeaa87 18 #define _PROJECTCONFIG_H_
Grimmkey 0:b8221deeaa87 19
Grimmkey 0:b8221deeaa87 20 #include "blecommon.h"
Grimmkey 0:b8221deeaa87 21
Grimmkey 0:b8221deeaa87 22 /*=========================================================================
Grimmkey 0:b8221deeaa87 23 MCU & BOARD SELCTION
Grimmkey 0:b8221deeaa87 24
Grimmkey 0:b8221deeaa87 25 CFG_BOARD is one of the value defined in board.h
Grimmkey 0:b8221deeaa87 26 -----------------------------------------------------------------------*/
Grimmkey 0:b8221deeaa87 27 #define CFG_BOARD BOARD_PCA10001
Grimmkey 0:b8221deeaa87 28 #define CFG_MCU_STRING "nRF51822"
Grimmkey 0:b8221deeaa87 29 /*=========================================================================*/
Grimmkey 0:b8221deeaa87 30
Grimmkey 0:b8221deeaa87 31
Grimmkey 0:b8221deeaa87 32 /*=========================================================================
Grimmkey 0:b8221deeaa87 33 CODE BASE VERSION SETTINGS
Grimmkey 0:b8221deeaa87 34
Grimmkey 0:b8221deeaa87 35 Please do not modify this version number. To set a version number
Grimmkey 0:b8221deeaa87 36 for your project or firmware, change the values in your 'boards/'
Grimmkey 0:b8221deeaa87 37 config file.
Grimmkey 0:b8221deeaa87 38 -----------------------------------------------------------------------*/
Grimmkey 0:b8221deeaa87 39 #define CFG_CODEBASE_VERSION_MAJOR 0
Grimmkey 0:b8221deeaa87 40 #define CFG_CODEBASE_VERSION_MINOR 1
Grimmkey 0:b8221deeaa87 41 #define CFG_CODEBASE_VERSION_REVISION 0
Grimmkey 0:b8221deeaa87 42 /*=========================================================================*/
Grimmkey 0:b8221deeaa87 43
Grimmkey 0:b8221deeaa87 44
Grimmkey 0:b8221deeaa87 45 /*=========================================================================
Grimmkey 0:b8221deeaa87 46 FIRMWARE VERSION SETTINGS
Grimmkey 0:b8221deeaa87 47 -----------------------------------------------------------------------*/
Grimmkey 0:b8221deeaa87 48 #define CFG_FIRMWARE_VERSION_MAJOR 0
Grimmkey 0:b8221deeaa87 49 #define CFG_FIRMWARE_VERSION_MINOR 0
Grimmkey 0:b8221deeaa87 50 #define CFG_FIRMWARE_VERSION_REVISION 0
Grimmkey 0:b8221deeaa87 51 /*=========================================================================*/
Grimmkey 0:b8221deeaa87 52
Grimmkey 0:b8221deeaa87 53
Grimmkey 0:b8221deeaa87 54 /*=========================================================================
Grimmkey 0:b8221deeaa87 55 DEBUG LEVEL
Grimmkey 0:b8221deeaa87 56 -----------------------------------------------------------------------
Grimmkey 0:b8221deeaa87 57
Grimmkey 0:b8221deeaa87 58 CFG_DEBUG Level 3: Full debug output, any failed assert
Grimmkey 0:b8221deeaa87 59 will produce a breakpoint for the
Grimmkey 0:b8221deeaa87 60 debugger
Grimmkey 0:b8221deeaa87 61 Level 2: ATTR_ALWAYS_INLINE is null, ASSERT
Grimmkey 0:b8221deeaa87 62 has text
Grimmkey 0:b8221deeaa87 63 Level 1: ATTR_ALWAYS_INLINE is an attribute,
Grimmkey 0:b8221deeaa87 64 ASSERT has no text
Grimmkey 0:b8221deeaa87 65 Level 0: No debug information generated
Grimmkey 0:b8221deeaa87 66
Grimmkey 0:b8221deeaa87 67 -----------------------------------------------------------------------*/
Grimmkey 0:b8221deeaa87 68 #define CFG_DEBUG (1)
Grimmkey 0:b8221deeaa87 69
Grimmkey 0:b8221deeaa87 70 #if (CFG_DEBUG > 3) || (CFG_DEBUG < 0)
Grimmkey 0:b8221deeaa87 71 #error "CFG_DEBUG must be a value between 0 (no debug) and 3"
Grimmkey 0:b8221deeaa87 72 #endif
Grimmkey 0:b8221deeaa87 73 /*=========================================================================*/
Grimmkey 0:b8221deeaa87 74
Grimmkey 0:b8221deeaa87 75
Grimmkey 0:b8221deeaa87 76 /*=========================================================================
Grimmkey 0:b8221deeaa87 77 GENERAL NRF51 PERIPHERAL SETTINGS
Grimmkey 0:b8221deeaa87 78 -----------------------------------------------------------------------
Grimmkey 0:b8221deeaa87 79
Grimmkey 0:b8221deeaa87 80 CFG_SCHEDULER_ENABLE Set this to 'true' or 'false' depending on
Grimmkey 0:b8221deeaa87 81 if you use the event scheduler or not
Grimmkey 0:b8221deeaa87 82
Grimmkey 0:b8221deeaa87 83 -----------------------------------------------------------------------*/
Grimmkey 0:b8221deeaa87 84 #define CFG_SCHEDULER_ENABLE false
Grimmkey 0:b8221deeaa87 85
Grimmkey 0:b8221deeaa87 86 /*------------------------------- GPIOTE ------------------------------*/
Grimmkey 0:b8221deeaa87 87 #define CFG_GPIOTE_MAX_USERS 1 /**< Maximum number of users of the GPIOTE handler. */
Grimmkey 0:b8221deeaa87 88
Grimmkey 0:b8221deeaa87 89 /*-------------------------------- TIMER ------------------------------*/
Grimmkey 0:b8221deeaa87 90 #define CFG_TIMER_PRESCALER 0 /**< Value of the RTC1 PRESCALER register. freq = (32768/(PRESCALER+1)) */
Grimmkey 0:b8221deeaa87 91 #define CFG_TIMER_MAX_INSTANCE 1 /**< Maximum number of simultaneously created timers. */
Grimmkey 0:b8221deeaa87 92 #define CFG_TIMER_OPERATION_QUEUE_SIZE 2 /**< Size of timer operation queues. */
Grimmkey 0:b8221deeaa87 93 /*=========================================================================*/
Grimmkey 0:b8221deeaa87 94
Grimmkey 0:b8221deeaa87 95
Grimmkey 0:b8221deeaa87 96 /*=========================================================================
Grimmkey 0:b8221deeaa87 97 BTLE SETTINGS
Grimmkey 0:b8221deeaa87 98 -----------------------------------------------------------------------*/
Grimmkey 0:b8221deeaa87 99
Grimmkey 0:b8221deeaa87 100 #define CFG_BLE_TX_POWER_LEVEL 0 /**< in dBm (Valid values are -40, -20, -16, -12, -8, -4, 0, 4) */
Grimmkey 0:b8221deeaa87 101
Grimmkey 0:b8221deeaa87 102 /*---------------------------- BOND MANAGER ---------------------------*/
Grimmkey 0:b8221deeaa87 103 #define CFG_BLE_BOND_FLASH_PAGE_BOND (BLE_FLASH_PAGE_END-1) /**< Flash page used for bond manager bonding information.*/
Grimmkey 0:b8221deeaa87 104 #define CFG_BLE_BOND_FLASH_PAGE_SYS_ATTR (BLE_FLASH_PAGE_END-3) /**< Flash page used for bond manager system attribute information. TODO check if we can use BLE_FLASH_PAGE_END-2*/
Grimmkey 0:b8221deeaa87 105 #define CFG_BLE_BOND_DELETE_BUTTON_NUM 0 /**< Button to press to delete bond details during init */
Grimmkey 0:b8221deeaa87 106
Grimmkey 0:b8221deeaa87 107 /*------------------------------ SECURITY -----------------------------*/
Grimmkey 0:b8221deeaa87 108 #define CFG_BLE_SEC_PARAM_MITM 0 /**< Man In The Middle protection not required. */
Grimmkey 0:b8221deeaa87 109 #define CFG_BLE_SEC_PARAM_IO_CAPABILITIES BLE_GAP_IO_CAPS_NONE /**< No I/O capabilities. */
Grimmkey 0:b8221deeaa87 110 #define CFG_BLE_SEC_PARAM_OOB 0 /**< Out Of Band data not available. */
Grimmkey 0:b8221deeaa87 111 #define CFG_BLE_SEC_PARAM_MIN_KEY_SIZE 7 /**< Minimum encryption key size. */
Grimmkey 0:b8221deeaa87 112 #define CFG_BLE_SEC_PARAM_MAX_KEY_SIZE 16
Grimmkey 0:b8221deeaa87 113
Grimmkey 0:b8221deeaa87 114 /*--------------------------------- GAP -------------------------------*/
Grimmkey 0:b8221deeaa87 115 #define CFG_GAP_APPEARANCE BLE_APPEARANCE_GENERIC_TAG
Grimmkey 0:b8221deeaa87 116 #define CFG_GAP_LOCAL_NAME "nRF5x"
Grimmkey 0:b8221deeaa87 117
Grimmkey 0:b8221deeaa87 118 #define CFG_GAP_CONNECTION_MIN_INTERVAL_MS 50 /**< Minimum acceptable connection interval */
Grimmkey 0:b8221deeaa87 119 #define CFG_GAP_CONNECTION_MAX_INTERVAL_MS 500 /**< Maximum acceptable connection interval */
Grimmkey 0:b8221deeaa87 120 #define CFG_GAP_CONNECTION_SUPERVISION_TIMEOUT_MS 4000 /**< Connection supervisory timeout */
Grimmkey 0:b8221deeaa87 121 #define CFG_GAP_CONNECTION_SLAVE_LATENCY 0 /**< Slave Latency in number of connection events. */
Grimmkey 0:b8221deeaa87 122
Grimmkey 0:b8221deeaa87 123 #define CFG_GAP_ADV_INTERVAL_MS 25 /**< The advertising interval in miliseconds, should be multiply of 0.625 */
Grimmkey 0:b8221deeaa87 124 #define CFG_GAP_ADV_TIMEOUT_S 180 /**< The advertising timeout in units of seconds. */
Grimmkey 0:b8221deeaa87 125 /*=========================================================================*/
Grimmkey 0:b8221deeaa87 126
Grimmkey 0:b8221deeaa87 127
Grimmkey 0:b8221deeaa87 128 /*=========================================================================
Grimmkey 0:b8221deeaa87 129 VALIDATION
Grimmkey 0:b8221deeaa87 130 -----------------------------------------------------------------------*/
Grimmkey 0:b8221deeaa87 131 #if CFG_BLE_TX_POWER_LEVEL != -40 && CFG_BLE_TX_POWER_LEVEL != -20 && CFG_BLE_TX_POWER_LEVEL != -16 && CFG_BLE_TX_POWER_LEVEL != -12 && CFG_BLE_TX_POWER_LEVEL != -8 && CFG_BLE_TX_POWER_LEVEL != -4 && CFG_BLE_TX_POWER_LEVEL != 0 && CFG_BLE_TX_POWER_LEVEL != 4
Grimmkey 0:b8221deeaa87 132 #error "CFG_BLE_TX_POWER_LEVEL must be -40, -20, -16, -12, -8, -4, 0 or 4"
Grimmkey 0:b8221deeaa87 133 #endif
Grimmkey 0:b8221deeaa87 134 /*=========================================================================*/
Grimmkey 0:b8221deeaa87 135
Grimmkey 0:b8221deeaa87 136 #endif /* _PROJECTCONFIG_H_ */