Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

 Just a quick question.

   

I am using one of the new CY8CKIT-042 PSoC4 Pioneer Kits. 

   

There are some things that I am not able to get working on it (like a simple 16x2 LCD display), even though I have tried everything that I know to try.

   

I am no expert using Creator (3.0), or the PSoC, or the 'kit', but I am really reaching the end of things to try.

   

As a last resort, I got out my magnifier and read the Part Number on the PSoC4 chip. It is...

   

CY8C4245AXI-483ES

   

My question... What does the 'ES' stand for?

   

If it is what I think it means, then I am using an 'Engineering Sample' part on this board. (Or trying to use one.)

   

Can someone shed some light on this? If it _is_ an Engineering Sample (and I have purchased two (2) Pioneer Kits - both have 'ES' parts on them), then this may explain why I am having difficulties.

   

Thanks.

   

James

0 Likes
64 Replies
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

The code for what I am using is already posted - the 10th post from the top. The schematic for the LCD is taken straight from the LCD Display datasheet - but I am posting it here as a JPEG.

   

 

   

I am using 3.3-volts for the Display - where it says 5.0-volts in the screenshot.

   

 

   

Perhaps I should be asking folks that are getting the LCD display to work to post schematics and code.

   

 

   

Keep in mind that I am using the Cypress PSoC CY8CKIT-042. If folks are using a different breadboard or have the PSoC4 in another circuit, that is a different configuration, and may be a reason for different results. We need to compare apples to apples.

   

 

   

Also - post the complete part number stamped on the PSoC4 processor chip itself. The whole reason that I started this was that I have doubts about the 'ES' - aka Engineering Sample chip, and for all I know, it may not even have Port 2 hooked up.

   

 

   

Regards,

   

 

   

James Jackson

   

Oztronics

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Port 2 is hooked up, and I can confirm, as I did earlier, I see

   

write activity from the LCD API's on the port.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

 Dana,

   

Okay - so there are signals that wiggle on the P2 lines. That's good. 

   

 

   

1) What voltage are you using for the PSoC4? 3.3 or 5.0?

   

2) What LCD Display are you using? P/N please - or better yet - which controller chip is being used in the LCD Display?

   

 

   

I'm trying to narrow this down. It's either PSoC-related, LCD Display-related or Voltage-related. Once it gets narrowed down, I can focus on that.

   

 

   

Thanks,

   

 

   

James Jackson

   

Oztronics

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

OK, to clarify:

   
        
  • I'm using a Pioneer Kit
  •     
  • the PSoC4 on it is labeled as CY8C4245AXI-48ES
  •     
  • I connected one LCD 'freestyle' to the PSoC, I would need to lookup the connections
  •     
  • Then I build a LCD shield, based on the Freetronics shield (except that the backlight is connected to D10)
  •     
  • I tested different LCDs
         
            
    • cheap chinese from ebay, I don't know what the controller is
    •       
    • the LCD from a -050 kit (SC1602AN*B), seems to be a KS0066 controller ('or compatible')
    •       
    • the LCD from a -001 kit (Lumex LCM-S01602DSR/A), no spec what the controller is
    •      
  •    
   

