PROBLEM TO PROGRAM A MC9S08QE128 CHIP USING DEMOQE BOARD

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

PROBLEM TO PROGRAM A MC9S08QE128 CHIP USING DEMOQE BOARD

7,885 Views
BooleanBob
Contributor IV
Hello friends !

I have experience using the DEMOQG board and I had use it to program my final application boards by using the 6 pin BDM on-board connector. Never had a problem with the QG family and BDM.

I have a new design in a board using  MC9S08QE128 , the 80 pin version. My first time with this chip. When I received and assembled the first prototype board, I really never expected to have bad results trying to program the chip, but it happened.

The P&E micro DEMOQE board comes with a MC9S08QE128 chip mounted in a piggyback socket board. The chip is the 64 pin version, and not the 80 pin version that I am actually using in my prototype. I think that it should work the same :smileyhappy:

My prototype board has a 5 pin connector that directly brings just the two lines BKGD and RESET from pins 80 and 79 of the QE128 chip. There are no on board pull-up resistors or any other component connected to these two pins. So there is no interference possible because of sharing the pins with the rest of the circuit. The other connector pins are for external VCC and GND, so the programming board provides the energy during programming.

A jumper allows the user to select if the 3.00 V power for the MCU chip is taken from the application board local voltage regulator, or is taken from the mentioned external programmer connector. The only thing the external programming power supply "sees" on my board, is the QE128 power pins and two decoupling capacitors, one 100nF in parallel with 10 uF electrolytic, close to the QE128 chip. All of the power pins of the chips are used, VCC, VCCAD , VSS, VSSAD, VREFHI, VREFLO.

Using CodeWarrior 6.2 , the DEMOQE perfectly programs the piggyback chip that is inserted in the demo board and that comes provided in the box. If instead, I unplug the 64 pin chip from the board, and use the BDM extension cable to my programming connector, the DEMOQE board starts programming normally, recognizes the board via USB, but is unable to program my 80 pin chip on my final application board.

To my knowledge, there are no shorts, or missing connections. I checked this with a co-worker. The pins 63 and 64 on the DEMOQE board are connected to the 79 and 80 pins on my board, so I am using the same signals that he 64 pin version uses, exept that there is a less than one foot long flat ribbon cable between boards. The 3.6 V from the DEMOQE board can be measured correctly in all VCC connected pins of my 80 pin chip.

I thought a failed chip, so I took a second prototype board and installed another fresh 80 pin QE128 on it. Just the chip, the programming connector and the voltage source selection jumper. The rest of the board is not populated at all. Not a single component. The flat ribbon cable, connectors, etc. have been tested with a multimeter for pinout and also to verify that the pins on the DEMOQE board are connected to the corresponding pins on the application board. Same problem.

Finally, it sounds to me like that for some reason the part is not entering background mode.

Do you have any ideas or similar experiences ? What I am doing wrong ?

Thank you !

BooleanBob



Labels (1)
0 Kudos
17 Replies

3,368 Views
peg
Senior Contributor IV
Hi Bob,

Presumably you have seen this thread.

0 Kudos

3,368 Views
BooleanBob
Contributor IV
OK, I could program the 80 pin chip in my board by using the 6.0 version of CW.

Kind regards

BooleanBob
0 Kudos

3,368 Views
BooleanBob
Contributor IV
Dear friends:

Based upon the mentioned previous post, now I can program my two application boards with QE128 80 pin version using the CW 6.2 IDE. As I said before. I could make it with the older 6.0 version, but not with the 6.2

This was a quick and dirty procedure that I learned from this post, first downloading the following files from this location:

http://freescale.teknoplex.com/descargas/P&E_DLLs.zip

Made a backup of the existing DLL's found in:

Program Files\Freescale\CodeWarrior for Microcontrollers V6.2\Prog\P&e

... to a temporary folder and then overwriting the new DLL's over the old ones.


ICD08z_dll_v156.dll
ICDrs08_dll_v112.dll
prog08z_dll_v156.dll
progrs08_dll_v112.dll

I could then program my 80 pin device, by using exactly the same hardware without any changes, including the cable.

This worked for me but the procedure is dirty, because I don't have time to find out if it has some serious documents behind. Maybe changing these DLL's could cause some other side effect.

Peg, It seems to me that that they are perfectly reading the kind of chip in the target, if not, how could we explain this fix ? :smileysurprised:

So maybe someone from P&E and / or CW could kindly help us know.

Kind regards

BooleanBob





0 Kudos

