Custom PSoC 3 Board Design

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hey guys,I'm an undergrad student from BITS Pilani,Goa campus,heading the on-campus CUA Initiatives.We're trying to build a custom PSoC3 board,to better suit our specific needs and for wider exposure of this tech amongst our student body.

   

The first version is going to be a bare-bones solution,i.e just the PSoC3 chip,the required capacitors around and a programming header,with as many pins broken out to headers as possible.All power rails will be provided via off-board supplies,or not.Lets see.

   

A few specs the board needs to meet,( I do understand these might be impossible to meet

   

1.Single Sided

   

2.Can be etched using toner-transfer method of self PCB Fabrication.(Hence the first point)

   

3.Can be hand soldered 

   

4.Low Cost.

   

All these point toward the DIY nature of board production and assembly,essential for easy access to PSoC3 solutions,without requiring large numbers of FTKs and DVKs.

   

Let me discuss each part of that in some more detail,since I want some help on this design.

   

The PSoC 3 Chip - Owing to the fabrication constraints mentioned above,we're going to go with the 48pin SSOP chips of the PSoC3 family for our initial designs. We would like to go with the CY8C3866PVI-021 (most feature rich SSOP part) but its $14.So,our next option is the CY8C3246PVI-147,which is priced at $7.We do lose a few features,but lets see how that goes.

   

.

   

Just the required capacitors - We'll probably have 0805 SMD caps where needed,according to the schematics(I'll come to that) in the datasheet for the PSoC3 Family.

   

.

   

Programming Header - Now this is the tricky bit.We would like to reduce cost and parts,hence the mini prog would be the first to go.That leaves us with 2 options,one - build that FX2LP programming circuitry OR,do a one-time program of a custom UART/SPI bootloader. The latter is more attractive,since it goes along nicely with our aims on this board(Simple to build,Cheap and widely useable).I have been following some topics here on the forum in this regard,and hope that this can be implemented.We do have old miniprogs from our PSoC1 kits,Could those be used to burn on the bootloader? ..Or is the new MiniProg3 absolutely necessary for that?

   

Power - There are lot many power rails than conventional controllers,so each of these will be broken out to a header(on our first fab).Adding some LDO voltage regulators etc will be a plan for the future,since as of now,the aim is to get a basic programmable platform.

   

.

   

Schematics - I'm not too sure on how the older MiniProgs(I2C ones..) can be used to program the psoc3,so I'm a little hazy on those details.If someone could clarify the chip's basic requirements with respect to programming etc for this initiative,I'd be greatful.

   

Comments,suggestions and criticism are most welcome on this.

   

 

   

 

   
0 Likes
1 Solution
Anonymous
Not applicable

Inspired by my inital success with the EzPSoC3 board,I developed yet another board,the kind that isnt good in terms of analog noise etc,but serves as a low cost entry point to PSoC3.

   

 

   

   

I hooked it up to the miniprog,and programming it was easy,and seconds later,I had it accepting project files over USB 🙂

   

More here http://kmmankad.blogspot.com/2012/01/psoc3-hardware-quick-and-dirty-fab.html

View solution in original post

0 Likes
82 Replies
Anonymous
Not applicable

So what will be the cost of the final board ? Approximately ?

0 Likes
Anonymous
Not applicable

Currently I'm planning to purchase 5 boards,so that comes to around Rs.1300 for me.But I hope that can be reduced,since I dont want soldermask and silkscreen,since this is only the prototype.But say around 250/board and then add to it the ~$14 for the chip and some more for the caps and other components,so the price might reach Rs.1000.

0 Likes
Anonymous
Not applicable

Something just occured to me,would I compulsarily need an external 24 Mhz crystal to use the USBFS component?

0 Likes
Anonymous
Not applicable

For PSoC3 production version, it is not necessary to have a 24MHz crystal for USBFS component operation. The internal IMO can be set to 24 MHz and used for USB clock. However for PSoC5 it is required to have an external 24MHz crystal if the design has USBFS component.

0 Likes
Anonymous
Not applicable