I found one display (20x4 unfortunately), claiming to have a ST7066U controller (http://www.crystalfontz.com/product/CFAH2004ATMIJT ), but I need to solder headers on it for the test.

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

Oh no, fun with P/N numbers 😞 Looked again (after verifying that the LCD indeed worked), and saw that it was this one: http://www.crystalfontz.com/product/CFAH2004ATMIJP , which uses a SPLC780D controller...

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

So I have no more different displays to test, and I cannot tell for two of them what the controller is.

   

But I verified 3.3V operation, both with the one from the -050 kit (which is designated as working on 3.3V) as well as the ebay one (which got sold as 5V only) - both work without problems (the contrast is a little bit off for both).

   

So I would rule out voltage problems. SInce you see signals on P2, I would rule out PSoC problems as well (and from my experiences even Engineering Samples are fairly bug-free).

   

What you can do is to download the multi-port-LCD component project and modify it. Since it comes with source, you can look at the init sequence and the timings. Maybe its enough to just prolong the timings a little bit...

   

Judging from my experiences, LCD problems are typically either: wrong init sequence, wrong timing or wromng wiring (and the pin configuration for the LCD component is non-standard...)

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable
        Hello Pals   
I think this is a big issue   
Wrong that to trivialize of the LCD or Wiring problems   
Correct Signal does not output from the PSoC4   
I have to say this is a problem of PSoC4(ES)'s architecture   
I have many evidences already.   
   
But, another odd thing is   
Why Cypress can accomplish 100 project in 100 days by this chip?   
Why Cypress say, can connect Audiuno shield with this chip?   
If PSoC4 doesn't work properly   
I can't understand.   
   
Anyway, this time I upload my test bench project   
To prove which was wrong, either PSoC4 or LCD.   
   
I have renewed LCD module to be handle every signal in my hands   
You can be see what is wrong.   
Regards   
0 Likes
Anonymous
Not applicable
        I'm wondering 2nd question   
"Why Cypress can accomplish 100 project ... "   
So, looking through 100 projects   
It seems no standard char LCD but many G-LCD are there,   
??   
G-LCD and other shield are using I2C or SPI interface   
These interface has fixed block and fixed pins, that is a reason.   
   
Finally I find a Multi-port LCD(not standard one) in there   
[ http://www.element14.com/community/thread/25635 ]   
And do it, it's works however has garble.   
   
I got a little conclusion ...   
PSoC4's Signals and Pins can not assign to freely like as PSoC1, PSoC3 and PSoC5LP.   
0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

@PSoC73: How did you conclude that the wrong signals come from the PSoC4? As far as I saw from your images the proper initialization sequence was generated. Can you create a proper logic analyzer trace with a proper resolution (sample rate should be at least 1 MHz, since the EN pulse are rather short). Then check what values are written to the LCD, and compare with the HD44780 / ST7066U data sheets.

   

Since I tested a variety of LCD displays with the PSoC4, and with two diffeent wiring schemes, I can assure you that one _can_ assign ports rather freely. I also don't think that there is a problem with the PSoC4 architecture (what should this problem be?)

   

When your attached project (P4_LCD.TEST.zip) indeed works by bit-banging all lines, and the standard LCD component does not, I suspect that the timing is wrong (something is too fast for the ST7066U controller). You can verify that with a logic analyzer, and the file a case with Cypress.

   

Btw: select isn't broken.

0 Likes
Anonymous
Not applicable
        What is select??   
0 Likes
Anonymous
Not applicable
        Is that a Virus Site Huh??   
0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

@PSoC73

   

I do not know the geometry of your LCD, but when it is 16 chars wide you are writing some more characters. Your initial message is longer and I cannot tell what happens to the LCD in that situation...

   

 

   

Bob

0 Likes
Anonymous
Not applicable
        Hi Bob-san,   
These are NOT problem of LCD   
This LCD is work on other MCU, PSoC1, PSoC3, PSoC5LP   
and AVR, Ti-MSP430 ....   
   
Signals was incorrect that is shown LCD5.jpg clearly   
Expected strobe signals are 12 times but shown only 3 times.   
Also NOT a analyzer's problem, this is a 500MHz sampling/s module,   
If you say not enough, so I can use 4GHz sampling module for it.   
   
Anyway, I got a conclusion and satisfy for it.   
So I don't care who talking about another problems   
Each person has a Each mind, that's very good   
Not my bussiness.   
0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

@PSoC73

   

In my opinion there is something not quite solved:

   

When hli has a working LCD on a PSoC4 Pioneer as he says (and I presume that this is right) and your display does not work then there is a difference between your both implementations and we should refine our conclusions:

   

1st: An LCD runs on a Pioneer Kit (as hli prooved)

   

2nd: Your display does not run on your Pioneer board.

   

 

   

So if you are really interested in the cause or really want to get the LCD running we should proceed further.

   

HLI, I assume the display you used is one that came together with a Cypress development kit?

   

Can you reduce your projet down to just displaying a message and post it together with your wiring?

   

PSoC73 Can you get hands on such an LCD HLI used and wire it accordingly?

   

Or is there someone who has got a better idea?

   

 

   

Bob

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

@Bob: yes, I tested with the dsiplay from both the -050 and the -001 kit (posted the P/N above).

   

I will build a sample project this evening. (Maybe even multiple ones, with different wirings).

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

@Bob    "Or is there someone who has got a better idea?"

   

 

   

Hire a team of NASA consultants and Afordable Care Act webmasters in

   

US and provide full employment for them for years to come trying to sort

   

this out.  I figure I will have Healthcare and you folks a working LCD in

   

about a dozen years.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

 Okay. After getting nowhere, and getting more and more frustrated, I decided to run some 'basic' tests.

   

The first thing that I did was to look at the Gerber files of the PCB layout. Well, there isn't much there that can go wrong, as the Port 2 I/O's go straight from the PSoC4 processor to a connector. If something is wrong on the board, it will most likely be a blown PSoC. (great!!... all I need)

   

 

   

Since I have a programmable processor, I decided to test the outputs of each of the 6 I/O's involved (P2-0 to P2-6). I wrote some code that would toggle each I/O and turn it on for a second, then turn it off. The program would then move to the next I/O pin and repeat the cycle. After all 6 I/O's were cycled, I start over, and do it again.

   

 

   

I then compiled it and programmed the PSoC4. Using a Voltmeter, I probed each I/O looking for a '1', then a '0'. All of the I/O's were toggling as expected... except for one I/O, which never toggled.

   

 

   

Upon close inspection, I discovered the solder joint on this pin had a cold solder joint (I'm using an Arduino Shield - Protoboard plugged in to the Pioneer Kit). Off to the lab to borrow a soldering iron and reheat the connection. I now have continuity to this pin.

   

 

   

Hooking up the LCD, and reprogramming the PsOC using the LCD Display code, and... holding breath... nothing. Oh, wait. Adjust the potentiometer, turning down the solid black bars, and ... viola!!

   

 

   

My Display is on with the "LCD ON" - followed by "LCD OFF" underneath on the second line.

   

 

   

I disconnected power, and swapped LCD Displays, to test one of the other LCD Displays that hadn't worked before. Power-up, and I get the LCD ON / OFF on the screen - with minor tweeking of the Pot.

   

 

   

And again with a third LCD Display - repeating the process and test.

   

 

   

All of the LCD Displays that were not working before - are now working fine.

   

 

   

Thanks go to all of the brave souls on this forum that helped out (or tried to help out). I know it is difficult to 'troubleshoot remotely', and yall did a great job!!

   

 

   

Regards,

   

 

   

James Jackson

   

Oztronics

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

Congratulations to your success! (if anybody from Cypress is reading this - send this guy another DevKit for all the hassles he got just because the soldering on one your boards was faulty...)

   

Unfortunately for me I read this only after I did what Bob was suggesting and created 3 demo projects, and had some fun with flying wires on my desk 😞

   

@PSoC73: I tested the MP-LCD (2 different wirings) as well as the normal LCD component (with P2[0..6] as usual), with 2 different LCDs - and every scenario worked as it should. So maybe your board has the same problem... But I can post the projects if you would like me to.

0 Likes
Anonymous
Not applicable

 Hli,

   

 

   

The poor soldering was not on the Pioneer Kit PCB - it was my Arduino Protoboard that I plugged onto the Pioneer Kit. MY soldering was bad - NOT the Pioneer Kit's board. (I thought I explained that bit, I guess I didn't do a good job of explaining.)

   

 

   

I don't need an 'extra' Pioneer Kit - I bought two when I purchased them, and so already have an 'extra' one. 😉

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

Oh, I missed that bit 😞

0 Likes
Anonymous
Not applicable
        Oh My Buddha   
Your Arduino Protoboard' soldering was wrong   
Well, you got work and I got a conclusion.   
What my stand will be?   
   
I am using proto-jumper-wire for bread board to this connections.   
Just plug-in to the pin header.   
I was check and tried again   
   
So, i take more reliable wiring way, solder directly to the pin from back of board.   
Connection was checked from chip's foot to the LCD's foot.   
Thus, P2-6[RW] was odd, No conduction.   
   
Finally, I must to see, flat cable of LCD-Kit connection was wrong   
A soldering of flat cable and this header was wrong.   
   
So on, I turned on the TEST program   
Man! No problem "Hello Pioneer Kit"   
HaHaHa, I do it, How Silly   
   
Cypress is the great company.   
Never product such as a junk chip   
If so, the wineyards will disappeared.   
...orz ...orz ...orz   
0 Likes
Anonymous
Not applicable

If in doubt - ohm it out.

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

@PSoC73: glad you got your problem sorted out too. 

   

@Jim: I like this phrase 🙂

0 Likes
Anonymous
Not applicable
        PSoC4 is NOT ES, Jim and ME is Engineering Star.   
0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

In a day and age when advanced PCB assemblers use machine vision to detect bad solder

   

joints and improper parts placement seems sad you had to go thru this.

   

 

   

Regards, Dana.

0 Likes