Another day, another project, another fixup..


We designed a microcontroller board for a power supply, but somehow we forgot to add the oscillator to the circuit. We thought it was enough to add two nets called ‘OSC1’ and ‘OSC2’ to the schematic… Why can’t Eagle cope with that automatically?!

The lovely photo was taken with an A5000, and Android-based clone of the iPhone 4 sold at the top floor of the “even dodgier” cell phone building in Shenzhen. We like to call this little toy the iPhony. Not bad for $90.


Time for rev 2…? Give up…? Get a¬†more suitable¬†job…?

Where did you fail today?

Join the Conversation


  1. LOL nice post ;D
    BTW, i like the ICSP footprint, is that to be used with pogo pins? Can you provide some detail about that?

  2. You should use the internal oscillator of the PIC (FRC or something like that in the configuration bits), maybe it would avoid a second PCB revision.

    1. Considering that the gadget likely uses USB, internal osc is not good enough.

      However, how come that Eagle didn’t catch this using ERC? Two pins/nets hanging “in the air” should normally make ERC complain.

      1. That works only for low speed USB. There are various limitations on things like the maximum amount of data you may send in one go if you are using low speed, it is often simpler to use full speed and add that crystal.

      2. I can’t recall I used ERC on this board (or ever for that matter). Good tip!

        BTW this is an old post written many months ago (april last year), but never got posted at that time. SO no fancy new PIC uC; it uses the pic18f26j50 (24j50 with more memory) and would have used the open usb stack.

      3. The schematics says PIC18FJ250 so I guess the poster assumed it was the 18F25j50 PIC that can, indeed run USB from internal osc. only, but only low speed.

        re ERC – it is a good habit to run ERC check on every change before moving to the board – it can save you a lot of grief. I am not sure whether it is possible in Eagle, but some tools allow to run ERC automatically on save and such. Worth having it on.

        Kicad would have marked those pins as not connected to anything in the ERC report (you must label unused pins explicitly if they should be left unconnected in Kicad).

  3. I worked in a hospital environment on patient monitoring equipment. Each measurement used a seperate plug-in module with edge connectors, plated fingers on module pcb. The nurses had a supply of spare modules and would swap out ones that seemed to be defective. It was common for them to put masking tape on the plated fingers with symptom information written on tape. These modules were analog and had some high impedance circuitry. Over time we discovered that the adhesive residue became conductive over time and that just pulling tape off board did not fix problem. We had to clean board fingers to remove shorts caused by tape. I mention this because it seems there is masking tape on uP.

  4. I’ve done worse yesterday.

    One of my customers waits for me to populate and ship some boards. After placing an order on Farnell to get the parts I needed, when the parts arrived I realized that I ordered the wrong type of ZIF connectors and that the spacers are too long (15mm instead of 10). I made a new order, adding some components that I completely forgot of and started soldering what I already had.

    When I finished soldering the last pin of an ULN2003 I realized it was placed in the other way round. Carefully got the beast off the board, cleaned it up, then solder it back. Once again, in the wrong way. Words alone cannot express my deep feelings I had.

    You thought it’s over? Mee too, but not yet. I ordered all the diodes in the wrong package and they barely fit on the pads. The buzzers which are already soldered in place in an analog section are not buzzers, but piezo transducers. And I was wondering why there’s no sound from them. New order ongoing. Farnell and UPS must surely love me.

Leave a comment

Leave a Reply to Jan Cancel reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.