3,368 Views
peg
Senior Contributor IV
Hello Bob,

The only way for sure to know what device you have is the SDID register.
These are the values
QE8 $01C
QE32 $01F
QE128 $015
It does not change for package sizes. Also usually different package sizes actually contain the exact same die just with a different amount of pads actually bonded out to pins on the plastic.
Does Codewarrior actually know what is out there? Or are you telling it?

What if you tell CW you actually have a 64 pin QE128 when you use that 80 pin device externally? I'm not actually sure if this is what you do or not.

0 Kudos

3,368 Views
nimblemachines
Contributor II
Hello all.

I chimed in on a previous thread on this subject, and thought I'd chime in again here.

I think this is a very serious problem, and I think that Freescale and P&E need to hear that the Freescale user community find this deeply troubling. It has the very real potential to alienate and discourage both newbies to Freescale and diehard Motorola/Freescale fans like BooleanBob - and myself.

I blogged about this, and I encourage folks here to keep the pressure on until we get good answers, and a good resolution - namely, that CW is fixed to work like it used to.

As far as how the hobbling is being accomplished, my guess - and someone else on the forum floated this idea as well - is that the chips on the (DEMOJM and DEMOQE) daughtercards are not blank ... they have some kind of "sentinel code" burned into a byte or word of Flash that the code on the CW side checks. I think if you used an older version of CW and did a mass erase of the daughtercard chip, then tried to Flash it with CW 6.2, I bet it would fail. I don't have the hardware to try this experiment, but I would be interested in hearing about it if someone could try it.

0 Kudos

3,368 Views
BooleanBob
Contributor IV
Hi there ! Well, I have to give an answer to two friends.

1. peg

First of  all, thanks for the information and the good intentions. Of course I knew about the ID register. Please  peg try to think not so honestly as you often do (and as most of us do)  just for a minute (and I know that this could be difficult). The fact that there is a legal (documented) way to know what chip is outside there, doesn't mean that the chips could have more built in resources that ( as I said before ) are undocumented and for "reserved for factory use".

Tell me why it is impossible to have a special command(s) to know which of the chips is "outside there" ? Of course there are just two signals envolved. Enough to dialog with anything and gather the required information. Fixing the IDE software by changing the DLL's makes the tool accept to program the chip, by bypassing this limitation. Is there another possible explanation ? I bet that if I could have plugged the 80 pin chip in the internal on-board piggyback socket, I would have failed for sure. No doubt. They are definitely not measuring the impedance or stray capacitance of the cables :smileyhappy:


2. nimblemachines

Thank you for your valuable return. I agree with most ( and not all ) of your terms  and I feel that you have understood my point, that goes further the technical problem. I also agree that this is ethically and commercially serious and delicate. As I told you before, I have too many years of full dedication and loyalty to the brand. But I must say that this loyalty came from both sides.

Motorola ( now Freescale ) always gave us this fantastic feeling of being protected, because of excellency in the engineering, power in commercial market penetration and most of all, the best technical information ever, honest behaviour to recognize an errata sheet or a world alert where no other competitor could, even when being in trouble with failed parts.

With this alliances with Metrowerks, P&E, etc. and this kind of behaviour,  many guys like me are being seriously wounded. I don't feel that "Daddy's arms" feeling anymore :smileysad:

If some of you guys have used an Exorciser in the 70's and have learned so much from its almost flawless documentation as my generation did, you will possibly agree with me that P&E has been untidy from the very first minute, the same as CW. I would never had released so poor pieces of evaluation software even if for free, in the name of Motorola or Freescale. Useless  funny "Bill Gates style" help windows and error messages, non working debuggers, windows software management that seemed to be written by hobbysts, etc. etc. etc.

CodeWarrior is not safe from some criticism too. The debuggers start working on version 5. Versions 2, 3 and 3.1 are inexistent, not to count what it taked to reliably program a part using the P&E MON08 programming interface. I used the IDE to write software and the original external stand alone P&E micro programmer to program the parts, such as JK1's, JK3's and the like, because of the unreliable PC and Windows dependent communication timing , etc.

I don't really  want to offend anybody, this is not my intention here, never had. But many of us know that this is true. Hours and hours of frustration without serious support. Is Motorola / Freescale really seriously auditing and quality controlling these providers to match their traditional style and quality level or not ?

So, maybe the big numbers are winning and the small, passionate, sometimes smart engineering is of no importance these days as it used to be. Things change. This is how it really feels from this side. Some modern, talented  sales executives from these companies could probably explain in a couple of Powerpoint slides, with some ascending curves, that all I am talking here is nonsense. I hope that Freescale will soon react and fix this sad panorama.