Great to know that unlike the microchip's pic/atmel's atmega series,the PSoC's internal clocking system is robust enough for USB applications.

0 Likes
Anonymous
Not applicable

Hi, I am new to this discussion but the work done seems to me remarkable. To my knowledge not using the quartz for clocking may compromise the use of RS232 communication, that may be a limitation. Moreover, why not to include anyway the possibility of using the miniprog 3 programmer? These two additions have a very limited impact on the cost of the board but make its use broader.

0 Likes
Anonymous
Not applicable

Ops, found programmer connector top left, is that right?

0 Likes
Anonymous
Not applicable

 The IMO of PSoC5 is 1% so should be good enough for UART function. But you do need crystal if using USB. The PSoC 5 however needs to have crystal as the IMO is not as good as that of the PSoC3,. We have a prject using the pSoC5, according to the old spec. it should be good enough , but have to change to a new PCB because of the change of specification of the IMO. 

0 Likes
Anonymous
Not applicable
        
  • Most of the high speed communication component demand for high speed clock. In PSoC3 USB, the bus clock intelligently syncs to the USB clock and thus maintains the required tolerance for reliable operation. 
  •     
  • In case of UART, if data is being sent or received at high speed contnuously and if there is any clock tolerance, it might affect the operation. Transmitting data in bursts instead of a continuous stream might help mitigate the issue. Having two stop bits instead of one will also help mitigate the issue.
  •    
0 Likes
Anonymous
Not applicable

gve,

   

The programming connector is on the top right of the board,into with the 5pin end of the MiniProg3 should be connected,for programming via SWD.(atleast,thats the intention 😛 )

0 Likes
Anonymous
Not applicable

After thinking about the design a whole lot more,I'll be changing a good deal.So,I've pulled back the fabrication order.

   

Things I want to change:

   

1.Add a 24Mhz crystal.Even though the IMO is good enough,a robust design should have a crystal.

   

2.Use 2 row male headers rather than the current single line form.Thats just more compact.

   

3.Re-work the whole power supply section.I wasnt very satisfied with it in the first place,the reason being that I am not confident about the LM1117-3.3V and associated electrolytic SMD capacitors being available locally.So I'll just go with a through hole LM317 and a fixed resistor setup to get to 3.3V.

   

4.Get the P1's unrouted pins out.If I add an external crystal(and say RTC one too,) then I lose a total of 4 IO pins,and I dont like that.So I'll squeeze stuff and try to get the currently unrouted pins(5) from P1 out to compensate.

   

5.USB Connector.I miniusb one would be ideal,but needs better soldering equipment than I have.But then probably even the SSOP part will be a problem for me.(the best christmas gift ever would be a DIP packaged PSoC3 part 😛 )

   

6.Other stuff like mounting holes,and any other suggestions you guys might have.

0 Likes
Anonymous
Not applicable

So I ripped up everything,and started from scratch.Heres the end result.

0 Likes
Anonymous
Not applicable

I really gave a lot of thought to the power supply section and tried to think of a lot of schemes which would be idiot-proof and would still be flexible.However,I decided to drop those thoughts,since the routing was getting really messy.

   

Finally,the board is summarized as below:

   

1.Chip: CY8C3866PVI-021

   

2.Power System:

   

>From USB - 5V,3.3V

   

>From Unregulated DC Vin - 3.3V ...it is also possible to provide unregulated input directly to the chip,w/o any regulators in the way(just connect the source to the middle pin of the power level selection jumper)

   

3.Form and features:2.1"x2.2" and the headers are exactly 1.7" apart,so its breadboard compatible too.Tight routing and placement makes this a very compact design.

   

Suggestions and criticism are welcome. 🙂

0 Likes
Anonymous
Not applicable

 As far as the crystal placement is concerned, it is always recommended to place it as close as possible to the PSoC3 part. You should also have crystal phasing capacitors and they should aslo be as close as possible to the crystal and the PSoC part. The trace lengths from the crystal termial to the PSoC pins should be of equal length. These are some of my immediate  observations. 

