PSoC™ 4 Forum Discussions
When I have pluged in my CY5677 at Windows reboot, it falls into a DeepSleep mode and is irresponsive. No reply on the com port. "Unsupported device" in CySmart tool.
The only way I have found to get out of this state is to plug out/in the dongle.
When I do debugging in this state, the program continues in the CySysPmDeepSleep(void) routine after this line:
/* Sleep and wait for interrupt */ CY_PM_WFI;
I can discover trough state LED, that first, when I power up the windows machine, the dongle is in a ready/working state and then while startup comes into this state.
Any idea, how I can wake up the dongle from that state?
(I am using the official CY5677 firmware, BLE_4_2_Dongle_CySmart_256k.cydsn)
Show LessI am attempting to allocate the last row of on-board flash (start address: 0x0001FF80) to store non-volatile data (data that survives re-boot). Unfortunately, the bootloader over-writes ALL of on-board flash (0x00000000 - 0x0001FFFF). when loading the application!
Is there an easy way to instruct the bootloader NOT to overwrite the last row of on-board flash?
David Perkins
Cratus Technology
Show LessHello,
I am working with project 20 (BLE UART Bridge) of the 100 project in 100 days site, http://www.cypress.com/file/66366/download and having trouble sending a string over from the PSoC to the bluetooth dongle.
I am using the CY8CKIT-042-BLE PSoC 4 kit. In terms of the bridge between the psoc and the dongle, that works fine. What I am trying to do is; after the psoc and dongle have connected, I want the PSoC to continuously send a string (UART String) to the bluetooth with 1 second delay, then a different string, then another 1 second delay. It would be similar to the classic blinking code, but with strings. When I view the Com port for the the dongle with a terminal program, it should just keep repeating the same received set of strings over and over.
I am really lost in here, What would i need to change in the main code of the psoc, to allow for a continuous string to be sent over the bluetooth after it has connected?
Show LessHello,
i am working with the Cypress BLE Pioneer Kit. I replaced the original Eval-board with the the CYBLE-022001-EVAL.
The bluetooth HID keyboard example is working. It connects and the simulated battery level ist displayed. When i am now trying to measure real battery levels, i ran into problems.
I connect an power supply to the Port 3.7 and apply 0-1.024V. The reference voltage is selected as internal 1.024V. If i go down to 30% of the voltage the Low power LED goes on. But the battery level which is displayed goes up to 100%. If i apply 1.024V to the pin the low power LED is off but the battery level is shown as 100%.
It seems to me, that the battery level via BLE is inverted. Where is a good starting point to search for this error in the original example ?
best regards
Lars
Show LessI have a custom profile where I want to request a slower connection interval.
I am using HRS example to see how this is done.
In that example, the request is sent from a CYBLE_EVT_HRSS_NOTIFICATION_ENABLED event.
I can not find a similar event for a custom profile.
Does anyone know where I can put my code for this request?
Thanks,
Dale
Show LessI use the BLE Pioneer kit since several months with good success. I have Windows 7, 64 bit
Since two days my device is not listed any more when trying to debug in PSoC Creator or to program with PSOC programmer.
I think that it is a driver problem. When I connect the Pioneeer kit at USB and I list the devices in device manager I get : -> KitProg USB_UART and ->unknown device. (see attachment)
I reinstalled the PSOC-programmer und I downloaded and installed the upgrades for the Creator 3.3 SP1 3.3.0.7343. Maybe this could also be the reason for the error which I find now. I am not sure, what was before: the error or the upgrade.
I also tried to connect a M Series Pioneer kit: the same result -> the window "select debug target" is empty.
Can you help me to clear the old and install a new driver? Or can you imagine any other reason for my problem.
Show LessHi,
I have several doubts about the functioning of the BLE.
What is the operating sequence of events generated?
when I give a CyBle_Start (AppCallBack);
I know that the first event generated is CYBLE_EVT_STACK_ON in which I send the device goes into Advertisement ... from that point my doubts arise, there are several events that can occur in the bluetooth stack, I know there is documentation and API available, but it is not clear when these events occur and how they should be used. I try to look at the examples, but each is implemented in a different way.
If possible explain step by step for each connection phase, how to read, write and report ...
an example of error that could not understand the reason is when I try to modify the Intervalor connection (my device is a type server peripheral) When I connect to the dongle using the cysmart appears on the screen the request to change the connection interval if I accept the request the services and features are unread and a timeout error and disconnects. If I do not accept the connection request interval change the device connects normally.
Thanks for listening!
Show LessI have designed a 2 layer PCB for touch sense as per the directions given in the datasheet. Can someone verify the design and suggest any changes .I will be using a 2mm acrylic overlay on top of it. This PCB will connect to main board using a short 6x2 cable.
All the dimensions are in mm and the isolation between pads and ground is 1.8mm. I want to use the center larger pad for activating other pad scanning so in low power mode controller will be scanning only the center pad.
Show LessHi,
I'm playing around with a psoc4m pioneer kit, and I'm trying to initiate a dma transfer from a buffer to a gpio port data register (CYREG_GPIO_PRT0_DR). I couldn't find any documentation specifically saying this won't work, but I haven't had any luck so far. If I'm not using DMA, I can write directly to the port register no problem. Any thoughts? Thanks.
Show LessI'm developing the software for a Pioneer kit BLE device and also an Android app to take sensor data.
I am trying to transmit a 32 bit value (so 4 bytes) from the BLE device to the Android app, but I am having a problem with formatting. I am using an array of uint8, with a length of 4, to separately store each byte of the uint32. The following code stores each byte in the array:
MeasureArray[0] = (Measurement & 0xFF);
MeasureArray[1] = ( (Measurement >> 😎 & 0xFF);
MeasureArray[2] = ( (Measurement >> 16) & 0xFF);
MeasureArray[3] = ( (Measurement >> 24) & 0xFF);
The next line sets the value of the characteristic handle to the first element of the array. When I broadcast a notification, the handle only needs the location of the first byte, and then it will send all four.
MeasureHandle.value.val = &MeasureArray[0];
The issue I am having is that the values sent over BLE are unsigned. Even if I configure the BLE characteristic to be 32 bit signed, it doesn't make any difference. The Handle.value.val statement always takes unsigned uint8. On the Android side of the app, there are two options. Use the BluetoothGattCharacteristic function getIntValue(formatType, offset) which returns an integer, or use getValue, which returns a byte array. I have tried several different formats with the getIntValue function, but I get large discontinuities in my data. I am also getting discontinuities with the getValue function, after converting the bytes to integers.
The problem is that the byte value returned by getValue is basically a signed int. When I try to take the 4 bytes, do some bit shifts, then cast to int, there are errors because the signed ints are overflowing.
I am at a loss right now, so any tips are appreciated. If it helps at all, the data I'm transmitting is 24 bit two's complement, which I initially store in a 32 bit unsigned int. I can't upload my project as it's proprietary.
Show Less