This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi .,
I am working on the platform development , I am currently using cc2650 as ble slave device and EFMwg is acting as a master ,
I want to configure cc2650 from master (EFM32wg) based on the application requirement vis spi.,
Is it possible to do from EFM32 , If so which application shall I use.,
Hi.,
Please let me know the difference between SNP and Host test app.,
Since there is limited feature supported by SNP .,Shall I use the host application.Is it suits my requirement .,
In addition to what JXS suggested, I want to clarify my previous post: there are limitations to the SNP project, but it sounds like it may meet your needs, and is far easier to interface than host test. In short, with host test your application processor needs to interface completely over HCI layer and handle all relevant BLE events that are passed back to it. with SNP, a lot is abstracted away/handled for you.
Hi.,
Could you please provide some solution, Currently this is blocker for my project.,
Hi,
There are prebuil SNP hex files included within the accessories folder of the BLE stack install directory. Please try to flash one of these images to your device and see if it is working, from there we can determine the root cause of the issue you are encountering.
In any case, the crash you are seeing is likely due to a driver configuration issue. Would you mind posting your project settings?
Lastly, what package are you using (7x7, 5x5,etc)?
Hi Sean.,
While debugging I found the problem comes from the following api. ICALL_HOOK_ABORT_FUNC();,
static ICall_Errno ICall_primRegisterApp(ICall_RegisterAppArgs *args)
{
size_t i;
ICall_TaskEntry *taskentry = ICall_newTask(Task_self());
ICall_CSState key;
if (!taskentry)
{
/* abort */
ICALL_HOOK_ABORT_FUNC();
return ICALL_ERRNO_NO_RESOURCE;
}
key = ICall_enterCSImpl();
for (i = 0; i < ICALL_MAX_NUM_ENTITIES; i++)
{
if (ICall_entities[i].service == ICALL_SERVICE_CLASS_INVALID_ENTRY)
{
/* Use this entry */
ICall_entities[i].service = ICALL_SERVICE_CLASS_APPLICATION;
ICall_entities[i].task = taskentry;
ICall_entities[i].fn = NULL;
args->entity = (ICall_EntityID) i;
args->msgsem = taskentry->sem;
ICall_leaveCSImpl(key);
return ICALL_ERRNO_SUCCESS;
}
}
/* abort */
ICALL_HOOK_ABORT_FUNC();
ICall_leaveCSImpl(key);
return ICALL_ERRNO_NO_RESOURCE;
}
HI.,
Find the predefined symbols for SimpleNP
USE_ICALL
xPOWER_SAVING
GAPROLE_TASK_STACK_SIZE=520
HEAPMGR_SIZE=4096
xTI_DRIVERS_LCD_INCLUDED
xTI_DRIVERS_SPI_DMA_INCLUDED
CC2650_HOSTTESTAPP
xdc_runtime_Assert_DISABLE_ALL
xdc_runtime_Log_DISABLE_ALL
CC26XXWARE
NPI_USE_SPI
CC26XX
ICALL_MAX_NUM_ENTITIES=6
ICALL_MAX_NUM_TASKS=3
MAX_NUM_BLE_CONNS=1
SWO_DEBUG
NO_OSAL_SNV
HEAPMGR_METRICS
MAX_PDU_SIZE=27
ccs
Hi Sean.,
I didnt change any thing ., I am trying to understand the flow with the default code.,
I am going to change only the spi pin and spi port from spi 1 to spi0 confguration
Following pin configuration only
// SPI Board
#define Board_SPI0_MISO IOID_21 //GPIO_28
#define Board_SPI0_MOSI IOID_22 //GPIO_27
#define Board_SPI0_CLK IOID_20 //GPIO_29
#define Board_SPI0_CSN PIN_UNASSIGNED //GPIO_30
//#define Board_SPI0_MISO IOID_8 /* RF1.20 */
//#define Board_SPI0_MOSI IOID_9 /* RF1.18 */
//#define Board_SPI0_CLK IOID_10 /* RF1.16 */
#define Board_SLAVE_RDY IOID_9
#define Board_MASTER_RDY IOID_19 /* RF1.14, SPI0_CSN set by LCD */
Hi Sean.,
Ok, But today I have migrated to IAr tool chain it compiles and I could able flash and
establish the communication between Master anfd Slave.,Here also I have done the same changes (SPI port and pin config settings).,
Errors: none
Warnings: none
Link time: 0.41 (CPU) 0.41 (elapsed)
SNPAppFlashROM_SPI.out
Converting
ielftool.exe --ihex --verbose C:\ti\simplelink\ble_cc26xx_2_01_00_44423\Projects\ble\SimpleNP\CC26xx\IAR\Application\CC2640\FlashROM SPI\Exe\SNPAppFlashROM_SPI.out C:\ti\simplelink\ble_cc26xx_2_01_00_44423\Projects\ble\
SimpleNP\CC26xx\IAR\Application\CC2640\FlashROM SPI\Exe\SNPAppFlashROM_SPI.hex
IAR ELF Tool V9.18.12.142 [BUILT at IAR]
Copyright 2007-2015 IAR Systems AB.
Loading C:\ti\simplelink\ble_cc26xx_2_01_00_44423\Projects\ble\SimpleNP\CC26xx\IAR\Application\CC2640\FlashROM SPI\Exe\SNPAppFlashROM_SPI.out
Saving ihex file to C:\ti\simplelink\ble_cc26xx_2_01_00_44423\Projects\ble\SimpleNP\CC26xx\IAR\Application\CC2640\FlashROM SPI\Exe\SNPAppFlashROM_SPI.hex
Total number of errors: 0
Total number of warnings: 0
Hi Sean.,
Will the SNP support multiple gap roles or combination of gap roles ,
If so what are the steps to get the stack.,
Regards
Nagarajan
Hi Sean.,
Can you please suggest some solution .,This is show stopper for my project.,
Hi.,
It means It should work with standard BLE commands,
Since we had our own stack which was developed for EM9301 , so as you said it should work with cc2650 too except Vendor specific commands am I right ?
And also I have few questions ,
1. Do I need to modify/implement any code except mentioned in the wiki.,http://processors.wiki.ti.com/index.php/BLE_HostTest_Add_Cmds ?
2. Then I no need to compile the stack with bond manager feature ,It has been handled with SIG commands. ?
Since we have less time so we have to make the cc2650 binary as stable ,Meaning no need to add or modify in the future.
Intension is to handle all the feature implementations in Host MCU.
Hi Sean.,
Even if I increased the stack size, when i enabled the -DGAP_BOND_MGR., I am always getting the same compiler error.,
If I disabled the bond manager I am not getting error message.,
/************************************When Enabled the bond manager ******************************************************/
/* BLE Host Build Configurations */
/* -DHOST_CONFIG=PERIPHERAL_CFG */
/* -DHOST_CONFIG=CENTRAL_CFG */
/* -DHOST_CONFIG=PERIPHERAL_CFG+OBSERVER_CFG */
/* -DHOST_CONFIG=CENTRAL_CFG+BROADCASTER_CFG */
-DHOST_CONFIG=PERIPHERAL_CFG+CENTRAL_CFG
/* GATT Database being off chip*/
-DGATT_DB_OFF_CHIP
/* GAP Privacy Feature */
/* -DGAP_PRIVACY */
-DGAP_PRIVACY_RECONNECT
/* Include GAP Bond Manager */
-DGAP_BOND_MGR
/* Host Build Options */
-DL2CAP_CO_CHANNELS
/* -DGATT_NO_SERVICE_CHANGED */
/* Include Transport Layer (Full or PTM) */
/* -DHCI_TL_NONE */
/* -DHCI_TL_PTM */
-DHCI_TL_FULL
/* BLE Core Spec V4.1 Controller Feature Partition Build Configuration. Comment out to use default Controller Configuration */
-DCTRL_V41_CONFIG=PING_CFG+SLV_FEAT_EXCHG_CFG+CONN_PARAM_REQ_CFG+MST_SLV_CFG
Error[Lp011]: section placement failed
unable to allocate space for sections/blocks with a total estimated minimum size of 0x14c08 bytes (max align 0x4) in <[0x00009000-0x0001efff]> (total uncommitted space 0x13fd0).
Error[Lp011]: section placement failed
unable to allocate space for sections/blocks with a total estimated minimum size of 0x55e bytes (max align 0x4) in <[0x200044d0-0x200048e7]> (total uncommitted space 0x418).
Error[Lp021]: the destination for compressed initializer batch "P2-1" is placed at an address that is dependent on the size of the batch, which is not allowed when using packbits compression. Consider using
"initialize by copy with packing = zeros" (or none) instead.
/*********************************************With Out Bond Manager **********************************************************************/
/* BLE Host Build Configurations */
/* -DHOST_CONFIG=PERIPHERAL_CFG */
/* -DHOST_CONFIG=CENTRAL_CFG */
/* -DHOST_CONFIG=PERIPHERAL_CFG+OBSERVER_CFG */
/* -DHOST_CONFIG=CENTRAL_CFG+BROADCASTER_CFG */
-DHOST_CONFIG=PERIPHERAL_CFG+CENTRAL_CFG
/* GATT Database being off chip*/
-DGATT_DB_OFF_CHIP
/* GAP Privacy Feature */
/* -DGAP_PRIVACY */
-DGAP_PRIVACY_RECONNECT
/* Include GAP Bond Manager */
/*-DGAP_BOND_MGR */
/* Host Build Options */
-DL2CAP_CO_CHANNELS
/* -DGATT_NO_SERVICE_CHANGED */
/* Include Transport Layer (Full or PTM) */
/* -DHCI_TL_NONE */
/* -DHCI_TL_PTM */
-DHCI_TL_FULL
/* BLE Core Spec V4.1 Controller Feature Partition Build Configuration. Comment out to use default Controller Configuration */
-DCTRL_V41_CONFIG=PING_CFG+SLV_FEAT_EXCHG_CFG+CONN_PARAM_REQ_CFG+MST_SLV_CFG
Loading C:\ti\simplelink\ble_cc26xx_2_01_00_44423\Projects\ble\HostTest\CC26xx\IAR\Stack\CC2640\FlashROM\Exe\HostTestStackFlashROM.out
Saving ihex file to C:\ti\simplelink\ble_cc26xx_2_01_00_44423\Projects\ble\HostTest\CC26xx\IAR\Stack\CC2640\FlashROM\Exe\HostTestStackFlashROM.hex
Total number of errors: 0
Total number of warnings: 0
/****************************************************************************************************/
Please let me know do i need to configure some thing for bond manager ?
Regards
Nagarajan
Hi Sean.,
I Have tried many times as you said still I am getting the same error.,
Mean while can you please clarify the TL packet format .,
If I use the same packet format what you have mention for SNP Encapsulated HCI Command (0x04)., ? Will it work.,