PSoC™ 4 Forum Discussions
Hello to all,
I am new to the BLE and bluetooth, OTA and few weeks ago started with the development kit (There I have 2 CPUs: BLE - CYBLE-222014 and MCU - CY8C4146AZI-S433). The firmware upgrade is done over the OTA and code is already available. The application to perform upgrade is on the mobile phone. But the procedure to update the FW seems very complicated for the normal user. As I see for the BLE part we have 3 projects: launcher, stack using the BLE with profile "BLE bootloader" and application with BLE and profile "BLE application".
When application is being used mobile phone and the kit are connected using the BLE profile "BLE application". And over this profile I can also update the MCU fw (both are connected using the I2C and on the MCU we have I2C bootloader) Which is ok and simple to the user. In the MCU we have 2 projects bootloader and application.
When we try to update the BLE fw over the OTA, the user has to disconnect from the kit. Then start the kit in such a way, that BLE is started in the bootloader mode. User then has to connect to the kit using BLE profile "BLE bootloader". After the update is done, user has to unpair with the kit "BLE bootloader" and again pair to the kit "BLE application".
I looked at the example and found similar case in this example: CE220960 - PSoC 6 MCU BLE Upgradable Stack Bootloader
The question is, why can't I use one BLE profile for all the actions? Must say that this approach is very complex for normal users. And also why are the bonding information deleted?
Also, could we not just use the mobile phone to put the kit into the bootloader mode? From the documentation 001-97060_AN97060_-_PSoC_4_BLE_and_PRoC_BLE_-_Over-The-Air_OTA_Device_Firmware_Upgrade_DFU_Guide.pdf
the bonding information should remain unchanged.
I am still searching the forum to find the answer to this question or maybe an example how someone has done this using one BLE profile only.
I again apologize for any beginner questions as lot of stuff here is new to me and I hope someone can clarify this questions.
Thank you very much for the answers, Frenk
Show LessHello
There is the following description in the debug select column of PSoC Creator.
”Controls whether or not to reserve pins for debugging. If any JTAG or SWD option is selected, the debugging features of the chip will be externally accessible. If GPIO is selected the pins are available for general purpose use. When set to GPIO the device can For more information see the device datasheet or Technical Reference Manual (TRM). Still be acquired with SWD / JTAG, and reprogrammed, but not for debugging.”
Where can I specifically refer to TRM for more information on this?
Best Regards
Hayato
Show Less
We use the Cypress CY8C4248LQI-BL553 CPU and an Ethernet Controller (ENC28J60).
We need to implement a TCP Stack for this system. Do you have some know-how concerning such a case ?
and can we get some support ?
Hello,
I am using CYBLE-212020-01 modules which sends and receives some values over BLE from App.
I use Over-the -Air (OTA) firmware update.
The workspace encloses three projects functions are as follows:
1. Launcher project
The purpose of the project is to:
- Start either the Stack or Application project image
- Copy the Stack project image from a temporary location to the persistent location (just after the Launcher project image).
2. Stack project (contains the BLE Stack)
The purpose of the project is to:
- Host the BLE Stack
- Upgrade the Application project image
- Upgrade the Stack project image itself
- Receive updates for the Stack project image itself or for the Application project image
3. Custom Apllication Project
The Stack project is the bootloader.
I have a build that creates a stack.cyacd and app.cyacd.
I would like to combine the two to take advantage of the "Application and stack (combined) update" option of CySmart App.
The reason for this is that my application is using Upgradeable Stack project and so application image must match the correct stack or else device will not boot / operate correctly.
With two separate files, it is easy for client to update incorrectly and "brick" the device.
How can I either create the "combined update" file during build or combine the separate stack and app .cyacd files?
I read the following guide
CyMCUElfTool 1.0 User Guide but It is for PSoC6.
We in our project use CYBLE-212020-01 (PSoC 4.2).
Then I read the following link
But in the previous link Cypress explain how to merge two elf in one file .hex.
How I can convert .hex file combined in a .cyacd2 file for CYBLE-212020-01 (PSoC 4.2)?
Thanks in advance for any replies.
Lucia
Show LessHi,
I am currently working on a system, where I transmit data using SPI master component. I ahve a counter connected. Which count SCLKs. After a certain number of bits have been clocked out, I want to halt the transmission using the component on the topdesign.
I have tried to use a basic count7 component and connected the tc output to the reset input of the SPI master component. But that did not work.
Does anyone know how this can be achieved ? What is the timing requirement for the reset input ?
To ensure no further bits are clockced, it needs to be fast and therefore SW intervention, may not be fast enough. Thats why i do not use interrupts.
Show LessHi,
in our products we are using the CYBLE-022001-00 controller. We have sold more the 10'000 units and got a lot of consumer returns. The reason is that the Flash content of a specific section got lost.
The FW is calling WriteUserSFlashRow to write some information provided by the production script into the flash. After a while it turned out, that those information are gone. All other sections in the flash are still ok, the FW is running. After analyzing the code it turned out, that the FW reads out this section and write it back. I think that could be the root cause but I'm not sure.
- Did someone observe same issues?
- How to check if the brown out reset (BOR) is enabled?
- What are the maximum write cycles to the Flash?
Thank you for supporting me
Best Regards
Lehsam
Show LessWhat methods are available to tune capsense on a design that has only SWD pins available for probing?
A) Is it possible to run CapSense Tuner functionality over an SWD interface?
B) Can an Oscilloscope be used to see how a CapSense sensor is being charged then drained?
I understand Oscilloscope probes will add some amount of capacitance to change the performance.
Show Less
Dear All,
I can use PSoC programmer to program the target chip,please see attached picture 1.
But I want to use PPCli to download, but I can’t do it. Here is my attempt to follow the instructions.
Below is the command I tried:
>GetPorts
<MiniProg3/1014DD0004C4
0 OK
>
>OpenPort MiniProg3/1014DD0004C4 "C:/Program Files (x86)/Cypress/Programmer"
<
0 OK
>HEX_ReadFile "c:\\B.hex"
<0x00004000
0 OK
>SetAcquireMode “Reset”
<
0 OK
>SetProtocol 8
<
0 OK
>SetProtocolConnector 0
<
0 OK
>SetPowerVoltage 3.3
<
0 OK
>PowerOn
<
0 OK
>DAP_Acquire
<
0 OK
>Calibrate
E
Device is not in ISSP mode.
Calibrate returned 80004005
80004005 OK
>Erase_All
command not found
1 OK
>Program
E
Device is not in ISSP mode.
Program returned 80004005
80004005 OK
>Verify
E
Device is not in ISSP mode.
Verify returned 80004005
80004005 OK
>
Q:How to use PPCli to download a Hex file to the target chip (CY8C4122LQI-433)???
Looking forward to your reply, thank you very much!!
Show LessHello there,
I created a project on Psoc 4, using the uC/OS. I created 3 tasks, two tasks for turn on and turn off leds and one taks is a botton. The task called "Sinal_Pedestre_1_Task" is not working and I do not know why. Someone can help?
Follow the project on the attachment.
For open the project, unzip the file and open the Psoc Creator first, and then click in "File->Open->Project/Workspace" and open the project "Pratica 3_Psoc 4\Micrium\Examples\Cypress\uCOS_PSoC4_BLE\OS2\PSoC\uCOS II.cywrk".
Show LessHi,
I am trying to do some tests on BLE RF waveforms using the Cypress CYBLE-222014-01. The requirement of the test is to capture the output RF waveform of a constant advertising channel such as channel 39. As it stands, the signal appears sporadically and for a very short period of time. I found out that the BLE module offers option of a minimum and a maximum advertising interval, however I don't seem to understand their overall concept. In this test, I am also using fast advertising only (slow advertising has been disabled). Any help on the matter would be greatly appreciated.
Many Thanks,
Chris
Show Less