Finally, thank you for blogging me. I know that almost everything in the internet is for free and available to almost anybody. I want you to say that I authorize you to export my words to your blog, maybe a little late, I'm sorry  :smileywink: I think that this forum should be enough for family conversation. Although serious this time, I still expect Luke Skywalker to get up and beat Darth Vader. I suggest to wait for professional responses.

My best wishes to you all and thanks for being patient.

BooleanBob





0 Kudos

3,368 Views
peg
Senior Contributor IV
Hi Bob and others.

I'm afraid the sarcastic nature of some of my comments does not come across very well in these written fora. Be aware that my citing of only the facts and ignoring that there may be some hidden details is merely a fishing expedition on my part.

On another note, there is NO Metrowerks. They were long ago bought by Freescale and the things we are talking about here are well and truly Freescale. So you can drop them from your conspiracy theories.

Here is another thread on this issue, this time with the QG.
As you can see from this the chances of getting a "real" answer on this is very slim.
I believe it will be up to this community on its own to workaround this marketing imposed @@#$%^!

If anyone can come up with a technically based reason for all of this then we're all ears! (Although you have been very quiet to date).

0 Kudos

3,368 Views
BooleanBob
Contributor IV
Dear peg, I am sorry that you couldn't understand what is the real nature of things here. There is little technical facts. BTW, please re-read my first post in this thread. I think that it was pretty technical as you like it. In my opinion if you want to program these chips well, you better stop thinking naive and accept that we are facing another kind of issues. Sometimes facing the truth is painful, I don't blame you.

Yes you are right, Metrowerk, CW, brands and who bought who ... I really don't care and I am not so worried about brands and trade marks as you, and again it doesn't have relation with the problem. I am trying to place my energy where the real problem is and less about which is the brand who is taking my time and money at the expense of poor results.

I hope that you could find the better way to get the most of such a valuable alternative as this ( or some other ) forum is ( are ). I also wish to intechange intelligence in this forum about so many interesting technical facts. Unfortunately this problem is not really technical to my knowledge.

With all my respect for you and my friends

BooleanBob

0 Kudos

3,368 Views
dongustavo
Contributor I

Ok, after reading this and many others messages I would like to say to PE and Freescale that I won´t ever buy any "official" tool from now.

Sorry for my english... I been for 6-7 hours trying to program a 9s08SE4 with my DEMOQE and I am very tired. 

This is not what I expected from Freescale. BDM must be  "Universal" interface, that´s the intention. AT LEAST, I EXPECTED TO BE TOLD ABOUT THE LIMITATIONS.

It´s a shame.

Bye.

0 Kudos

3,368 Views
BooleanBob
Contributor IV

Hello dongustavo, YES it is a shame and I agree with you. I still think that we should let these guys know about our thoughts. I am using a 9RS908KA2 ( a tiny half dollar chip ) and I had to ask for help in this forum to write a program in C with CodeWarrior. I am a 20 year C language experienced guy. They dont have a single document on this and thousand of other important things that are needed to work with this compiler and the "supported" chips.


Maybe grown up people as me remember the way the old (and still used) Borland Turbo C was presented. It had an excellent 600 page language reference manual and also a 600 page user's manual with all what was important for deeply understanding how the compiler works, with all kinds of tricks and tips, made with love and dedication. Code examples and common pitfalls were also included. A superb job. My questions are if this we have today is really better in terms of product quality and post sale customer service and if it is possible to do something about it ?


Greetings from Buenos Aires, Argentina

 

 

0 Kudos

3,368 Views
J2MEJediMaster
Specialist I

The best course of action to ensure that your misgivings are heard is to file an on-line service request. That way it gets entered into a database and has to be looked at. Click here to enter a service request.

 

---Tom

0 Kudos

3,368 Views
BooleanBob
Contributor IV

Thank you Tom. I appreciate your opinions and suggestions.


In this case, I think that is goes a little further than just a regular claim by using a Freescale service request.

I use this service very frequently and sometimes I get results ... sometimes not. Nobody is perfect.


This case is related to the commercial "bonafide" that the companies are able to offer when they trade their products.

Offering a BDM port in an evaluation kit should work for all (almost) the line of products IMHO. If not, do not include it in the offer. There is no previous warning about this and this can be the reason of my interest in buying the product. But worse than that, is that the BDM port is able to program just some of the chips of the same part number but with more or less pin count. This is really sad. :mansad:


