Shop OBEX P1 Docs P2 Docs Learn Events
PCB Critique — Parallax Forums

PCB Critique

Kal_ZakkathKal_Zakkath Posts: 72
edited 2010-04-05 12:00 in Propeller 1
After having hand-etched a few prototypes I'm now ready to step up to the big leagues and get a PCB done professionally, but figured before I shell out the money I'd chuck it up on the forum for some more experienced eyes to look over.

Here's the main things that separate this particular board from the others out there:
-All through-hole parts (easy soldering!)
-Big enough for ZIF40 connector (in case, like me, you worry about breaking pins when you try to remove the prop)
-No EEPROM on board (This way I can move the main board from project to project without having to re-program it)
-Dip switch (4) that controls:
--1. Power LED (I may want to turn it off for some battery powered projects, or if it is in an enclosure)
--2 & 3. Connects P16 and P17 for ADC to Vin (so battery level can be monitored)
--4. Bypasses the 5v regulator* (For some battery projects I am planning to run from a 6V SLA battery so shouldn't need the 5V reg)

*for safety this bypass also requires a jumper to be installed

The silkscreen still needs some additions, and I haven't decided whether or not to squeeze in space for a barrel connector but most of the grunt work is done.

Lastly, in case anyone else finds themselves in my shoes (the no-PCB-experience shoes that is) here's the main points I've come across for propeller designs:
  1. ALL Vdd and Vss pins should be connected
  2. All ICs should have decoupling caps on each pair of Vdd and Vss pins - as close as possible to the pins·(I'm going with 0.1uF caps which seem fairly standard)
  3. The prop's power tracks should be the first ones laid out (i.e. they should be the shortest possible)
  4. Power tracks should also be thicker than data tracks (>= 0.04in·for power, I'm using 0.013in for data)
  5. Right-angles in tracks should be avoided (though this is probably a minor one, more applicable for high speed comms and such)



Edit: Updated power track width after jazzed's suggestion

Post Edited (Kal_Zakkath) : 4/4/2010 8:07:36 AM GMT
2673 x 1890 - 192K
283 x 657 - 25K
283 x 657 - 19K

Comments

  • pullmollpullmoll Posts: 817
    edited 2010-04-04 03:58
    You mentioned main point #2 and yet have the capacitors sitting at the edge side of the PCB, not directly beneath the Prop.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    He died at the console of hunger and thirst.
    Next day he was buried. Face down, nine edge first.
  • Kal_ZakkathKal_Zakkath Posts: 72
    edited 2010-04-04 04:11
    Indeed I do - that's because I'm allowing for a ZIF40 which takes up more room than is indicated (the silkscreen shows the standard DIP40 size), and I thought it best to have the crystal close to the prop (though perhaps I should swap the capacitor and crystal?). Except for crystal-side the only way to make them closer is to put them on the bottom of the board, but I'd prefer it to sit flat.
  • smbakersmbaker Posts: 164
    edited 2010-04-04 05:08
    I'm now on my 4th professionally made PCB, so I'm fairly new to this as well. The first one (last year) was a bit intimidating and worrysome, but it really does get easier with time.·My only·question is your general design goal - you mention moving the board from project to project as the reason for keeping the EEPROM off board. The components on your board are pretty cheap (most expensive is probably the prop or the ZIF socket), and economies of scale dictate that it's more economical to get four or more boards made up than just one or two. Why not get·as many·boards made up as you expect to make projects, and put the EEPROM and a DC barrel jack on the PCB, so that you'd have a complete running solution? That would seem to be oh so much more convenient, especially if you ever want to build a tiny project that requires just the CPU and a few additional components.

    I also purchased ZIF sockets·when I got started out·of worries of bending pins...·All but the first·of them are still sitting in my parts bin, because I found them to be unnecessary. 40-pin DIPS ICs seem to be pretty durable, and you probably won't be replacing the prop unless it's damaged anyway.

    If you are worried about damaging pins, you could always stack the prop on top of another standard 40-pin·socket and remove/replace prop+socket as an assembly. I used to do this with the little 18-pin PICs back when they had to be put in a UV eraser to erase them. Never bent a pin, so it was still unnecessary precaution, but it made me feel safe.
    ·
  • jazzedjazzed Posts: 11,803
    edited 2010-04-04 05:50
    If you have 10 thumbs a ZIF socket may be useful. Higher quality DIP40's last a very long time across many insertions.
    Your power traces should be closer to 50mil (0.05") width (>= 40mil). Why do yo have a resistor between VDD and +12V?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • Kal_ZakkathKal_Zakkath Posts: 72
    edited 2010-04-04 06:18
    I've been using cheap DIP40 sockets with my last few boards but thought it might be good to allow for ZIFs in case I ever decide to sell the boards·(and it's not the insertions that gave me concerns, it's the chip removal that makes me worry about bending pins).

    I've gone back and forward on the EEPROM issue but still not decided yet, I suppose with SD bootloaders and such it's easy enough to change the code on-the-fly if needed.

    jazzed: Thanks for that, I'll up the power trace width. Where is the resistor?

    ·
  • jazzedjazzed Posts: 11,803
    edited 2010-04-04 06:28
    Kal_Zakkath said...
    jazzed: Thanks for that, I'll up the power trace width. Where is the resistor?
    I saw it in your schematic in top right corner. Just curious.
    You should at least put a wide body SOIC SEEPROM footprint and pullup for SDA pin on your board ....

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • Kal_ZakkathKal_Zakkath Posts: 72
    edited 2010-04-04 08:03
    Ah, the top right of the schematic is for the prop's sigma-delta ADC (2 resistors + 2 caps) as described in the app note.
    Caps are both 1nF (one to GND one to 3v3), resistor from P16 to P17 is 100k, resistor to 12V (Vin) can vary but from the app note 150k is a good start.

    Any EEPROM will be DIP8, in keeping with the rest of the through-hole soldering on the board (plus I think I've already got some in a box waiting for me to get the boards done)
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2010-04-04 08:55
    K, that sigma-delta needs careful placement, the whole thing should really be installed in the chip if possible which of course it isn't, so get as close as you possibly can. I don't know why you have a resistor going to +12V though, you aren't getting confused with the microphone bias resistor are you?

    My advice is to skip the ZIF socket altogether, it's useless but I would rather put resistors (100..220R) in the I/O lines to protect against damage and have the Prop soldered or socketed if you must. Always try to be flexible as possible in a design as you can't design for every eventuality so allow for an EEPROM on board, it costs little in time to design it in and takes very little space.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    *Peter*
  • Kal_ZakkathKal_Zakkath Posts: 72
    edited 2010-04-04 09:18
    The app note says within 1 inch of the chip, which I think is the case. Dropping the ZIF layout will let me squeeze them a bit closer than they are though. The resistor to 12V (or Vin) is because that is what I want to measure with the ADC (i.e. Battery voltage).

    I'm adding in the EEPROM now, will upload the updated version either tonight or tomorrow.

    As for adding in the protecting resistors - the thought had crossed my mind, unfortunately you can't use them on video output pins (unless I'm mistaken), and I would rather not put such a limit on the board. I suppose if any chips do get fried it could be a good excuse for me to move towards the surface mount ones.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2010-04-04 10:19
    Kal, the sigma-delta will prove to be a problem but if you are only measuring the +12V supply then it probably won't matter. Remember that the pins on the DIP package are already further away from the chip than compared to the SMD packs. On the other I/O pins if your series resistors are 100R you can always subtract that value from the final value you want to use. Remember that as inputs it doesn't really matter what value you use within reason of course and for outputs you never really want to short them out, there is always some kind of current limit somewhere or even as a signal output it is usually irrelevant that it has has some small resistance in series.

    I know I was being a bit blunt in saying the ZIF is useless but that is really a very quick way of summing it up for many reasons. The resistors will probably provide more of what you need as you really don't want to keep swapping new chips in all the time, even if it is super easy. DIP ZIFs were made for quick programming of a lot of old technology EEPROM/OTP and non-ISP devices, a rapidly fading requirement these days.

    I can only wonder about the +12V to switch to DIP switch and then to +5V option though, a "I knew you were messing with the switches and it's going to cost you now" provision?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    *Peter*
  • Kal_ZakkathKal_Zakkath Posts: 72
    edited 2010-04-04 11:32
    Here's the updated layout\schematic. Now with wider power tracks, barrel connector, and EEPROM on the board. Also removed the provision for a ZIF socket so things are a bit tighter now.

    Peter: Yes, Vin is all I care about for the ADC (which will probably be in the range of +5.5V to 7V, not +12V), and it's only for battery charge monitoring so it doesn't have to be super accurate.
    The 12V->5V switch (effectively bypassing the 5V regulator, note that it also has a jumper to help prevent it being toggled by accident) was mainly for when it is running off a 6V battery where the 5V regulator would not be needed for anything (my main project planned for this board uses only 3v3 ICs) but·the project does involve over-driving an IR LED (somewhere between 500ma-1A peaks) so I will get the power straight from the battery instead of going through the regulator first - I also figured that having the option to get Vin to the daughter boards would give more versatility if I·ever·needed it and could be ignored if I don't.
    1264 x 876 - 64K
    539 x 1348 - 86K
    539 x 1348 - 69K
  • Cluso99Cluso99 Posts: 18,069
    edited 2010-04-04 12:25
    While I note you have added the eeprom, I think you may not realise it's importance. The prop does not have internal flash or eeprom, so you need this to hold code, even to boot from SD. So unless you plan to download your code each time you power up your prop, you will require the eeprom. You should also use more than 2 x 0.1uF bypass caps. I use a 10uF Tantalum as well.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
    · Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
    My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz
  • LeonLeon Posts: 7,620
    edited 2010-04-04 14:16
    Vss and GND appear to be the same net, and are actually connected, which is very confusing. Most PCB packages would flag that as an error, unless they were joined at a star-point. You should just use a single GND net.

    You should rotate all the GND symbols that are the wrong way round, it looks rather strange the way you have done them.

    I'd use a turned-pin socket instead of the ZIF socket. They are cheaper and very reliable. If you are paranoid about bending pins get a chip puller.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Leon Heller
    Amateur radio callsign: G1HSM

    Post Edited (Leon) : 4/4/2010 2:28:41 PM GMT
  • mparkmpark Posts: 1,305
    edited 2010-04-04 16:12
    jazzed said...
    ...
    Your power traces should be closer to 50mil (0.05") width (>= 40mil).

    Does that rule apply to the little surface-mount Props too? I made a board for the QFP prop with 0.025" power traces—is that not wide enough? There isn't room for anything wider.

    I am seeing a large number of PLL failures with my little board, though. I wonder if it's the power traces or my usual bad luck with hardware (my own private Pauli effect).
  • Cluso99Cluso99 Posts: 18,069
    edited 2010-04-04 16:40
    mpark: There is no hard and fast rule for power traces. It depends on how much current it is supplying and switching loads. Often I will use .020" but I try to then make it into a power plane and of course ground plane. You need to have the xtal use larger traces and as short as possible, with a ground ring around the xtal pins/tracks. You also require proper decoupling at all power/ground pairs (4 sides on the QFP) and a tantalum is preferred/recommended. If you have not adhered to this you could see the PLL failures. Parallax use 2 x 1uF decoupling caps on the protoboard.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
    · Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
    My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz
  • LeonLeon Posts: 7,620
    edited 2010-04-04 16:47
    IIRC, the main cause of the PLL failing is not connecting both Vdd pins. They should both be decoupled, of course. The PLL might also be more susceptible to ESD than the rest of the chip - I always put AVX TransGuards on industrial boards. The only Propeller chip I've had die on me was one which I supplied with 9V, caused by a nearly invisible solder splash across two regulator leads.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Leon Heller
    Amateur radio callsign: G1HSM

    Post Edited (Leon) : 4/4/2010 4:52:17 PM GMT
  • jazzedjazzed Posts: 11,803
    edited 2010-04-04 18:57
    mpark said...
    Does that rule apply to the little surface-mount Props too? I made a board for the QFP prop with 0.025" power traces—is that not wide enough? There isn't room for anything wider.

    I am seeing a large number of PLL failures with my little board, though. I wonder if it's the power traces or my usual bad luck with hardware (my own private Pauli effect).
    @mpark, 0.025" traces are Ok if they are not too long. It is a physics problem of course. There are no quick and concrete rules, but the beefier the power rails the better. With power and ground planes to offer lots of copper to reduce the resistance and lead inductance, trace width is much less of an issue.

    I doubt there is enough difference in voltage between the Propeller pins to cause PLL failures with 0.025" traces if they are reasonable length. Bad solder joints are a more likely cause.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    May the road rise to meet you; may the sun shine on your back.
    May you create something useful, even if it's just a hack.
  • scottascotta Posts: 168
    edited 2010-04-04 19:14
    Make your pads larger, easier to drill if your making a few by hand.

    Make the traces a little larger.

    Other than that, looks good.
  • Kal_ZakkathKal_Zakkath Posts: 72
    edited 2010-04-04 22:19
    Thanks to everyone for all the help so far, here's the latest changes:

    -Made the non-power lines thicker (0.02in)
    -Made the xtal lines thicker (0.039in)
    -Added 10uF bypass caps

    Also fixed up the VSS/GND stuff in the schematic.

    Here's the new top layout, I wont bother uploading the other two files as they have barely changed.

    scotta: I'm not planning to do these ones by hand so I'll leave the pads as they are

    Cluso: I realise the need for the EEPROM, my original idea was to have the EEPROM on one of the daughter boards so that I can just unplug one board, plug in another and off I go without any reprogramming - but after reconsidering the EEPROM will now be on-board and I'll use the SD bootloader to acheive the same effect.
    Cluso99 said...
    ...with a ground ring around the xtal pins/tracks...
    Should I also put a ground ring around my xtal? or will the ground plane underneath suffice?
    539 x 1348 - 89K
  • Cluso99Cluso99 Posts: 18,069
    edited 2010-04-05 06:49
    I would still put the ground plane around the xtal and a via near the lower side of the prop close to the prop to the gnd plane on the underneath - but not underneathe the xtal.

    I have a bootloader for the RamBlade that does what you want. Works great and only relies on fixed pins for the SD card (changeable in the con of the code), so just recompile it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
    · Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
    My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz
  • Kal_ZakkathKal_Zakkath Posts: 72
    edited 2010-04-05 12:00
    Here's the newest (and hopefull last smile.gif ) version.

    Cluso: Hopefully I understood what you meant about the ground loop around the xtal - why did you say to use a via instead of going to the prop's VSS pin? just curious.

    Also managed to shrink the board down a bit to 4.3" (109.2mm) so hopefully it's small enough to *just* fit in a 111mm project box.
    545 x 1310 - 70K
    545 x 1310 - 87K
Sign In or Register to comment.