We are a team of designers who have worked for many years on dev boards for micro-controllers from various manufacturers: Analog Devices, Texas Instruments, Freescale, Embedded Artists and recently Olimex. In July 2009 we bought a couple of Olimex LPC-2378STK from the Italian distributor. The boards have been properly delivered and paid for on delivery, shipped in identical boxes, bearing the words LPC-2378-STK-A. Inside the box the boards were marked both as Olimex: LPC-2378-STK (C) 2008 Rev.C. So they looked identical to us…
We began to develop firmware in late 2009 and early 2010 on one of two boards, in order to adapt the FreeRTOS porting originally written for the Keil MCB2368 board, modifying it for the Olimex LPC2378-STK board. Mission successful: the porting works.
Then, as per our policy, we repeated the same procedure on the other board: nothing to do, exactly the same project was not working. After weeks of failed attempts and many headaches, we have come to compare the 2 boards, chip by chip, and then we have found the secret: on one board (the one that doesn’t work) is mounted an LPC2378 rev. ‘-’ (i.e. before rev. ‘A’) while on the other board (the one that is working) an LPC2378 rev. ‘B’. It may seem trivial but it is not, as we just discovered checking the document LPC2378 Erratasheet from NXP (http://ics.nxp.com/support/documents/mi … pc2378.pdf): the review ‘-’ has several bugs that were fixed in later revisions (in 2007 NXP has already shipped the ‘B’ rev., in 2009 the ‘D’ rev.) Among the others, the MAC port management and MAM, strength of the LPC2000 series; we cannot use it on the review ‘-’. In practice, we bought two different products that are presented as equal by Olimex; on each of them it’s necessary to write different instructions. Furthermore, when we’ll go into production with boards designed by us, we’ll have to rewrite the firmware again, because currently micros that are for sale (Digikey, Farnell, etc, etc.) are, of course, in rev. ‘D’ (By the way, why did we receive one ‘-’ rev. and one ‘B’ rev. in July 2009 ?)
We asked our Italian reseller to exchange at least the rev. ‘-’ board with a rev. ‘B’ board, but the bare support was: “I suggest you apply directly to Olimex”.
The support from Olimex has been:
"We always are among the first who offer development boards with the newest microcontrollers. This is what our customers expect from us, so we usually receive among the first ICs which the silicon vendor produce. I hope you will understand that we and all our distributors can’t throw away in the garbage can all the ICs and products we have each time NXP or somebody else change revision from - to A, or from A to B. We can’t do this nor we can control what mix of boards are in our stock or in our distributors stock. I hope you understand that every microcontroller have bugs, be sure even the revision D you got have bugs and soon there will be revision E on the market.
Best regards
Tsvetan / Olimex"
The support from NXP has been:
"Sorry to hear you had to go through all this time and trouble. From NXP point of view all i can say is that we try to make our devices bug free. So errata fixes are always nicely documented and published. From the moment we have a new revision we never produce or sell older rev parts.
However, It can happen that third party tool vendors and distributors still have older stuff in stock, which they deliver.
So always check errata sheets and revisions . . ."
Regards,
Paul"
Moreover, having we taught last year the course “Microprocessors and microcontrollers, SoC ARM”, for the Master of Science in Electronic Engineering at the Università degli Studi Roma Tre, we were assuming the use of LPC2378-STK boards, but after this accident we can’t do that: the students could receive many boards mounting different micros.
It’s a shame for the NXP Semiconductors; so much effort to bring the LPC2378 from rev. ‘-’ to rev. ‘D’, but customers are still receiving rev. ‘-’.
Regards
eNGSistemi