Anonymous
Not applicable

Similarly make sure that the lengths of the D+ and D- lines are almost similar, few mm difference should still be fine for Full speed device. Possible 22ohm series resistsnce should be put on each of D+ and D- lines.

0 Likes
Anonymous
Not applicable

 Please read the following App Notes that can act as a guideline for hardware design consideration and checklist before you go for another spin,

   
Anonymous
Not applicable

Thanks U2! ..I'll surely go through those before placing my order.Development on this is going to stagnate again,since I have my semester end exams fast approaching 😞

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

Here are the latest revised PCB files,checked by DRC files from Sparkfun,Seeed and Itead,so that shouldnt give you any trouble.

   

Feel free to modify the design to suit your needs.

   


This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License

0 Likes
Anonymous
Not applicable

The PCB(brd file) looks great. A combination of the EZPSoC3 with the FX1 based programmer that you guys have put together should be brilliant. With shileds(daughter baord) for this board, it will be a killer.

Anonymous
Not applicable

Thanks for the support and encouragement,U2 🙂 Really makes my day ..

   

One thing though,someone over that the PSoC Developer forums has expressed that the USB Bootloader doesnt run when the chip is powered(all power lines) at 3.3V. I havent looked into it personally yet(I think it could be fixed in code,but need to look deeper..),but any ideas on why this could be so?

   

Heres the forum post from PSoCDeveloper forums : www.psocdeveloper.com/forums/viewtopic.php

0 Likes
Anonymous
Not applicable

Oh wait.This sounds like a straightforward fix.Looks like the code depends on the voltage configuration in the DWR,and setting that at 3.3V will start the USB component at the same,and all will be okay...

0 Likes
Anonymous
Not applicable

Its a simple software fix, don't worry about that. 

0 Likes
Anonymous
Not applicable

So I'm free from semester exams,and made more changes to the board,and sent them for fabrication.

   

-Changed USB routing to comply with guidelines in the USB design spec.
-Decided to remove the external Mhz crystal(but kept pads for a though hole resonator,just for testing)

   


