PSoC™ 6 Forum Discussions
Dear support team,
I'm studing CY8CKIT-062-BLE demokit, but i can't find "Beacon Scanner APP” installation package in CHINA application store for my Android phone. so would you please give me a installation package?thanks!
Show LessHi,
I am following the get started guide for Optiga Trust IoT Security Development Kit.
After choosing CYSBSYSKIT-DEV-01 BSP, there is no option to select "<Unspecified group> Secure Element Anycloud MQTT Client demonstration".
Please advise if there is a separate download for "<Unspecified group> Secure Element Anycloud MQTT Client demonstration".
Regards,
Pong
Show Less
I am programming UART on CY8C6247BZI-D54 microcontroller. I had used external interrupt for that. I define ISR(Interrupt Subroutine) for that and changed interrupt priority to 0. when I debug it, it's always stuck in ISR.
So can you send me sample code for external interrupt in UART!!
Show LessI'm using a PSoC63, PSoC Creator 4.4 and have based my project on CE216767 to get a DFU OTA. A colleague got this example working and I'm using his copy. All fine until I added my application code, which worked fine as a "bare bones" app (i.e. no BLE and no DFU. Both App0 and App1 in the code I inherited are running the BLE exclusively in the CM0p, and both run their applications in the CM0p. Once I added the same functionality to App1, I got a build error "Build error: region `flash_app1_core0' overflowed by 11568 bytes" in dfu_cm0p.ld
Assuming that this just needed a small change to the linker file, which was originally
flash_app0_core0 (rx) : ORIGIN = 0x10000000, LENGTH = 0x10000
flash_app0_core1 (rx) : ORIGIN = 0x10010000, LENGTH = 0x30000
flash_app1_core0 (rx) : ORIGIN = 0x10040000, LENGTH = 0x30000
flash_app1_core1 (rx) : ORIGIN = 0x10070000, LENGTH = 0x10000
and tried to increase the size of flash_app1_core0 by changing the last two to
flash_app1_core0 (rx) : ORIGIN = 0x10040000, LENGTH = 0x38000
flash_app1_core1 (rx) : ORIGIN = 0x10078000, LENGTH = 0x10000
but now I am getting
Merge error: section at 0x10071534 from C:PSoC Creator\DFU-OTA\App1.cydsn\CortexM4\ARM_GCC_541\Debug\App1_signed.elf overlaps section at 10071600 from C:\PSoC Creator\DFU-OTA\App1.cydsn\CortexM0p\ARM_GCC_541\Debug\App1.elf
(I have redacted the full path names to make it easier to read).
Please can you tell me what I have done wrong?
Show LessI am currently using PSoC 61xx series MCU. (CY8C6137BZI-F54)
1.) What is the hardware buffer size for SPI? I am unable to find it in the datasheet. If it is software based, from where can I get the detailed functionality?
2.) With my main clock configured to 150MHz and Peri Clock to 75MHz, I am able to get a SPI clock speed of 15MHz by setting Data Rate to 15000 kbps and Oversample to 5. Setting Oversample to 4 decreases the rate to 9375 kbps. Is this the maximum limit of SPI, or is there a way to configure it to higher speeds?
Thank you.
Show LessHi All,
I have try to port the I2C program for I2C which is proven working on M4 CPU over to M0 CPU to reserve M4 for wireless connectivity tasks.
I have found the same I2C program is not working on M0 core (Peripheral device initialisation on M0 core has no problem) but is working on M4 core. PDL library is used in both.
I have observe the I2C electrical waveform on scope and found the only difference between M0 and M4 is there is no further I2C transmissions after very first byte of the I2C device address on M0. I test out the I2C communication using an I2C EEPROM 24lc128. The electrical waveform shows /ACK from EEPROM but there is no more communication after that.
Single step debug always show same problem of timeout after the very 1st byte which cause I2C communication to break down. I have attached archive file with 2 separate folders named CM0 and CM4 for your reference, similar generated source files for both are also attached as the device configuration between older working I2C on M4 and non working I2C on M0 are different. Attachment is 38MB.
Please advise.
Share Link https://1drv.ms/u/s!AqUm9KKUVNnphe5Zffg40tcflj05zg?e=GdmpjN
Thank and Best regards
CW
Show Less
Is it possible to implement a multi-master SPI design and access the MISO, MOSI, SCLK signals before they go to I/O pins?
It appears possible to route some SPI signals through SMART I/O. Examples only show the SPI Select lines routing through SMART I/O. Is it possible to route SPI data and clock lines through SMART I/O without first going off chip? Reference "CE009976_SPI_SS_Inversion_with_SmartIO01" for PSoC 4. Note, I'm attempting to implement using PSoC 61, which should work the same.
When attempting to route SPI data lines through a SMART I/O, the error is "Unable to find a valid placement for pins and fixed-function blocks. See the Digital Placement's Detailed placement messages section in the report file for details". I'm interpreting that message as, "The SPI component requires dedicated I/O. Don't try to route it otherwise". Am I wrong?
Greg
Show LessI'm trying to construct a 'simple' BLE Beacon app that updates the constant Advertisement packets with non-constant data on-the-fly. I tried to do this update of advertising data inside the StackEventHandler() code when I finished a Tx of this data. I used Cy_BLE_GAPP_UpdateAdvScanData() which IS needed if the currently in advertising mode. However, with extensive debugging I found that using Cy_BLE_GAPP_UpdateAdvScanData() while actively in advertising mode, can cause data errors that end up being broadcast with a good packet CRC. This corrupted data is received at the scanning BLE device with a 'good' packet CRC.
I detail this discovery in the thread link: PSoC6-with-BLE-issue-How-do-I-automatically-throw-away-corrupted packets
With help from P Yugandhar, he convinced me that I could not update the advertising data on-the-fly WITHOUT first stopping advertisement.
I modified my app to first stop advertising data every time I needed to update the advertising data (not my preferred method).
Steps:
- Get event to require a advert data update.
- Stop the Advert mode.
- Test for Advert mode stopped.
- If Advert mode stopped, Update advert data
- If Advert mode not stopped, go to Step 3.
- Issue an Cy_BLE_GAPP_UpdateAdvScanData() call
- Re-Start the Advert mode.
- Go to Step 1.
This works. HOWEVER ...
Step 6 can apparently be totally eliminated!!!
It appears that the Advert data can be updated 'freely' if the Advert mode is stopped.
Therefore ... what purpose does the Cy_BLE_GAPP_UpdateAdvScanData() API call have if not to allow for accurate Advert data updates ON-THE-FLY?
Show LessI am trying to setup UART DMA to capture float values from a sensor and stream it through UART to terminal.
I setup DMA data size to word, and the UART buffer to 30, so that I can read 30 words at a time.
If I don't use DMA and directly stream in and out the float values using get():
Rx_read = UART_2_Get();
UART_Put(Rx_read);
it works fine.
But my process fails using DMA:
float DMA_buffer[30];
DMA_Rx_Start((uint32_t *)&UART_HW->RX_FIFO_RD, DMA_buffer);
i then tried to use 1 byte buffer
but still I can't get data that can be formatted.
any suggestions how to capture float on UART DMA ?
thanks
Show Less