Hi everyone, I made the effort to create a Digikey kit of all the components used in the PropKey. I thought this would be useful for transparency and order fulfilment if people just want bare PCBs. I have attached the BOM I created. Unfortunately Digikey's interface makes you think that the 'kit' you create is an actual Digikey P/N, but it's not!
This sort of makes things easy for people because if they want 1 or 10, they can choose and tweak quantities to find the sweet spot for themselves.
I have all of the passives on hand, and the switches, which amount to about $2.50 of the total cost (in kit quantity). The total for the BOM is $18.91.
Looks fine to me..! I got a project started on the QuickStart board to gather up engine temps, Rpm ect.. and this little guy would work well on a vector buildup..
Kit-em up, and what would you need for a couple copies.. ?
The design is going out Monday to the board house, I should have 3 protos back in a couple weeks. Once I've worked out the details I'll post the kit cost. Kits will consist of a complete Digikey labeled bag of parts and a PCB, plus some instructions and part layout labelling.
I finally got the PropKey working and have a final layout figured out. The LED is a biggun and will suck down 20ma, which causes the FT232 to be disrupted. I changed the current limiting resistor to 1K and that fixed it.
The whole Prop side of the board worked fine from the get-go, I was just having USB problems. It runs at 96Mhz (because the cylindrical crystals were easy to find in 6Mhz) and the SD card interface works peachy.
I have included pics of the prototype board, now I have to send the Gerbers out for another board spin. The little board really *IS* cool to hold in your hand!
The overall size is about the same as a DIP-40 with a USB connector on the end.
That uSD socket looks like the same part Tubular uses on his Und3rb3lly board.
Tubular was nice enough to give a couple of his little boards (he doesn't sell them but he'll give them away?) and I had a hard time soldering the uSD socket. I did get it soldered, but I thought it was a lot harder to solder than the smt Prop chip.
I'm not suggesting you use a different socket, I'm just giving my opinion/warning. I think the socket is a good match for this board, I just wish they were easier to solder.
Do you have pull-up resistors on both the data and clock I2C lines? I know some of the I2C objects require pull-up resistors on both lines.
I look forward to seeing what these will cost. (I see the BOM in post #32, but it looks like you still don't know what the PCB will cost.)
I think the socket is the same one Tubular is using. I actually reflowed the socket and that side of the board using my hot plate and some paste. It was really easy and quick, surprisingly. The little .8mm pads were a pain, but not really necessary since they aren't connected.
The uSD and I2C both have 10k pullups, so those are compliant.
Wish I hadn't gotten the pad layout backwards for USB on the prototypes
Those "uSD headers" are the same, and they come in about 4 different heights. The "375" variant is 3.75mm high and the easiest to solder by running a soldering iron tip across with plenty of flux present underneath. I can't remember which height I sent you Duane as I use 2.65 and 3.75. They aren't as bad as they look once you get the hang. I think in future I'll just solder the socket onto the pcb before sending out.
I checked Pedward's BOM when he posted it, and he had the 3.75mm part listed, but sounds like he's fine with reflow in any case.
Nice work Perry, sure it won't take long to correct the usb footprint. Aren't you thankful the protos are as cheap as they are. I think Laen deserves a knighthood. Certainly many beers.
The Propkey RC1 is off to the board house on Monday. I'm hoping to get the protos back before May 14th so I can build and test one before I commit to a medium run (~75). I haven't figured out the costs quite yet, I'm thinking about selling assembled units.
My concerns are this: I think the ideal price for the PropKey is around $40 assembled. For someone who has a proper manufacturing line I think that is a price that can make a profit. I don't want to introduce these at a price that would effectively undercut any future opportunities like this.
Assembling kits doesn't require a lot of technical expertise, but it's tedious and time consuming trimming parts off of reels and tracking them. Digikey offers a kitting service at a premium, then you get bagged and labeled parts. I already have many of the passives on hand, so only a small number of parts would be sourced from Digikey, which makes having them kit up the parts somewhat ineffective.
I would have thought, you'd want the holes for P0 and VUSB near the top edge of the board so the USB connection could still be used while the PropKey is attached to the breakout board.
The PropKey board sits far enough off the board (with headers) to use a USB extension cable. I wouldn't expect anyone to connect a 2.5x2.5 inch board to something hanging out their USB port.
I could come up with a smaller board that is just a small header extension board, but it wouldn't have any prototype area.
I think it would be good to have some power (Gnd and 3v3) holes somewhere near the outer four corners. Also there is room for some more holes for P16..19. P16 and P17 could "run" to the left and P18..19 towards the right
I think it would be good to have some power (Gnd and 3v3) holes somewhere near the outer four corners. Also there is room for some more holes for P16..19. P16 and P17 could "run" to the left and P18..19 towards the right
I may have to do a little cheating to add more, I'm at 299 "pins" right now.
I downloaded the PropGCC SimpleIDE and played with it today. I have attached a config file which can be used with the PropKey to program and communicate with it. I have enumerated the SD card pins in the config file so an SD loader can be used. The PropKey has a 64K EEPROM, like the quickstart, etc, so XMMC can be used with that too.
I copied and adjusted the PPUSB config file, since it is very similar, I hope I got the settings configured right.
For the IDE to recognize the new file, put it in c:\propgcc\propeller-load and hit the puzzle piece icon next to the board list in SIDE.
I may have to do a little cheating to add more, I'm at 299 "pins" right now.
Lol yes so you are. I think you could do one long 'Gnd bar' the full length along the left hand edge, and possibly the right hand edge. I think you could steal some holes from the "res" line as its unlikely to need many connections if any
The flash is on P0-P7 and enabled on P26. The RAM is on P0-P7 and enabled on P25. P27 is the serial clock.
The CS and CLK pins could be easily changed with a new driver.
One option is to use P28 for the clock and P26,27 for chip selects. As long as P29 is held high the activity on P28 doesn't matter for GCC. You probably want the hardware to be adoptable by other compiler solutions too, so a wasted pin might be worth it.
The RAM chips are the same part used on the C3 and the flash chips are the Winbond devices that are already supported in PropGCC.
You'll need a pull-up on the CS* line for Winbond QuadSPI chips - see pin notes. I'm worried about higher density part SOIC-8 availability though. Higher density QSON seems more available than SOIC-8 and at minimum they will require no vias under the chip body. Preferably QSON should follow that footprint of course.
The SST SQI parts can also be used with another driver, but our experience so far is that they are not fully single-bit SPI compatible (being fully SPI compatible would be an advantage on P2 for inventory purposes). They are faster than Winbond chips for quad mode address setup, but they are more expensive and don't seem to be readily available in the US.
Some hardware critique if you don't mind: Considering power supply configuration you probably need a few more decoupling caps for the SPI-SRAM and possibly a 10uf low ESR bulk capacitor for both boards. Some folks may insist on series dampening resistor options for the SRAM IO, but the traces aren't really long enough for that - unless the pins get shared. SPI-SRAM is available in 64KByte sizes too for a 512KB solution.
This *should* be the ultimate fastest XMM solution so far.
I'm sure that's arguable, and we will never get any agreement on that argument because of personalities
I would call it one of the fastest "XMMC" code cached solutions and faster than code + data XMM solutions.
DR_ACULA's counter clocked SRAM probably will be faster than byte-wide QuadSPI Flash and other designs, but that eats lots of real-estate. It also takes a huge number of "dedicated" pins - he is working on an interesting pin group mechanism that may mitigate the number of pins required.
To clarify, this is 1 board, top and bottom. The Flash and RAM share the data pins with alternate chip selects.
The 8 pin SOICs are back in stock and it appears that Digikey doesn't maintain more than 100 of any package.
I originally designed it with the 16 pin part, but their pin choices were too goofy to do a clean layout.
I also originally had 1 cap per RAM chip, but that added to the layout space, then I switched to TSSOP to get more clearance. I will go back and add caps now I've got the placement pretty well sorted out. I'll also add another 10uf cap and a 10k bias resistor to the chip selects.
Overshoot dampening for long term reliability and noise suppression.
They can also be useful when multiple outputs accidently drive one node - but no one ever lets that happen
I added pullups and additional caps. The 8 SPI RAM chips share 5 .1uf caps that are equally spaced to serve the chips. There is a 10uf tant near the main power pins. I put 10k pullups on the /CS for the flash and RAM.
I did not put series resistors on the data lines (space constraints with current routing), but I did try to ensure the routes were sane (as opposed to the insane routing that the AR generates from time to time).
BTW, do you have a part number for a 64K SPI RAM chip? I couldn't find such a beast, that didn't cost $11 (because it was the cypress "quantum trap" NVSRAM).
HFS, the Ramtron 2Mbit FRAM chips are $22 each!!! On what planet are they smoking?
After an email with Heinz, I revisited the design *again* and now have decoupling caps on every chip, very near the VCC. It was tricky, but I managed to place and rout it.
A quote from Heinz is pending, so I'll have a better idea what it will cost me to build the memory boards.
The final tally looks like 16MB of qSPI flash on P0-P7 (I realize you put it on those pins to avoid an extra bit shift) and potentially 512KB of RAM on P0-P7.
This would facilitate DMA transfers from flash to RAM, or any other device on those pins, ala Drac's memory setup. But instead of needing a bunch of external shift registers, the SPI chips handle that for you.
HMM, now I'm wondering if I should route the HOLD pins so you can do setup, HOLD, then resume?
Well, I got /HOLD routed for the SRAM chips, so now everything should be happy.
I got quotes back from an assembler to build the PropKey.
The cost to produce a quantity 25 run of these would be approximately $59 each, that's COST!
The cost to produce them in quantity 100 is approximately $34 each.
I'll be honest, I don't have the capital resources to order 100 of these.
I'm considering another approach or 2, building them in small volume at home, or providing a semi-built kit, which has the fine pitch parts already soldered, and leaves the remaining components for the recipient to solder.
My originally projected price was $40, but after getting quotes, clearly that's cutting it very thin.
It was always my intention to get Parallax interested in producing these as a vector for Propeller adoption, but they have too much on their plate right now.
I'm open to comments and suggestions, I don't want to just drop this because of some shorter term logistical issues.
If I produce/sell boards/kits, I can get the bare board for a very reasonable price via Dorkbot PDX, about half the price of the vendor I contacted.
The BOM is still around $16 in quantity 10, and I have almost all of the passives on hand, I would have to order the semiconductors (which are the bulk of the BOM).
@oedward, I'm not at all surprised by these costs. This is why we don't get involved in anything unless we can build 500-1,000 units minimum.
Our first run Propeller BOE costs exceeded $85, and that doesn't include any design/layout/prototyping NRE (that's production only). Building products in the USA is very expensive - period. The only way you can get around this is to build in volume, and often build it yourself (without contractors).
I also want to see PropKey come to production, but I realize the challenges of production are significant in terms of labor.
pedward: Welcome to the real world. Setup costs for a manufacturer are huge, and that has to be amortised. I was a partner in a contract manufacturing plant here in Oz a while back. You really see what goes into even just quoting to build an item.
DorkBot is great for tiny boards in low volumes because the overheads are amortised over a huge pcb. However, larger boards are expensive. So too are pcbs in quantities. I suggest you look at getting a large run of pcbs done (say 100) because then you can amortise the setup costs.
From DOrkBot your pcb is approx 2.4"x0.7"= ~1.7"sq @ $5/"sq/3 = ~$2.80 per pcb.
A pcb supplier I used (forget name atm) they make 4x7" panels for about $80 setup, $30 freight, $5 per panel. Add $20 (estimate) for ENIG
You would get 10 pcbs per panel in a 5x2 arrangement with fingers out and vgroove.
100 pcbs = $80+30+20+$50 = $180 / 100 = $1.80 which is not a great deal better considering the outlay.
They may also charge extra for the complex pcb outine routing.
The reason is that your pcbs do not fit their panel size nicely.
Going to an assembly house incurs a setup cost. For small quantities keeping assembly within a friends and family circle is the only way to go. Even so, having components on both sides is a killer. Small, packed boards inevitably need at least passives on the bottom and that means a costly "second op." Having small boards panelized really helps.
This probably isn't practical, but if there is ANY WAY POSSIBLE to kit PropKey, that will be the direction to go to keep the prices within reason so that you can make enough money to pay for your time, and still have a few people interested in the product.
Comments
This sort of makes things easy for people because if they want 1 or 10, they can choose and tweak quantities to find the sweet spot for themselves.
I have all of the passives on hand, and the switches, which amount to about $2.50 of the total cost (in kit quantity). The total for the BOM is $18.91.
Kit-em up, and what would you need for a couple copies.. ?
Thanks !
The whole Prop side of the board worked fine from the get-go, I was just having USB problems. It runs at 96Mhz (because the cylindrical crystals were easy to find in 6Mhz) and the SD card interface works peachy.
I have included pics of the prototype board, now I have to send the Gerbers out for another board spin. The little board really *IS* cool to hold in your hand!
The overall size is about the same as a DIP-40 with a USB connector on the end.
That uSD socket looks like the same part Tubular uses on his Und3rb3lly board.
Tubular was nice enough to give a couple of his little boards (he doesn't sell them but he'll give them away?) and I had a hard time soldering the uSD socket. I did get it soldered, but I thought it was a lot harder to solder than the smt Prop chip.
I'm not suggesting you use a different socket, I'm just giving my opinion/warning. I think the socket is a good match for this board, I just wish they were easier to solder.
Do you have pull-up resistors on both the data and clock I2C lines? I know some of the I2C objects require pull-up resistors on both lines.
I look forward to seeing what these will cost. (I see the BOM in post #32, but it looks like you still don't know what the PCB will cost.)
Once again, these look really great!
The uSD and I2C both have 10k pullups, so those are compliant.
Wish I hadn't gotten the pad layout backwards for USB on the prototypes
I checked Pedward's BOM when he posted it, and he had the 3.75mm part listed, but sounds like he's fine with reflow in any case.
Nice work Perry, sure it won't take long to correct the usb footprint. Aren't you thankful the protos are as cheap as they are. I think Laen deserves a knighthood. Certainly many beers.
My concerns are this: I think the ideal price for the PropKey is around $40 assembled. For someone who has a proper manufacturing line I think that is a price that can make a profit. I don't want to introduce these at a price that would effectively undercut any future opportunities like this.
Assembling kits doesn't require a lot of technical expertise, but it's tedious and time consuming trimming parts off of reels and tracking them. Digikey offers a kitting service at a premium, then you get bagged and labeled parts. I already have many of the passives on hand, so only a small number of parts would be sourced from Digikey, which makes having them kit up the parts somewhat ineffective.
Below is a picture of the Gerbers from GerbV:
Here's a first cut at the design:
I would have thought, you'd want the holes for P0 and VUSB near the top edge of the board so the USB connection could still be used while the PropKey is attached to the breakout board.
I'm I missing something?
I could come up with a smaller board that is just a small header extension board, but it wouldn't have any prototype area.
I may have to do a little cheating to add more, I'm at 299 "pins" right now.
I copied and adjusted the PPUSB config file, since it is very similar, I hope I got the settings configured right.
For the IDE to recognize the new file, put it in c:\propgcc\propeller-load and hit the puzzle piece icon next to the board list in SIDE.
Lol yes so you are. I think you could do one long 'Gnd bar' the full length along the left hand edge, and possibly the right hand edge. I think you could steal some holes from the "res" line as its unlikely to need many connections if any
What I've got is 16MB of qSPI flash and 256KB of SPI RAM.
The flash is on P0-P7 and enabled on P26. The RAM is on P0-P7 and enabled on P25. P27 is the serial clock.
The RAM chips are the same part used on the C3 and the flash chips are the Winbond devices that are already supported in PropGCC.
This *should* be the ultimate fastest XMM solution so far.
One option is to use P28 for the clock and P26,27 for chip selects. As long as P29 is held high the activity on P28 doesn't matter for GCC. You probably want the hardware to be adoptable by other compiler solutions too, so a wasted pin might be worth it.
You'll need a pull-up on the CS* line for Winbond QuadSPI chips - see pin notes. I'm worried about higher density part SOIC-8 availability though. Higher density QSON seems more available than SOIC-8 and at minimum they will require no vias under the chip body. Preferably QSON should follow that footprint of course.
The SST SQI parts can also be used with another driver, but our experience so far is that they are not fully single-bit SPI compatible (being fully SPI compatible would be an advantage on P2 for inventory purposes). They are faster than Winbond chips for quad mode address setup, but they are more expensive and don't seem to be readily available in the US.
Some hardware critique if you don't mind: Considering power supply configuration you probably need a few more decoupling caps for the SPI-SRAM and possibly a 10uf low ESR bulk capacitor for both boards. Some folks may insist on series dampening resistor options for the SRAM IO, but the traces aren't really long enough for that - unless the pins get shared. SPI-SRAM is available in 64KByte sizes too for a 512KB solution.
I'm sure that's arguable, and we will never get any agreement on that argument because of personalities
I would call it one of the fastest "XMMC" code cached solutions and faster than code + data XMM solutions.
DR_ACULA's counter clocked SRAM probably will be faster than byte-wide QuadSPI Flash and other designs, but that eats lots of real-estate. It also takes a huge number of "dedicated" pins - he is working on an interesting pin group mechanism that may mitigate the number of pins required.
Thanks for sharing,
--Steve
The 8 pin SOICs are back in stock and it appears that Digikey doesn't maintain more than 100 of any package.
I originally designed it with the 16 pin part, but their pin choices were too goofy to do a clean layout.
I also originally had 1 cap per RAM chip, but that added to the layout space, then I switched to TSSOP to get more clearance. I will go back and add caps now I've got the placement pretty well sorted out. I'll also add another 10uf cap and a 10k bias resistor to the chip selects.
Could you elaborate on the series resistors?
Overshoot dampening for long term reliability and noise suppression.
They can also be useful when multiple outputs accidently drive one node - but no one ever lets that happen
I did not put series resistors on the data lines (space constraints with current routing), but I did try to ensure the routes were sane (as opposed to the insane routing that the AR generates from time to time).
HFS, the Ramtron 2Mbit FRAM chips are $22 each!!! On what planet are they smoking?
http://www.ipsilog.com/content/index.php
A quote from Heinz is pending, so I'll have a better idea what it will cost me to build the memory boards.
The final tally looks like 16MB of qSPI flash on P0-P7 (I realize you put it on those pins to avoid an extra bit shift) and potentially 512KB of RAM on P0-P7.
This would facilitate DMA transfers from flash to RAM, or any other device on those pins, ala Drac's memory setup. But instead of needing a bunch of external shift registers, the SPI chips handle that for you.
HMM, now I'm wondering if I should route the HOLD pins so you can do setup, HOLD, then resume?
Well, I got /HOLD routed for the SRAM chips, so now everything should be happy.
I got quotes back from an assembler to build the PropKey.
The cost to produce a quantity 25 run of these would be approximately $59 each, that's COST!
The cost to produce them in quantity 100 is approximately $34 each.
I'll be honest, I don't have the capital resources to order 100 of these.
I'm considering another approach or 2, building them in small volume at home, or providing a semi-built kit, which has the fine pitch parts already soldered, and leaves the remaining components for the recipient to solder.
My originally projected price was $40, but after getting quotes, clearly that's cutting it very thin.
It was always my intention to get Parallax interested in producing these as a vector for Propeller adoption, but they have too much on their plate right now.
I'm open to comments and suggestions, I don't want to just drop this because of some shorter term logistical issues.
If I produce/sell boards/kits, I can get the bare board for a very reasonable price via Dorkbot PDX, about half the price of the vendor I contacted.
The BOM is still around $16 in quantity 10, and I have almost all of the passives on hand, I would have to order the semiconductors (which are the bulk of the BOM).
Our first run Propeller BOE costs exceeded $85, and that doesn't include any design/layout/prototyping NRE (that's production only). Building products in the USA is very expensive - period. The only way you can get around this is to build in volume, and often build it yourself (without contractors).
I also want to see PropKey come to production, but I realize the challenges of production are significant in terms of labor.
Ken Gracey
DorkBot is great for tiny boards in low volumes because the overheads are amortised over a huge pcb. However, larger boards are expensive. So too are pcbs in quantities. I suggest you look at getting a large run of pcbs done (say 100) because then you can amortise the setup costs.
From DOrkBot your pcb is approx 2.4"x0.7"= ~1.7"sq @ $5/"sq/3 = ~$2.80 per pcb.
A pcb supplier I used (forget name atm) they make 4x7" panels for about $80 setup, $30 freight, $5 per panel. Add $20 (estimate) for ENIG
You would get 10 pcbs per panel in a 5x2 arrangement with fingers out and vgroove.
100 pcbs = $80+30+20+$50 = $180 / 100 = $1.80 which is not a great deal better considering the outlay.
They may also charge extra for the complex pcb outine routing.
The reason is that your pcbs do not fit their panel size nicely.
This is why I make rectangular shaped pcbs.
This is the reason my pcbs
OBC