PSoC™ 4 Forum Discussions
Hello people:
I am Martin Ortuño from Mexico, I'm new in this PSoC Community.
Well... righ now I have problems with my recent acquisition, the PSoC CY8CKIT-049-42xx, I've been trying some tutorials here and in other communities, in this moments I'm trying to probe the UART Communication by sending a char from a Serial Monitor ( 232Analyzer) in my computer and then sending a char from the PSoC Prototyping kit to the Computer. I am using the UART v2.30 from the Creator 3.1, a digital output for a LED, and my bootloadable module.
Then I set the pin for the serial communication and for the LED in the board. Finally I Build the Project, then write the following code:
#include <project.h>
char datoRecibido;
CY_ISR(InteruptRx)
{
datoRecibido = UART_GetChar();
}
int main()
{
CyGlobalIntEnable;
UART_Start();
isrRx_StartEx(InteruptRx);
for(;;)
{
if(datoRecibido == '1')
{
LED_Write(1);
UART_PutChar('H');
}
if(datoRecibido == '0')
{
LED_Write(0);
}
}
}
This code is downloaded to the PSoC just fine; however, when I try to put a "1" from the 232Analyzer, the PSoC doesn't send the message back.
I will appreciate all your help.
Thanks.
Show LessHi everyone,
I am using the CY8CKIT-042 pioneer kit and PSOC Creator 3.2 SP1 to develop my first PSOC application.
Firstly, I create an example project - BLE HID mouse, after doing the Build and Program, the kit works fine and the Putty on PC can receive the debug message.
And when I create a new project and revise the _write() for using printf() function (refer to the debug.c of example project), when I do the Debug, the firmware will be frozen at printf(), I found it will run into the infinite loop CY_ISR() in Cm0Start.c.
I tried the puts() function, it frozen too; It seems to happen when I called the function of stdio.h.
I have checked the Build Settings of the new project, it is same with the example project.
please see the attached main.c.
Aaron Deng
Show LessI'm trying to advertise a 4 byte value over BLE, which contains RGBW color values that I can use to customize the appearance of the device in the found devices table.
I can add the 4 bytes to the advertisement or scan response packet under 'Service Data', and read it in iOS without any problem. Really nice.
But now I'd like to change the Service Data inside the advertisement or scan response packet.
1. How can this be done programmatically? Where can I find an API listing and more documentation on how to set any of those values programmatically?
2. How can I set those values if my setup include a Bootloader and Bootloadable program, where the BLE CSD is in the Bootloader?
3. Should I use the advertisement or scan response packet to store writable data? I read somewhere that the Scan Response packet should not be changed. However, I cannot put the device name (that I can change as well) and the service data in the same packet, it would be too big. That's why I left the device name in the advertisement packet and put the Service Data (including the Service UUID) inside the Scan Response packet. Good practice?
Show LessHello,
I am new to CY8CKIT-042-BLE and I want to test UART on the CY8C4247LQI-BL483 module. I tried to use an example project SCB_UARTComm and successfully uploaded to the chip. Then I connected it to the terminal on PC and received nonsensical characters instead of the text that it should received. Things like baud rate, data bits, parity etc. are correct. I also tried to update the kit using PSoC Programmer to the version 2.12. Does anyone know what can be the problem?
Thanks,
Jan
Show LessAccording to the 'PSoC Creator Component Datasheet, Bluetooth Low Energy (BLE)
2.0' document, the CyBle_GappStartAdvertisement() starts advertisement and: "On start of advertisement, GAP Peripheral receives the CYBLE_EVT_GAPP_ADVERTISEMENT_START_STOP event."
However, that event is not being triggered. The device is configured for Peripheral.
Anyone have any idea why that event is not being triggered?
Thank you,
Tim
P.S. In regard to a previous post, it is apparently impossible to determine what the 128 bit UUID is for configured services or characteristics.
Hi,
I finally got around to using my BLE explorer kit, and am finding it very hard to stay connected between my device and the app. The device disconnects from the app after a few minutes or less, and cannot be reconnected unless power is cycled. Any idea why this might be? I am just trying to use the Find Me example. I have another BLE scanner software that has the same trouble.
The kit itself is older, but I have updated the kit firmware already.
Regards,
Tom
Show LessHi, I'm wondering if the new PSoC4/PRoC BLE modules are also able to use "classic" bluetooth communication? I know that both systems use identical/similar radio hardware, but that the modulation used for BLE is simpler and the standard isn't backwards compatible.
I've been looking for an easy general-purpose bluetooth module for a while now, specifically for HID and wireless audio. If the new Cypress parts support both operating standards that would be incredibly awesome.
I'll keep my fingers crossed, I have the pioneer kit shipping right now. Either way it'll still be useful hardware, I might just have to continue packing an extra chip on a few things for a bit longer.
Thanks!
-Brent
Show LessThis question is for a Cypress BLE device configured as a Peripheral with a Custom Profile:
When a Central BLE device writes to a Cypress Peripheral BLE device, the Cypress event handler API function (e.g. EventHandler(uint32 event, void *eventParam)) is called with the CYBLE_EVT_GATTS_WRITE_REQ event set. The value to be written may be acquired from the event handler parameter (e.g. wrReqParam->handleValPair.value.val where wrReqParam = (CYBLE_GATTS_WRITE_REQ_PARAM_T *)eventParam;). Apparently, the actual write is performed by calling the function CyBle_GattsWriteAttributeValue() and an acknowledgement response is sent to the Central device by calling the function CyBle_GattsWriteRsp(cyBle_connHandle);
QUESTION:
Is there such an event and functions for a Read?
That is, is there, for example, a CYBLE_EVT_GATTS_READ_REQ event and CyBle_GattsReadRsp(cyBle_connHandle) function (or similar)?
I ask this because the Microchip RN4020 has a Real-time Read feature (SR,40000000) that I would like to perform using the Cypress device. Microchip describes that Real-time Read feature bit as follows:
"If set, the device request values from the host MCU through the UART and the host MCU must respond in a timely manner. If cleared, the device reads from the internal RAM of the RN4020 for the characteristic values that were previously set."
Thank you all,
Tim Ball
Show LessDear:
We can configure custom profile as AN91162 "Creating a BLE Custom Profile".Now I want to use the cpu as GATT Client to get data from GATT Server.How to configure the profile? How to write code?
Thanks
Show LessI have a custom design which used CY8C4247LQI-BL483 for main control chip. I have two ADC input channel, one for battery voltage detect and another for current channel. When I set different sample frequency, for example 1MHz to 18MHz as user guide told me, I got different return value from the battery voltage detect channel, the faster sample frequency I set, the smaller value I got. But the current detect channel had no affection. What's the problem? How can I fix it?
Show Less