BTW, let me point you out that I have already purchased full fledged equipment to program almost the complete line of products, of different brands. This is not a problem of spending or not the money. It is a problem of changing the minds of the guys that program the way how honestly a product is going to be offered to the public.


Kind regards and thank you for your valuable time.


 

 

0 Kudos

3,368 Views
J2MEJediMaster
Specialist I

I appreciate your candid response.

 

I am sending this information to my managers. I cannot, of course, guarantee anything will come of it but I will done my part as Freescale tech support to make sure that your opinion has been heard.

 

---Tom

0 Kudos

3,368 Views
BooleanBob
Contributor IV

Dear Tom, I also thank you very much for your help.

Please remember that I have made a living from Motorola / Freescale, and I consider this a family discussion. All my words come more from affection than from an economic view. More internal than open to the outer world. People like me with 35+ years of using Motorola chips from the M6800 on ( I still keep chips and the Kit 1 & Kit 2 manuals :smileyhappy:) , wearing the "M" Tshirt for years, may have the privilege of giving some opinion. I've been teaching and I still do technical training every day based upon Freescale chips. I can also hear the voices of other people, most of them newbies, engineers and technicians, that find this issues tough.


The best for you and greetings from Buenos Aires, Argentina.

0 Kudos

3,368 Views
BooleanBob
Contributor IV
Thank you very much TurboBob and Peg.

I though about some commercial trick immediately.

As soon as TurboBob said that many of us have been experienced this same problem, I searched for previous posts and found Peg's and a  carloscuev post in which he indicated to change DLL's. , etc.

http://forums.freescale.com/freescale/board/message?board.id=8BITCOMM&message.id=12922&query.id=56553#M12922

Dear friends: please excuse my ignorance but IMHO, the BDM chip dialogs both with CW and also with the target, and we know that it is easy to know what kind of chip is this. It may even exist some "undocumented" command to do so. But I don't really want to dig in doubtful fantasies. I can assure that my only different thing is the chip itself, and not just the extension of two signal cables :smileyindifferent:

I really hope that I am wrong and that this could be just an untidy version flaw or something alike and that the guys at Metrowerks, P&E and probably others will manage to fix soon, pleasing their customers, making a demonstration of the usual United States bonafide basis on commercial issues, that I know since I was a child.

Now: personally (and knowing that this may sound, and in fact may be insignificant) if I find that this has been a trick to get me caught and force me to buy a superior tool, when my first one was bought upon my bonafide basis, that it had a BDM port to program  just the same chip family - QE128 in my case - I will try from now on to avoid buying "official" tools and probably to switch with pain to other processor provider.

The reason is that I am 54 and I started using a MC6800 when I has 19. I had already honoured the brand and held its banner for a long time. I had been and still I am a good customer. If this issue is true, who is paying for my lost time to find out the reason for this problem ? It would have been much easier to write a line warning the customer that he will be unable to program just an 80 pin chip instead of the 64 pin version that comes in the box. And of course I should have bought the expensive tool from the very start. It is good manners what I am talking about. Please no offense.

It would be really nice if somebody at P&E and/or CW could explain here what the problem really is and how to solve it. Today is my third day with my board resting over my desk to see if I can program the chip. Is this the method to sell POD's ? I hope not.

Kind regards for you all

BooleanBob






0 Kudos

3,368 Views
TurboBob
Contributor IV
I think you are experiencing what several of us have found.
 
It seems that the latest versions of Codewarrior have some sort of lockout that prevents the demoboards from programming off board.
 
I did not find a workaround other than running CW 6.1 until I gave in and bought the BDM pod.
 
I wish you luck in finding a way to make it work,  I was not successful.
 
Bob
0 Kudos

3,368 Views
peg
Senior Contributor IV
Hi Bob,

I'm sorry but I don't agree.
The integrated BDM has very few connections between itself and the rest of the demoboard.
I can understand that in CW 6.2 they could have deliberately hobbled it to only connect to processors of the same type, but how would it know where the MPU was located?
The integrated BDM identifies itself as a DEMOQE so they could use this info to only allow certain algorithms or something. But if you connect the same CPU via some longer wires how would it know the difference?
The only connections are power RESET BKGD and PTC0 and 1. PTC0 and 1 can be disconnected by J11 anyway, so you are left with the signals present in the 6 pin BDM header.


Message Edited by peg on 2009-01-22 09:59 PM
0 Kudos