PSoC™ 4 Forum Discussions
I am using the BLE Pioneer Kit with the PSoC BLE Module and the connection example code from AN92584.
I am able to achieve similar connection current measurements as AN92584 but only at 30ms interval wjile connected to CySmart on my iPhone.
In the code I found this, which I believe is where connIntv is set:
#if CONNECTION_UPDATE
if(connected && connUpdate)
{
CYBLE_API_RESULT_T conResult;
static CYBLE_GAP_CONN_UPDATE_PARAM_T hrmConnectionParam =
{
800, /* Minimum connection interval of 1000 ms */
800, /* Maximum connection interval of 1000 ms */
0, /* Slave latency */
500 /* Supervision timeout of 5 seconds */
};
conResult = CyBle_L2capLeConnectionParamUpdateRequest(cyBle_connHandle.bdHandle, &hrmConnectionParam);
if(conResult != CYBLE_ERROR_OK)
{
connUpdate = 0;
}
}
#endif
No matter what values I put in for Min and Max interval, the project just connects at 30ms interval.
I know this because I have a scope across my ammeter on J15 and can see waveforms similar to AN92584 and always 30 ms apart.
What else must I do to set the connection interval?
I tried debugging but I am not real good at that process here yet.
Thanks,
Dale
Show LessLooking at the techinical specs on the Cypress web site of the CY4245, it suggests that it has 4kB of EEPROM memory.
http://www.cypress.com/part/cy8c4245axi-473
Does anyone know if this is real EEPROM or emulated ? If it is real, I can't find any reference to how to use it, only references on how to use emulated EEPROM.
Thanks in advance,
Paul H
Show LessThere is definitely fewer places I can find answers to issues I have here than if I were in the PIC world.
I tried Cypress Document Manager search, Cypress site search and Google search for the error code I get when I build my code (mpr.M0145) and got 0 results.
So I have to bother the good people here again.
First can someone tell me where I could have found the answer to this without a forum topic?
And, here is what I think is the easiest way to show my issue:
🙂 Well that did not work, can't insert jpg, so I attached it.
The .cydwr file shows a valid assigned pin but I am told I can not route to the pin.
1/2 hr on this was enough.
Thanks,
Dale
Show LessI am having a problem where I took a PSoC4 design and am porting it to PSoC4M. When I move the pins to the new location I get the following errors:
...
Analog Routing ...
Analog Code Generation ...
Digital Placement ...
Error: plm.M0046: E2809: 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.
Error: plm.M0046: E2055: An error occurred during placement of the design.
Error: plm.M0046: "C:\Program Files (x86)\Cypress\PSoC Creator\3.2\PSoC Creator\bin/sjplacer.exe" failed (0x00000001)
Dependency Generation ...
Clean Temporary Files ...
Error: cdf.M0005: CyDsFit aborted due to errors, please address all errors and rerun CyDsFit. (App=cydsfit)
--------------- Rebuild Failed: 08/11/2015 14:11:57 ---------------
What report file, and where is it located?
Thanks,
Steve
Show LessI found the issue with Cypress web page security.
When it comes to entering credit card info, the web page stops secure connection.
Be carefull
Show LessI finally found the schematic of this kit on page 82 of CY8CKIT-042-BLE_KIT-Guide.pdf
I found the pin Vin connected 4V. But didin't expect, that this kit supports only 3v3 and 5V supplies.
I thought, that removing J16 jumper switch into Vin. I was wrong - it switch into 1.9V
So removing the jumper damaged the board. Remember either don't buy or don't remove the jumper
In my case externally supplied power to pins damaged the chip.
Supply through Vin is not possible in any case because, the usb connection is needed for debugging.
And VBUS from USB (5V) has precedence over Vin if Vin is lower ( my case).
For me it's a big mistake in board design
Show LessI'm making a project in which the client reads a few values from the server when the server characteristics are updated.
From what I understand, this is how to read characteristic values:
case CYBLE_EVT_GATTS_WRITE_REQ:
/* This event is generated when the connected Central */
/* device sends a Write request. */
/* The parameter 'eventParam' contains the data written */
wrReqParam = (CYBLE_GATTS_WRITE_REQ_PARAM_T *) eventParam;
if (CYBLE_DELAY_SERVICE_DELAY_INFO_CHAR_HANDLE ==
wrReqParam->handleValPair.attrHandle)
{
Array[0] =
wrReqParam->handleValPair.value.val[0];
Array[1] =
wrReqParam->handleValPair.value.val[1];
uint16value = wrReqParam->handleValPair.value.val;
}
CyBle_GattsWriteRsp(cyBle_connHandle);
break;
This words fine for the array, but when i use a uint16 it won't allow it, as "handleValPair.value.val" is a uint8. If someone could help me with this or point me in the direction of a good example of how to read/write characteristic values it would be much appreciated. Thanks in advance.
Show LessI am still in the design phase of my widget so I need to know what features and prices each available version of the PRoC BLE has.
I found the feature list in the CYBL10X6X Family Datasheet, but prices were another matter. I could not find the prices on the 'Buy and Sample' tab of the website. I had to enter a site search for PRoC BLE and then click on the 'Show more' after a couple of (non-device) prices did show up.
Anyway, I assembled the below chart of all the features that actually change in the product range and their 1000 pc prices.
Now, my current issue is with available timers and PWM's. I realize and have looked at the differences between PWM and TCPWM but I still confused as to how many are on each device.
Part Number | CapSense | SCB | TCPWM | I2S | PWM | LCD | Package | Price |
CYBL10161-56LQXI | No | 1 | 2 | No | No | No | 56-QFN | 1.73 |
CYBL10162-56LQXI | No | 2 | 4 | No | 4 | No | 56-QFN | 2.46 |
CYBL10163-56LQXI | No | 2 | 4 | Yes | No | No | 56-QFN | 2.26 |
CYBL10461-56LQXI | Yes | 2 | 4 | No | No | No | 56-QFN | 2.84 |
CYBL10462-56LQXI | Yes | 2 | 4 | Yes | No | No | 56-QFN | 2.91 |
CYBL10463-56LQXI | Yes | 2 | 4 | No | No | Yes | 56-QFN | 2.95 |
CYBL10561-56LQXI | Yes (Gestures) | 2 | 4 | No | No | No | 56-QFN | 3.55 |
CYBL10562-56LQXI | Yes (Gestures) | 2 | 4 | Yes | 1 | No | 56-QFN | 3.68 |
CYBL10563-56LQXI | Yes (Gestures) | 2 | 4 | Yes | 1 | Yes | 56-QFN | 3.79 |
CYBL10563-68FNXIT | Yes (Gestures) | 2 | 4 | Yes | 1 | Yes | 68-WLCSP | 4.37 |
From the CYBL10X6X Family Datasheet we see that:
'4x PWM
These PWMs are in addition to the TCPWMs. The PWM
peripheral can be configured as 8-bit or 16-bit resolution. The
PWM provides compare outputs to generate single or continuous
timing and control signals in hardware. It also provides an easy
method of generating complex real-time events accurately with
minimal CPU intervention. A maximum of four 8-bit PWMs or two
16-bit PWMs are available'
Now when you combine the table and the above paragraph, I would make the determination that the inexpensive CYBL10162-56LQXI is the ONLY device that actually has 4 of the PWM peripherals.
Is that a correct determination?
Thanks,
Dale
Show LessHi all,
Newly working with cypress products, I recently discovered the PRoC BLE.
I would like to create a new component for the CYBL10563-56LQXI but I always get the message "component01 is not supported by the selected device" when I use into my schematic.
An almost empty schematic with 1 input and 1 output pin (wired together) gives the same result.
I tried both "target generic device" and "PSoC4" options.
Is their any trick to do ? Or is their any rule to put into .cystate file to get it work ? Or maybe not yet supported by PSoC creator ?
Regards
Onur
Show LessAnyone have any idea when and how much?