Cypress PSOC CY8CKit-49-42xx Prototype Kit

I am helping to port Mecrisp Forth to the PSOC and am having trouble loading my program to the eval board. I am using the $4 CY8CKit-49-42xx board with the more functional 4245 device. I started with a UART loopback program and modified it to be "bootloadable" which means it can be used with the bootload on this board. This is firmware on the board that accepts commands to flash a program while not clobbering itself.

I am able to load a canned program that blinks the LED, so I know the board works. When I try to load my program it gives an error, "The flash row is not valid for the selected array." Several people in the forums can't seem to figure this out. I've put in a support ticket but it seems I won't hear from them until next week.

Anyone familiar with the PSOC 4 line and especially the bootloader used on the CY8CKit-49-42xx?

--

Rick
Reply to
rickman
Loading thread data ...

Am Samstag, 13. September 2014 01:11:34 UTC+2 schrieb rickman:

I use other PSoC devices with the bootloader and I have seen this problem before. My hint is to check those design-wide-resources that have to match between the bootloader and bootloadable. The bootloader seems to check those and if they do not match, the behavior that you saw would result. This includes clocks and the reset-value of certain pins.

Andreas

Reply to
acd

Ok thanks. Someone in the Cypress forums suggested there was a memory conflict between the bootloader and my code (bootloadable). Seems the bootloader is not well integrated into the Creator tool you have to track this stuff yourself. The info you offer is not enough for me to begin to figure this out so I expect I will just wait for the support guys to get back to me. They have my project.

It's funny really. They have the most capable tool I have seen from any of the vendors. Obviously they put a lot of time and effort into developing it. They offer a $4 prototyping "kit" which has a *lot* of potential to get attention. But they slack off supporting it in the tools and it ends up doing the opposite by making the tool look bad.

Oh well. I expect to get past the learning curve pains shortly.

--

Rick
Reply to
rickman

I think I had this one. The solution was to take their example project (that has source for the bootloader and bootloadable parts) and hack that, rather than starting my own project from scratch. No doubt there was some setting somewhere that my own project got wrong (I did stare at them quite carefully).

The example project wasn't one they put in an obvious place, it was on a forum thread where somebody asked for the source to the bootloader example.

I'm actually using the PSoC 5LP on the Pioneer kit that's usually used to program the PSoC 4, so which I think the source is here:

formatting link

I just came across:

formatting link
which looks interesting too (though that's for PSoC 5)

PSoC is very nice on paper, moderately nice to use, and a pain to debug when you discover that half the information is in the heads of Cypress people and not documented anywhere, except maybe forum threads if you're lucky. Essentially it has the same level of documentation as any other microcontroller, but a much more complex (FPGA-class) toolchain.

Theo

Reply to
Theo Markettos

Sounds good, but I don't learn anything from that and likely find a lot of frustration.

I have the example projects and I can figure out the code, its the tools that are not explained clearly.

Yes, exactly. I remember when the PSOC was still fairly new. They knew the parts were so complicated to use that they just couldn't easily explain it. They had a weekly training class online or dial in actually I think, a conference call. I tried getting setup for that once and I was told to have all my info ready because it would likely be just me as a 1 on 1 session, lol.

They have tried to hid the details with the tool and I think it may work ok. It was just the bootloader thing that is a bit hard to figure out. I heard back and my project was pointing to the wrong .hex and .elf files. They haven't told me where I should have found the correct ones. Somehow the ones I had were for the Pioneer board I think. I am using the whatever they call it $4 proto kit board. It doesn't really have a name I guess.

If I were using the recommended programming cable I think it would have worked just fine.

Here is some more irony. I was doing this to support a couple of guys who want to port Mecrisp forth to the PSOC so that one of them can manually program the logic at the register level. I think he will find this to be a bit of a messy job. I'm bailing on forth on the PSOC unless it works under the Cypress tools. Even then it will be work to integrate Forth with the PSOC stuff. I think I'm moving on to the TI or maybe the Motorola ARM parts. They already have Mecrisp ported to some of the TI ARM parts, in fact they call the entire ARM port of Mecrisp (it started on the MSP430) Stellaris because until recently TI was marketing their ARM parts under that name still.

TI has some ARM R4 and R5 parts that are interesting. I may try porting Mecrisp to those... or not lol TI also has some interesting DSP parts that might be useful targets.

--

Rick
Reply to
rickman

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.