(You may read a detailed writeup on those changes on my blog http://kmmankad.blogspot.com/2011/12/psoc3-custom-board-usb-routing-and.html)
And,sent the boards for fabrication(to a local guy) which I should get within a week of my sending,i.e around the 19th..

There is still a lot that can be changed and made tinier,but the current decisions in parts and their packages are made on the basis of my confidence in their local availability.As I hit the streets for parts soon,I hope to broaden my know of the components available,so I can incorporate them into future changes.
If you have affordable access(read no shipping or heavy import duties) from parts sourced from places like Mouser,Digi-key etc,feel free to use that luxury to better this board's design and layout.

0 Likes
Anonymous
Not applicable

Is there any reason why you are not using usb mini-B connectors? that would take less space and yet be easier to solder.

0 Likes
Anonymous
Not applicable

 Well,this is my first time doing SMD,so I'm not that confident with mini-B type of connectors...Plus,the D+,D- lines were crossing(if I recall corrrectly)..so layer changes etc were needed.If this design goes well,then thats something I'm definitely going for.

   

Thanks though 🙂

   

Current Status: Waiting for PCBs to arrive,and trying to procure 22R in 0805.

0 Likes
Anonymous
Not applicable

Greatings! 

   

I've got a problem with PSOC3 power on from USB. When i'm  pluging in USB cable nothing happens, but all power and groungs are presend, after repluging cable in 0-3 seconds PSOC starts.

   

Can someone tell me what is the problem, and how to fix it.

   

custom board, cy8c3446axi-99.

   

Regards Alex C. 

0 Likes
Anonymous
Not applicable

 This is kinda off topic,but anyway,I think the issue on your board is that of rise times.I  mean,the caps on the power pins.They should be according to the scheme on Page 29 of the PSoC3 Datasheet.Also consult schematics of existing kits for the the values of the caps.

   

Hope this helps 🙂

0 Likes
Anonymous
Not applicable

back to my board updates,

   

I expect the boards tomorrow,after a few days of delay.I'm still many components short,(22ohm in 0805 is something no one seems to keep locally,and the SMD LEDs.)

   

But I think have enough to get it accepting programs,so lets see how that goes.

   

For future revisions' PCB orders,(if I still have any hobby budget left),I'll try SeeedStudio's Fusion service or ITead's service.

0 Likes
Anonymous
Not applicable

Just recd the gerber files from the PCB manufacturer.They look great! 🙂

0 Likes
Anonymous
Not applicable

Cool...SeedStudio is a great way to go. 

0 Likes
Anonymous
Not applicable

 The PCBs are in!

   

   

   

I ordered 5 of these for a total price of INR 1100.I've started populating the other 4 boards,leaving this one for the pics.

   

A few things,

   

1.I shouldve got soldermask done too: But then I was told that the setup cost would be ~INR 1000,so it was a no-go.

   

2.I shouldve used a temperature controlled thin tip iron: Well,what happened was,the iron overheated at one point,and burnt out a few tracks(completely,so they came off) on 2 boards,so I've lost those tracks.I'm really pissed with myself about that.

   

More pics as I continue working on them!

0 Likes
Anonymous
Not applicable

For more pics and posts on this,you may head over to my blog, http://kmmankad.blogspot.com

0 Likes
Anonymous
Not applicable

 While this is all good,I'm wondering about the future of this project.

   

Issues on a a couple of fronts:

   

-Board Fabrication:I can go with Seeed,but that will require further investment.

   

-Even if I do get boards fabricated,it will be too costly for me to buy PSoC3 chips(I'm using free samples currently)..at almost $15-20 per chip.

   

-Procuring other parts isnt easy either,so that adds doubt.

   

Any ideas?

0 Likes
Anonymous
Not applicable

Seeing as the chip has a price of almost USD 20,and an MOQ of 60,combined with fabrication costs and prices for other passives,it doesnt look like this board can be "low cost" in anyway,if at all  there is someone who chooses to purchase these over cypress' own boards. 

   

 from where I stand.even if this isnt financially feasible to fulfill the goal for which it was designed,it was(is) still a very enriching pursuit.

0 Likes
Anonymous
Not applicable

The board works,no issues at all 🙂 I dont have access to a camera,so I cant upload any pictures,but the USB bootloading,programming etc,all went flawless from the word go.

0 Likes
Anonymous
Not applicable

 That is awesome news. Could you make a video of the same and upload on youtube. We would love to see it !

0 Likes
Anonymous
Not applicable

Inspired by my inital success with the EzPSoC3 board,I developed yet another board,the kind that isnt good in terms of analog noise etc,but serves as a low cost entry point to PSoC3.

   

 

   

   

I hooked it up to the miniprog,and programming it was easy,and seconds later,I had it accepting project files over USB 🙂

   

More here http://kmmankad.blogspot.com/2012/01/psoc3-hardware-quick-and-dirty-fab.html

0 Likes
Anonymous
Not applicable

Pictures of the EzPSoC3 board in its final form: picasaweb.google.com/kmmankad/EzPSoC3

Pictures of the QuickPSoC3 board in its final form: picasaweb.google.com/lh/photo/QQc7ldVI0ossHO4OJNFHV9MTjNZETYmyPJy0liipFm0

0 Likes
Anonymous
Not applicable


I needed some PSOC3 Boards so I decided to buld your EZ-PSOC board. But I was not quite happy with the USB connector so I took your schematic, made a few changes and routed it again from scratch.

   

Changes over the original EZ PSOC3

   

* Blade style design for easy breadboarding.

   

* Mini-USB connector

   

* XTAL instead of resonator

   

* Added a Barrel Power Jack, so it's now posible to power it with a wall wart.

   

* Simplified Power Selection. By placing a jumper on J2 it is posible to select to be powereb by VUSB, Wall wart or taking power from the bread board.

   

* Added 5 LEDs.

   

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

I Forgot to attach the eagle files.

0 Likes