PSoC™ 4 Forum Discussions
I configure two EZ-Serial BLE modules. One as Central and one as Perif.
I wire the Central w/ HW handshake and enable it with baud=115200 and F=01. I leave the Perif as no handshake with baud=57600.
I can now ZMODEM a file from Central to Perif and the Central BLE will throttle the file data coming in to it from PC1 so that the Perif can finish sending out is lower baud stream to PC2.
If I try to reverse roles w/ Perif wired w/ HW handshake, 115200 baud and F=01... then Central w/ no handshake and 57600 baud.. I can not ZMODEM from Perif to Central.
I am not seeing timely BLE transfers from Central back to Perif. They seem to get backlogged and after 30sec or something, they sometimes finally get sent in a group transmit. I can not sniff RF... I'm simply looking at the BLE Rx/Tx on each end... so I don't know which module is getting confused.
Is ZMODEM w/flow control not possible from a Perif to a Central? NOTE: Even if I run the Central @ 115200, ZMODEM also fails... and handshake lines are always inactive on the Perif.
Show LessDoes anyone know the make and model of the 20 pin and 24 pin connectors that connect the PSoC module to the Pioneer board?
I am looking for cable connectors to connect the device.
I'm working with a proc 4 device and a LIS3DH accelerometer. I've stripped down my code to do the most basic thing to demonstrate my problem. I read the "who am I" register (0x0F) of the accelerometer. The response is 0x33 and that's just what I get if I let the psoc read it once, twice or even 10 times. But if I read it (or other registers more than ten times the proc hangs. I'm watching everything on the I2C bus with a logic analyzer. I can tell it hangs because it doesn't get to the LED section at the end.
Thanks for any help with this...
Kevin
#include <project.h>
uint32 i;
uint8 userArray[6] = {0x01,0x02,0x03,0x04,0x05,0x06};
uint8 status;
uint8 I2C_WRITE_XFER_MODE = 0x00u;
uint8 I2C_I2CMSTR_NO_ERROR;
uint32 LIS3DH_ADDRESS = 0x18 ;
int main()
{ CyGlobalIntEnable;
LED_Green_Write(0);
// UART_Start();
// UART_UartPutString("The first words out...");
I2C_Start(); //Start the I2C component
I2C_I2CMasterSendStart(LIS3DH_ADDRESS, I2C_I2C_WRITE_XFER_MODE);
// I2C_I2CMasterWriteByte(0x20);
// I2C_I2CMasterWriteByte(0x97);
// I2C_I2CMasterSendStop();
for(i=0; i<10; i++)
{
I2C_I2CMasterSendStart(LIS3DH_ADDRESS, I2C_I2C_WRITE_XFER_MODE);
I2C_I2CMasterWriteByte(0x0F);
I2C_I2CMasterSendStop();
I2C_I2CMasterSendStart(LIS3DH_ADDRESS, I2C_I2C_READ_XFER_MODE);
userArray = I2C_I2CMasterReadByte(I2C_I2C_ACK_DATA);
I2C_I2CMasterSendStop();
}
LED_Blue_Write(0);
LED_Green_Write(1);
I2C_I2CMasterSendStop(); /* Send Stop */
}
/* [] END OF FILE */
Show LessHi,
I downloaded the CY8CKIT-042-BLE Kit (04/07/2016) and installed it. At the end of the installation, I've got an error:
Installer could not launch Update Manager. Check whether Update Manager is installed.
I don't think it is something I can safely ignore.
Show LessI'm testing the Day14_whitelist example, the filter policy is scan and connectable by whitelist both.When the whitelist is empty, it can be found by any central device, is it right?
Show LessI noticed that the spec sheet did not have a landing pattern. What does cypress officially recommend for the BGA package using pads? as well as filled vias?
Show LessHello,
I have to build a project with IAR (version 7.80.4 using a commercial license). The project is set-up with PSoC Creator 4.1 and then connected to IAR via the Project->Export to IDE. Since adding the CapSense [v4.0] component I get the following error:
Error[Li016]: size limit exceeded. The application needs 0x1a29a (107 162) bytes, which is greater than the limit of 0x8000 (32 768) bytes.
The limit is due to license "ARM.EW.LINKER" from "CapSense_SmartSense_SL_v3_10.o(Capsense_P4Library_IAR.a)" (and 1 other module).
It seems like a component (Capsense_P4Library_IAR.a) was put together with the Kickstart edition of IAR?
After taking out the CapSense component everything is fine in IAR and the application still needs more than 100kbytes.
What can I do to make it work (I have to use IAR instead of PSoC creator)?
Thanks
Thomas
Show LessHi,
I am working with CYBLE-224110 and I was curious how many connection I can have with this module simultaneously? Ans is there any other module or way in which I can have 8 connection simultaneously?
Show LessI think the whlte list and direct advertising is useless for ios device using resolvable random address. So I just want to know is it possible for CYBL10463 to resolve the address when connected and decide if it should terminate connection when the central is not in bondlist.
As I know , the cybl10463 can not use BLE4.2 that support privacy security.
Show LessAs title says the SW Tx UART output is garbled after changing the clock frequency in code.
I am running on the CY8CKIT-042-BLE-A
ECO = 24 MHz
UART baud rate set in component to 19200
<code>
/* Internal low power oscillator is stopped as it is not used in this project */
CySysClkIloStop(); // This is actually already done in the clock settings in PSoC Creator, but this is how it is achieved in code.
/* Set the divider for ECO, ECO will be used as source when IMO is switched off to save power */
CySysClkWriteEcoDiv(CY_SYS_CLK_ECO_DIV8); // --> Provides a 3 MHz clock. Lowest clock acceptable for SW Tx UART component.
/* change HF clock source from IMO to ECO, as IMO is not required and can be stopped to save power */
CySysClkWriteHfclkDirect(CY_SYS_CLK_HFCLK_ECO);
/* stop IMO for reducing power consumption */
CySysClkImoStop();
/* CySysFlashSetWaitCycles can optionally be called after lowering SYSCLK
* clock frequency in order to improve the CPU performance. */
CySysFlashSetWaitCycles(3); // Frequency in MHz
/* Update Delay frequency as clock frequency has changed */
CyDelayFreq(3000000UL);
</code>
I output some debug to the UART and it outputs fine before i change the clocks.
I thought that it should be enough to call CyDelayFreq when changing the freq.
Do I miss something ?
br,
Martin
Show Less