- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Labels:
-
ispn:39611:1:0
-
l1:314:1:0
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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...)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
"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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@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).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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. 😉
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oh, I missed that bit 😞
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If in doubt - ohm it out.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@PSoC73: glad you got your problem sorted out too.
@Jim: I like this phrase 🙂
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.