No Script, No Fear, All Opinion
RSS icon Home icon
  • EEVblog #53 – Mr Murphy and Microchip PIC Silicon Bugs

    Posted on January 7th, 2010 EEVblog 42 comments

    Dave tangles with Murphy’s Law and Microchip silicon bugs with his latest PIC project.

    The PIC24FJ256 errata

    And that Jim’s Mowing Franchise looks pretty tempting.

    Be Sociable, Share!
     

    42 responses to “EEVblog #53 – Mr Murphy and Microchip PIC Silicon Bugs” RSS icon

    • Poor Dave ;)

      I feel for you, I have been bitten by this in the past, read all the datasheets, tool documentation, designed the part in, ordered the emulator to be able to write and debug the code (was for a battery charger) only problem when the emulator arrived, it does not do the part, the company said they will never make an emulator for the part, turns out marketing made the decision they would and just wrote it in the documentation :(

      So I had to change the chip from the 8 pin to the 20 pin part. That worked well :) Luckily in the end it all worked :)

      Regards,

      Kat.

    • I really like your blog. I found out about it a few days ago and have already watched through them all!

      And thanks for the heads up. I guess I’ve thought too much of hardware manufacturers and that silicon bugs were extremely rare. I will definitely keep this in mind.

      /Another swede

    • What is the silicon sheet you speak of? Where can they be found, on the data sheet? I am a noob still in school but would be handy to know about this topic.

    • Dave,

      Don’t get too discouraged, I’m sure that this is going to be a great calculator when it’s done!

      Another lesson that can drawn from this experience is to not design with the latest chips, wait for someone else to find the bugs and the manufacturer to fix them.

      -Katie

      • But then Murphy ensures you still get screwed with old silicon stock!

        • Or worse, you get screwed up deep into production with new silicon with new bugs. Like the Microchip PIC18F2220/2320 parts where the newest revisions of silicon have a bug that if you use the power up timer, the chip won’t actually start running. Causing the manufacturer to call you and ask why all the pre-programmed chips you sent aren’t working in a board that they worked in previously.

          Just a heads up. That it isn’t always the manufacturer changing parts or breaking things, it could be the parts transparently changing on you.

          Richard

    • This is very familiar to me.
      Caught by the same bug on the PIC24FJ256GB106.
      I read the errata before selecting the device.
      When doing the layout I decided on pair 3 since it made the board easiest to route.
      Nice knowing I’m not the only one.

      • The same happened to me with a 24FJ128GB108. I actually got to learn the ICSP protocol while debugging…

        The funny thing in my case is that neither Microchip support nor the local Microchip distributor advised me to read the silicon errata. I checked it in a moment of paranoia, and when I saw the problem in the errata I just couldn’t believe it…

        The distributor was really embarrassed when I finally told them what was happenning, I still don’t believe they didn’t tell me to check the errata.

        VERY NICE blog Dave, Keep it up!

    • I often want to know when a Jim’s garbology franchise starts.

      You do however realise you can be rejected as a garbologist if you are over educated!

      • I can pretend I know nothing!
        I’ve heard Jim’s Test’n’tag is rather lucrative, perhaps that’s the shot!

        • Back in the Mid 90′s I used to do this (self employed) I had an L class electrical license (now an R class) and own a Safe T Check unit, just plug the equipment in, connect the earth clamp, hit the button and look at the meter (it says pass / fail (literally that is all that is on the scale !!)

          I used to charge au$10 per test tag, could do 40 in an hour ;) was great, got to see the Perth Tunnel before it was opened due to tagging for the fire sprinkler company.

          These days the on site electrician does it for cartons of beer ;)

          Regards,

          Kat.

    • Dave,

      do you still enjoy electronic engineering, or would you prefer to do something else if you had the chance?

      John McVirgo

      • I wouldn’t be doing it if I didn’t enjoy it.
        But like any job really there are good times and bad times.

        Would I prefer to be doing something else?, sure!, I’m not foolish enough to say I love electronics as a career enough that I don’t dream about doing something else! There are plenty of jobs that sound a lot more fun than electronics engineering that’s for sure, but just how do I get a job as say a reporter on one of those travel programs for instance?

        Electronics will always be a hobby though if I ever give it up as a career. I buy my lottery ticket every week in hope!
        Ohhh… that just gave me an idea, maybe I should accept instant scratchies and lotto tickets instead of PayPal donations?

    • I had a couple of nervous breakdowns with PICs. Once I even packed all my electronic stuff in boxes to move to garage. Thought that story writting suits me better :)) But EE is addicitive! Now I movet to Atmel/Arduino and everything is working out perfectly.

    • Dave,

      As a silicon designer (not of PICs) I can only apologise for the pain caused by errata. If it helps, the marketing team usually make sure the designer(s) at fault for the bug feel great shame and I’ve worked in places where an “bug league table” was kept and the leader gently humiliated at Christmas parties and the like. Usually the painful process of trying to fix the bug cheaply in a metal-layer only fix is punishment and deterrent enough in itself!

      I am surprised however that a bug as egregious as a whole interface not working slipped through the post-silicon validation phase however, I guess they thought they could sell it regardless!

      Love the podcasts and hearing stories from the trenches, please keep it up knowing your making at lesast one geek happy!

      Alex

    • Dear Dave,
      thats a pity for the nice prototype. I’m not into PICs anymore, but perhaps it would be possible to connect one of the other ICSP Ports and flash a bootloader in it, so you can at least run your software on it.
      Regards,
      Joe

    • Where was the PIC24FJ256 supplied from? A “proactive” authorized Microchip distributor “may” have given you advise before purchase/supply and prevented Murphy.

      Joe

      • Hmmm no answer

        • It came from Farnell. There is no way a supplier can be expected to keep up to date and keep track of every revision of silicon of the hundreds of thousands of parts in their inventory. Even if you buy from Microchip direct you don’t know what revision silicon you are getting.

          • Well I beg to differ, as some micro manufacturers put the chip revision as a suffix in the part no AND some suppliers keep the full revision on their data base price list.

            Some suppliers/distributors even inform customers when a new revision is being release and a automatic email feed to the customers.

            But some customers do not need suppliers like this a Murphy takes hold.

            Catalogue resells like Farnell / RS and Digikey do find it difficult to provide this level of service… but perhaps other “local” Microchip suppliers can and do offer this services to “valued” customers.

            Suppliers/Distributors…. who needs them?

            Joe

            • If you register for PCN notifications on the Microchip web site they will send you PCN’s.

              See here
              http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2802

              Could this have prevented Murphy?

              Joe

              • In this case, no it wouldn’t have helped, because it’s an existing silicon bug that got me. One I didn’t think would be a problem at first, but then turned into one when I made a last minute change without rechecking.

            • Hi Joe,

              In my case that didn’t help, neither microchip support nor the local microchip distributor gave me good advise. I had to find out on my own…

              I’m not saying Microchip gives bad support or products, but in my case, I just had to deal with the issue alone.

              I hate silicon bugs as anyone else, but if there is something I hate more, is manufacturers that don’t provide silicon errata sheets. I guess these errata just happen on all manufacturers, and it is very nice that they publish them for all of us to know.

              Regards,

    • Microchip really should update the datasheet and publish the errata.

      - Murphy’s laws also apply to lawn mowers as well…

      Just for when stuff actually works, where can we buy flying pigs from (like the one in “Pigs fly at Microchip”)

      • LOL, I bought one soon after I say that video blog from a US Ebay Seller.

        Cost was about 27AUD, including postage.

        I figured it was good value.

        Damn thing really works well, even picks up speed the longer you leave it for.
        Oink Oink :-)

    • Hi Dave;

      Your calculator project looks fantastic! Hope you’ll be telling us more about it soon.

    • Michael Thompson

      I thought he was going into the TV repair business?
      Didn’t he want everyone to ask him about fixing their TV sets?

      ;)

    • Nice looking calculator, what is the completion ETA? I am looking forward to seeing the finished product.

    • Hi Dave!

      Sorry to hear you got hit by the big bumper of Mr Murphy again.

      PIC is a quirky piece of hardware. Once I’ve been hit by an application where PIC said they had a solution for high power LED control. One of the features was a high speed comparator for controlling the switching current in the boost/inverter circuit. Guess what didnt work? The highspeed comparator! Holy crap! Entire concept was false!

      The compilers for their 12-16 series is in my opinion almost a no-go in professional environments.

      I think working with PIC (or maybe it is microcontrollers in general) raises blood pressure and shortens male’s lifespan.

      Getting better though!

    • Dave, thanks for the Australian Errata version, glad I wasn’t taking a drink of tea at that point.

      The “given two or more ways of hooking up something wrong, the sensor will be hooked up wrong” thing universally applies unfortunately.

      Murphy’s observation has bitten me in every field at one point or another.

    • Joining the club, encountered the very same problem with some PIC24 chip, and of course I had selected the third set because it suited better the board layout.
      Fortunately I was able to work around that in prototype (and fix properly for next revision of board, I never expect my first board revision to function fully anyway), but soldering jump wires directly to those 0.5mm pitch pins gets old real fast…

    • How timely! I was just contemplating hooking up a PIC24FJ256GB110, and wondering what the heck the multiple PGEDn/PGECns were for and not finding anything on the data sheet…when this came along. Now some further thoughts:
      1) Why have three sets of programming signals ALL ON THE SAME CORNER? This is not of much help in general when it comes to laying out boards. Only 2 pins separate the PGEx3 pair from the PGEx1 pair and none come between the PGEx1 and PGEx2 pair! Why bother!
      2) And how is one supposed to know why their board is not working if they try the PGEx3 pair?: the only way to determine the revision number is by reading the chip! A classic chicken and egg scenario!
      3) How many other people have come to PICs from other processor families and find Microchip’s data sheets bizarre? There ought to be a site to encourage manufacturers to standardize their data sheet organization (and file naming policies!) across the industry. Anybody know of such?

    • One of many items that should be on every engineer’s checklist once the design is “done”, but before fabbing a PCB:

      re-read all the errata for all devices on your board. It may take several hours to go through all of them, but it is well worth it. (you do have a checklist, don’t you? :) )

    • Hi Dave,

      How is the uCalc proyect going?
      You must be very busy since nothing was published in the forum for so long.

      I’d like to ask you something. If you have the capacity as you said, and I dont have a doubt about it you have it, to carry on a proyect in a few weeks, why dont you make everyone’s dream and make a pcb board to intall in a, let’s say hp 27s, and convert it in an improved hp42s with usb… an hp42sx?. Note that you’ll have already the screen and the keyborad, you only need the circuit. And there is plenty of space inside.

      I suppose the unswer is the available time.

      Please let us know about the uCalc. I’ll buy one for sure, if it’s at reassonable price.

      jose

    • Murphy’s law comes in quite handy sometimes. I’d rather discover a problem whilst developing rather than after the product has been shipped!

    • Microchip should sell their erratas and price them on the number of bugs, PROFIT !!!

      I had found the perfect uC for my project (which needed some particular features, PWM synchronized with comparators and stuff…) it was a dsPIC…

      Turns out all the particular features I needed didn’t actually work ! Duh !

      After reading the errata I used an Atmel ;)

    • Hi,

      do you still enjoy electronic engineering, or would you prefer to do something else if you had the chance?

    Leave a reply