# What exactly is the use of PSoC?

Hey, yesterday I saw a demo (which was actually meant for my seniors) of a PSoC 5 board by cypress at my college. They demonstrated how to use the capsense built into the board and one of the PSoC chips to turn an LED on and off. This is basic Hello World stuff.

Although I thought it was cool and all, I really couldn't figure out in what way could I use those boards. Yes they eliminate all the need for making my own hardware, but how would I use this capability?

• Hopefully they're shipping the PSoC 5 by the time you're a senior...no one has any stock yet. – Kevin Vermeer Mar 30 '11 at 17:46
• Our college has 2 or 3 kits of PSoC 5 – Rick_2047 Mar 31 '11 at 2:00
• You might consider splitting this into 2 questions: "Why would I ever use the demo board (development board) for some company's MCU (rather than building things myself out of individual chips)?" and "When would I ever use a PSoC (rather than some other company's MCU)?". – davidcary Mar 31 '11 at 12:26
• The fact that a college has development kits is almost totally decoupled from the potential to integrate one of these chips into a product. Try this search: findchips.com/avail?part=CY8C5 – Kevin Vermeer Mar 31 '11 at 12:42

Cypress PSoC devices have blocks (PWM modules, counters, timers, UARTs, ADC, DAC, etc.) that can be configured easily by a GUI, which can speed up the development time of a project. (no need to design external circuitry, lay it out, etc.) Also, the PCB real estate reduction is a nice plus (no need for external chips for all of these functions).

Since these blocks are actual hardware modules, you also don't need to spend time writing software to emulate these functions. They can be configured to trigger interrupts, so your state machine can easily interact with the blocks.

The PSoC 5, for example, has the following blocks: 20-bit sigma-delta ADC, 8-bit IDAC, 8-bit VDAC, 12-bit 1 Msps SAR ADC, PGA, Op-amp, TIA, frequency mixer, comparator, reference, cap-sense block. This sort of hardware is above and beyond what is provided in most microcontrollers.

• But all those things are easily available in all the controllers, why would I use another chip for this? – Rick_2047 Mar 30 '11 at 16:19
• The PSoC 5 has the following analog blocks: 20-bit sigma-delta ADC, 8-bit IDAC, 8-bit VDAC, 12-bit 1 Msps SAR ADC, PGA, Op-amp, TIA, frequency mixer, comparator, reference, cap-sense block (among others). You will not find this mix of hardware in "all the controllers". – Adam Lawrence Mar 30 '11 at 16:48

Those development boards are just a way for someone to quickly get up to speed in using the PSoC. The intention is for an engineer to become familiar with that chip and then go and design it into your own custom PCB (and build millions of them and make everybody fist-fulls of money). They also use those boards at college as sort of a "gateway drug". They get you hooked on the PSoC early, so when you go out into the real world you will tend to use them, ship millions, and make everybody fist-fulls of money.

Cypress is by no means unique in this. TI, Atmel, STMicro, Freescale, etc. all do this.

So, if those boards work for you then great, use them. Otherwise, um, don't.

As an aside... I used a PSoC when making the capacitive touch keypad for this paging station. It turned out to be cheaper, more reliable, and better looking to make our own than buy a mechanical keypad. We started out by evaluating one of the Cypress development boards, then quickly made our own PCB.

• I want to get hooked on!! But I can't figure out any project ideas for this. – Rick_2047 Mar 30 '11 at 16:20
• Well... Let's say that you have the Cypress CY8CKIT-014 board (cypress.com/?rID=43674). It's only $49, so it's not too expensive but has quite a bit of stuff on it. One thing that I'd consider doing with it: Use the capsense slider and 3-axis accelerometer to make some sort of musical instrument. Use some GPIO pins to drive a speaker directly, or hook up a DAC. There might also be a DAC in the PSoC 5 itself, too. – user3624 Mar 30 '11 at 16:38 • For "Getting hooked on" I think PSOC4 is sufficient, and the boards are under$5! – SF. Jul 17 '14 at 11:26

Some years ago we were going to do a project with another company and their design engineer wanted to sell us the idea of the PSoC, which he seemed to think of as the best thing since bread came sliced. My colleagues and I had a look at it and dismissed it. Cypress sales engineers stress on the idea that you can reconfigure your PSoC in during runtime. Is that so great? No! If I have configured blocks as timer that's because I need a timer all the time. Other microcontrollers do have timers which are available all the time.
And talking about timers. IIRC one building block could be used as an 8-bit timer. For a 32-bit timer you needed 4 blocks, and with that most of those great reconfigurable blocks were used up.
Maybe things have changed since, and there may be more resources on recent parts, but at that time PSoC certainly wasn't an added value over other microcontrollers to us. (We were using for example NXP LPC2100 at the time.)

• I'm personally not bothered by the fact that you can change things at run time. What I am excited by if the fact that I can have 52 PWM channels, or 10 serial ports, or whatever I want. AND you can connect these to whatever pins you want. Most microcontrollers offer you some mix of peripherals to suit the average application, but it's often very hard to find exactly what you need. PSoC gives you a choice from an essentially infinite range. – Rocketmagnet Nov 24 '11 at 21:30
• Plus you can write your own peripherals in Verilog! This means you can have peripherals that no other microcontroller in the world provides. – Rocketmagnet Nov 24 '11 at 21:32
• Designs change during development! You may not need a timer all the time, or you may end up needing two. And a 32-bit timer doesn't consume 4 UDB (universal digital blocks), only 1-2. High-end PSOCs have 20-24 of these blocks to play with. – gbmhunter Jun 19 '13 at 3:07

The beauty of PSoC is that they have a number of useful analog blocks already baked into the chip, so that in many cases, you can just use the processor with very few (and mostly passive) components to have a working product when other MCU's would require a bunch of external parts.

PSoC also comes with a large library of pre-canned solutions (in the form of software plus wiring diagrams) that allows you to quickly mix-and-match the solutions into a completed product.

--

BTW, just as an example - one PSoC design I made had a 2-axis accelerometer, a TFT LCD, and 8 capacitive sensing input buttons (four used as an iPod style "jog dial", and 4 other general button presses), an iButton port, and a audio speaker output. The non-passives on that board consisted only of the accelerometer chip, the FET to drive the speaker, and a 5V-to-3.3V level shifter to interface to the TFT (because we couldn't source a 5V TFT display with the features we wanted). The opamp circuitry for the accelerometer, the cap sense circuitry, and the various digital blocks were all contained within the PSoC.

An additional advantage of a device like the PSoC is that you can reconfigure the digital and analog blocks during runtime. This lets you get a lot more functionality out of the chip with fewer pins.