PSoC™ 4 Forum Discussions
Hi,
i think this is a noob question here, but anyway. My application involves interfacing an ADXL345 with the PSOC4 BLE, over SPI, and communicating the data to the computer serially via UART.
However, im unale to send the integer data over UART. Here's a short code that im trying to run :
the idea is to print "784.4564549" onto my serial monitor.
int bytesWritten;
char myString[50];
bytesWritten = sprintf(myString, "%f", myFloat);
UART_UartPutChar(myString);
UART_UartPutString("\r\n");
However, all that the serial monitor prints is a dash!
Any suggestions on how else to send an integer over UART? thanks 🙂
Show LessHi Everyone,
Can I use the system tick timer in PSoC4 BLE for periodic interrupt in my program. I want to get an interrupt for every 100ms and in ISR, I check the flag for each task and then I will perform the task according to the flag for periodic operation but I am afraid that it will interfere the bluetooth operation.How can I avoid it?
Show LessHi all,
I tried to flash 2 devices with different names : BLE_DeviceA & BLE_DeviceB and different public addresses.
When I searched BLE device on CySmart application, sometimes I can see only 1 device, sometimes I selected BLE_DeviceA to connect however indeed, I was connecting to BLE_DeviceB. Name was mismatch, I think so.
Do you have any idea?
Thanks
Show LessHi all,
As I see, the device address always be 00:00:00:01:E2:40. Even though I already changed the public address in component configuration, the address displayed on Cysmart App still be same. I read some document and see that Ble Device Address can be changed by rewrite first 6 bytes in SFlash. However when I tried PSoC4-BLE-SFLASH-Update, it require miniprog3, I have only CY8CKIT-042-BLE PIONEER BASEBOARD at my side. Is there any way to update the Ble Device Address.
I'm very appreciate your help.
Thanks
Show LessI am working on an Android app from the ground up and currently having trouble connecting the two devices together. I am able to scan and see the PSOC 4 and it's MAC address. How do I determine the exact UUID of the PSOC 4 as a server from the PSOC Creator?
Show LessAfter I upgrade my XCODE to 8.0, the CySmart iOS app was no longer able to build.
This is due to a new class in iOS Core Bluetooth "CBManager" and also in CySmart iOS "CBManager" are using the same class name.
I can build the project by rename CBManager includeing file name by another name like "CyBManager" then successfully build it.
Is there an official release to fix this issue?
Thanks.
Show LessHi
Currently, I'm using Cyble ProC BLE and I wonder how can I check and update the BLE Stack inside. Because I think maybe the Stack should be updated to fix some remain issues.
Thanks
Show LessIn my project I use RTC that can`t wake-up CPU so I need leave it active but for power consuming I wan`t to stop BLE.
If anybody know how or some example please.
Show LessDear All,
Based on following example, I noticed CYBLE-222014 disconnects to current slave when connection to new slave is made.
Questions:
- why CYBLE-222014 can not make 8 slave connections once and just exchange data in round-robin manner without disconnecting slaves? I find out other BLE devices from various vendors supports such thing.
- Would you please uuggest other Cypress BLE alternate that supports such method?
Regards
Show LessI've been working on combining the OTA Fixed Stack bootloading functionality into the WPT Receiver example project, and I've been able to overcome a number of challenges in getting everything setup and configured correctly, however I am stuck on the issue of encryption.
The OTA bootloader security settings use "unauthenticated pair with encryption" and "Bonding", however the WPT Receiver needs to switch over and use the "no security" and "no bonding" security settings. Since the BLE Stack resides in the bootloader, I use the GUI to configure it for the OTA bootloader security settings (and this works just fine and I have no trouble performing OTA updates with CySmart). However, in the application code of the WPT Receiver, I am trying to change the settings to no security and no bonding in the code.
I've added code to update the cyBle_authInfo variable before making the call the CyBle_Start() in my int main() function, as shown below:
cyBle_authInfo.bonding = CYBLE_GAP_BONDING_NONE;
cyBle_authInfo.security = (CYBLE_GAP_SEC_MODE_1 | CYBLE_GAP_SEC_LEVEL_1 );
/* Start CYBLE component and register generic event handler */
CyBle_Start(AppCallBack);
It appears that this takes effect, as I'll explain below, but that there is still something missing from truly configuring the security settings properly. Here's what I observe with CySmart when trying to interact with the WPT Receiver (not in bootloader mode): I can connect to the device, no problem, then I discover all attributes, also no problem. However, when I click the button to "Enable All Notifications", I get the error message saying "Write characteristic descriptor failed. Insufficient encryption". Note that when running the original WPT Receiver example project, "Enable All Notifications" works just fine.
So this leads me to believe that the code shown above to update cyBle_authInfo.security isn't taking effect, BUT, when I click "Pair" in CySmart, it responds with the message "Authentication failed. Pairing is not supported by the peer device.", so that leads me to believe that my update to cyBle_authInfo.bonding is working just fine. As you can imagine, I'm a bit perplexed as to what I need to do from here. I've scoured the BLE Stack documentation looking for any other related API calls to try in order to get the security settings to update or otherwise change the encryption settings.
I'd absolutely appreciate it if anyone could point out what I'm missing, or what else I should try in order to ensure I've removed the BLE encryption requirement from the application part of my program. Thanks so much!
Show Less