PSoC™ 6 Forum Discussions
When I configure the interrupt for a watchdog on the PSOC 6 CM0+ core, the compiler generates a file called cyfitter_sysint.h. Here are the file contents I would like some clarification on:
/* WDTIsr */
#define WDTIsr__INTC_CORTEXM0P_ASSIGNED 1
#define WDTIsr__INTC_CORTEXM0P_MUX 8u
#define WDTIsr__INTC_CORTEXM0P_PRIORITY 3u
#define WDTIsr__INTC_NUMBER 22u
#define WDTIsr_INTC_CORTEXM0P_ASSIGNED 1
#define WDTIsr_INTC_CORTEXM0P_MUX 8u
#define WDTIsr_INTC_CORTEXM0P_PRIORITY 3u
#define WDTIsr_INTC_NUMBER 22u
Q1) Why are there 2 versions of the same #define, one with a single underscore and one with a double underscore?
Q2) What is the purpose of the "ASSIGNED" define, it is not used anywhere in the firmware?
Show LessI have been working on adding over-the-air (OTA) device firmware update (DFU) via BLE to a system that uses a CYBLE-416045-02 module.
My main application program is now at about 500K (at least that is what is reported in the output at the end of a build). Since this already contained FreeRTOS, emWin, and a working BLE stack, I thought I was in pretty good shape WRT getting every thing to fit in the 1M flash space. BUT... when I tried to convert this main application to a DFU App1 program by switching to the DFU linker scripts and adding post_build_core1.bat to the post build user commands, its size seems to have exploded.
I have done everything I could think of to make both the App0 bootloader and the App1 main program fit in flash. I edited the flash allocations in the dfu linker scripts to give the App0 bootloader the bare minimum it needed and gave the freed up flash to App1. But I still can not get the App1 to fit in the ~725K region of flash that I have available.
Am I mistaken in my belief that switching to the dfu linker scripts caused the flash image size to suddenly exploded by over 250K? Is there anyway to reduce this expansion? I have already tried size optimization, but that still doesn't give me enough relief.
Any suggestions/insights would be welcome.
Thanks,
Ed H.
Show LessI am using the Example project for PSoC 6 EEPROM (CE195313). I changed the device of the project to CYBLE-416045-02.
I edit the linker files to adjust the EEPROM Flash memory
for CM0: em_eeprom (rx) : ORIGIN = 0x14000000, LENGTH = 0x4000
for CM4: em_eeprom (rx) : ORIGIN = 0x14004000, LENGTH = 0x4000
Now I added BLE Component with All profiles hosted on CM4. Compiling fails!!
I am using PDL 3.1.0.
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:38:46: error: conflicting types for 'cy_ble_stackMemoryRam'
CY_ALIGN(sizeof(uint32_t)) CY_NOINIT uint8_t cy_ble_stackMemoryRam[CY_BLE_STACK_RAM_SIZE];
^
In file included from Generated_Source\PSoC6\pdl\middleware\ble\cy_ble_event_handler.h:21:0,
from Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:16:
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.h:643:21: note: previous declaration of 'cy_ble_stackMemoryRam' was here
extern uint8_t *cy_ble_stackMemoryRam;
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c: In function 'Cy_BLE_Init':
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:148:28: error: 'cy_stc_ble_config_t {aka struct <anonymous>}' has no member named 'callbackFunc'
if(cy_ble_configPtr->callbackFunc != NULL)
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:150:51: error: 'cy_stc_ble_config_t {aka struct <anonymous>}' has no member named 'callbackFunc'
Cy_BLE_ApplCallback = cy_ble_configPtr->callbackFunc;
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:152:9: error: 'cy_ble_eventHandlerFlag' undeclared (first use in this function)
cy_ble_eventHandlerFlag = 0u;
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:152:9: note: each undeclared identifier is reported only once for each function it appears in
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:173:42: error: 'CY_BLE_ADVERTISING_FAST' undeclared (first use in this function)
cy_ble_advertisingIntervalType = CY_BLE_ADVERTISING_FAST;
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:180:9: warning: implicit declaration of function 'Cy_BLE_ServiceInit' [-Wimplicit-function-declaration]
Cy_BLE_ServiceInit();
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:183:9: error: 'cy_ble_pendingFlashWrite' undeclared (first use in this function)
cy_ble_pendingFlashWrite = 0u;
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:184:22: error: 'cy_ble_peerBonding' undeclared (first use in this function)
The command 'arm-none-eabi-gcc.exe' failed with exit code '1'.
(void)memset(cy_ble_peerBonding, (int8_t)CY_BLE_GAP_BONDING_NONE, sizeof(cy_ble_peerBonding));
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c: In function 'Cy_BLE_Enable':
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:296:80: error: 'cy_stc_ble_config_t {aka struct <anonymous>}' has no member named 'flashStorage'
.bleStackFlashPointer = (const uint8_t*)cy_ble_configPtr->flashStorage->stackFlashptr,
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:390:13: warning: implicit declaration of function 'Cy_BLE_SetState' [-Wimplicit-function-declaration]
Cy_BLE_SetState(CY_BLE_STATE_INITIALIZING);
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:390:29: error: 'CY_BLE_STATE_INITIALIZING' undeclared (first use in this function)
Cy_BLE_SetState(CY_BLE_STATE_INITIALIZING);
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:393:27: error: 'cy_ble_connState' undeclared (first use in this function)
(void)memset(&cy_ble_connState, 0, sizeof(cy_ble_connState));
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:397:13: warning: implicit declaration of function 'Cy_BLE_SetAdvertisementState' [-Wimplicit-function-declaration]
Cy_BLE_SetAdvertisementState(CY_BLE_ADV_STATE_STOPPED);
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:397:42: error: 'CY_BLE_ADV_STATE_STOPPED' undeclared (first use in this function)
Cy_BLE_SetAdvertisementState(CY_BLE_ADV_STATE_STOPPED);
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c: In function 'Cy_BLE_DeepSleepCallback':
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:795:16: warning: implicit declaration of function 'Cy_BLE_GetState' [-Wimplicit-function-declaration]
if(Cy_BLE_GetState() == CY_BLE_STATE_INITIALIZING)
^
Generated_Source\PSoC6\pdl\middleware\ble\cy_ble.c:795:37: error: 'CY_BLE_STATE_INITIALIZING' undeclared (first use in this function)
if(Cy_BLE_GetState() == CY_BLE_STATE_INITIALIZING)
How Can I fix this?
Show LessHello
●I understand that some devices in psoc6 can be developed in psoc creator. Is PSoC Creator 4.3 version compatible?
●Where can I find a list of PSoC 6 available in PSoC Creator?
Best Regards
Hayato
Show LessHi,
I am using PSoC Creator 4.3 and have created two projects which I would like to share the same TopDesign file with, but however I could not find a way to include external TopDesign in my project like what I can do with Design Wide Resources. Is there anyway I can achieve this? Thanks!
Show LessHello,
So I'm groing to use my PSoC 6.3 bluetooth low energy, for a app project. But i was wondering if there is any issues useing the Low energy bluetooth? Can you switch between low energy and normal on the PSoC? and can it connect to, lets say a bluetooth connection 4.2, there isn''t running on low energy?
Show LessSo I'm going to work on a project, where me and some friends need a bluetooth device where we connect a smartphone appplication and a remote to this device, through bluetooth connection. Here my question is: How many connection does the PSoC 63 take at the same time? I need minimum 2 connected at the same time. The only thing i found was maybe a max of 4?, but i just want to make sure.
Show Less