PSoC First Touch Starter Kit with CyFi Low-Power RF

A Special DEV Kit Evaluation Series Editor's Choice

Jon Titus, Senior Review Editor -- EDN, 12/5/2008

DEV-MONKEY RATING:

Ease of Set-Up -5 bananas

Quality and Clarity of Documentation -5 bananas

Overall Experience - 5 bananas

Meets Expectations - 5 bananas


WHO NEEDS THIS KIT:

Developers who need a wireless link and the flexibility of the Cypress programmable and flexible SoC and controller architecture. Useful in remote monitoring and control, home automation, vehicle systems, HVAC control, industrial equipment.


WHAT YOU’LL LEARN:

Some of the capabilities of designs based on the PSoC technology and the 2.4 GHz wireless link. This is an introductory kit, not a complete development package.


TIME TO COMPLETE TEST PROGRAM:

About four hours.


PREREQUISITE SKILLS:

None. Some C-language experience helpful if you plan to modify code, but that's optional.


OVERALL EVALUATION:

What we liked:

Good introduction to the use of the PSoC chips and wireless capabilities. Availability of development tools for programmers who want to try them. Excellent User Guide.


What we didn't like:

No major dislikes for this kit.


==========


Quick Facts

Kit Name: PSoC First Touch Starter Kit with CyFi Low-Power RF.

Maker: Cypress Semiconductor, www.cypress.com/CyFi

Part Number: CY3271

Components: PC Bridge (MCU programmer and RF link),RF Expansion Card, MultiFunction Expansion Card, AAA Power Pack (with batteries), CR2032 Power Pack (with CR2032 coin cell),USB Cable, CD-ROM

Price: < $100

==========


SoC Kit Includes Wireless RF Link



This kit gives developers a way to examine and test the operation of a Cypress programmable system on a chip (PSoC) in a small wireless configuration. Wireless operations take place in the 2.4 GHz band and uses direct-sequence spread-spectrum communications.


Figure 1: The kit comes with five modules (top row) CR2032 Power Pack and AAA Power Pack, (center) PC Bridge, (bottom) MultiFunction Expansion Card and RF Expansion card.



Users can set up a basic wireless temperature-monitoring station or a station that monitors light, temperature, proximity, and output from a touch-position sensor. An application program--the Cypress Sense and Control Dashboard--monitors sensor values and displays them on a host PC as values or in graphs. I liked this kit and found it easy to set up and use. The Cypress documentation rates high marks as I'll explain later. I highly recommend the kit for designers who want to define and use their own analog and digital building blocks rather than functions fixed in hardware, and developers who need wireless connections.


Divide Functions and Conquer


The beauty of the Cypress PSoC approach centers on the division of circuitry into four "modules," two for analog and digital functions and one for the core processor and memory. A fourth module incorporates digital clocks, a multiplier-accumulator, and I2C port, and so on, as system resources. Module can communicate with each other.


The digital module provides eight 8-bit blocks. Developers can link blocks to create 16, 24, or 32-bit peripherals that include PWMs, counters, timers, UARTs, SPI ports, I2C ports, a CRC generator/checker, and similar functions.


The analog module comprises 12 configurable blocks that include ADCs, DACs, filters, comparators, high-current outputs, modulators, peak detectors and other. Analog and digital blocks come in "rows" and have input and output configurations and characteristics. At first, this idea might seem complicated, but Cypress provides development tools that simplify block setup and use. Think of the chip as a programmable array of mixed-signal blocks. (For more details about this PSoC family, review information in the first few pages of the Final Data Sheet for the CY8C27443 mixed-signal array, Cypress Document No. 38-12012 Rev. *L. The entire data "sheet" runs over 500 pages.)


Print and Follow the User Guide


The CY3271 kit comes with a CD-ROM that contains development software and a 100+-page User Guide. I recommend you print the Guide first so you can learn about the kit's hardware components as you wait for the software to install itself. The User Guide is outstanding because it provided step-by-step instructions that guide users through the installation and setup of the software-development tools, application program, and device-programmer software. Screen images show what to expect throughout the process. One tip: Before you install the software, reboot your PC. Next, load the software. Again restart your computer. This process helps ensure a "clean" installation of almost all software. I use this approach with all kits.


The software tools include the HI-Tech C Pro compiler (http://cypress.htsoft.com) for Cypress PSoC devices. You can choose to install a full version that runs for 45 days or a code-size-limited version that you can use forever.


The User Guide includes at least seven examples that demonstrate various kit and device capabilities. The Guide recommends developers generate and build each project before they fiddle with the source code. That's good advice. The installation process places each project and its associated files in its own folder in a main Cypress directory. The documentation explains exactly where to find the .hex code for each project so you can quickly load code into the modules and see the hardware and software in action. The clear instructions make it easy to find the folders and files you need. The examples and projects require no programming experience.


Projects Come with Source Code


Along with a ready-to-load .hex file, each project folder includes C source code, a schematic, and a PCB layout. The organization of the Guide makes this and other information easy to find. Diagrams early in the Guide show the five ways to connect the modules and relate each assembly to the corresponding exercises.


I ran through the stand-alone capacitive-sense "slider" test and then moved on to the Ultra Low Power Wireless Temperature Sensor exercise in which I programmed the PC Bridge module with a .hex file and then loaded another .hex file into the RF Expansion board.


A small glitch popped up along the way because I did not unplug the bridge module from my PC's USB port when I connected the RF Expansion board. I also found I should plug in the bridge module after I have PC-based software ready to go and unplug it before I end an application or switch applications. Those steps ensure users don't damage hardware and that software properly recognizes hardware attached to a PC's USB port. The instructions do not mention these steps--and in retrospect they seem obvious--but I take a literal approach to instructions when I evaluate a kit.


Figure 2. Placing the RF Expansion Card under a 60W lamp increased the temperature values displayed by the Cypress Sense and Control Dashboard program on my lab PC.




I ran the temperature-sensor experiment and discovered an "operator error" that manifested itself in reported temperature readings between 1000 and 4000∘C. My lab gets warm, but not that hot! Oops, I had selected Unsigned Integer instead of Two's Complement Integer as the input format for the temperature sensor. I made this incorrect choice in a configuration window and didn't touch the firmware. Correcting my selection brought temperature readings into a more normal range. Using some freeze spray I got the reported temperature down to -10°C.


Figure 3. Let's cool off the thermistor on the RF Expansion Board with some freeze spray. The Dashboard graph goes down to -10°C, probably a limit set by software or ADC range.




Figure 4. The Dashboard software can display temperature values from the RF Expansion Board and light, temperature, and proximity information from the MultiFunction Card. This card also includes a 3-LED cluster and a small speaker. This example shows the ambient lab temperature (top), the temperature increase near a 60W light bulb (middle), and the temperature drop when I squirted the thermistor with freeze spray. Note the different temperature scale in each chart.


 


Each of the exercises, or experiments, includes step-by-step instructions, indicates what you should observe, and explains what happens. The User Guide's Firmware section describes each hardware module, explains where to find the firmware, the amount of ROM and RAM used, and on-chip block configurations. An excellent firmware-module section gives users a block diagram of function operations and a flow chart for the firmware. So, you can learn a great deal about how the Cypress PSoC approach relates directly to hardware and code development. If you wish, you can run the software tools and examine, modify, and recompile the code for each experiment. Cypress makes all the files readily available and comments in the code highlight important sections.


Figure 5. This arrangement shows the MultiFunction Card connected to the RF Expansion Card to transmit values from multiple sensors to the lab PC's Dashboard software. I used the AAA battery holder to supply power for a long period.




Cypress also includes hardware information and specifications along with schematics. The schematics are a bit small for my eyes, but with a magnifying glass I could at least read pin numbers and signal names.


Software Tools Look Good


I did not have time to modify code but I found the tools almost intuitive to use. When I ran the PSoC Designer 5 coding software and loaded the RF temperature-sensor code, I could see in graphical form the digital and analog blocks and their attributes. The Designer software also lets you work with C-level code and it serves up a Design Catalog for other kits so you could examine their code, too. While looking at the functional blocks, I could also view the C file contents and the configurations of any portion of the system.


If you like this kit and the PSoC mixed-signal array capabilities, where do you go from here? The FAQ section of the Guide notes Cypress has a CY3210-CyFi Low-Power RF Development Kit that comes with more hardware, evaluation pods for two types of PSoC chips and firmware tutorials and examples. My contact person at Cypress noted the CY3210-CyFi kit should be available in January 2009. I expect a kit price between $US600 and $US700. This new kit aims to let developers work with a PSoC device so they can learn more about the chip's architecture and whether it will suit their needs. Then they can work on and test their application code.


Conclusions


I liked this starter kit and found it easy to work with. The documentation is outstanding and it provides a format other kit manufacturers could use as a template. People interested in the PSoC architecture will move on to larger development kits with more capabilities.


To view a short VIDEO review of this kit CLICK HERE


For MORE INFO ON THIS KIT and access to related materials CLICK HERE



Blog Post

Jon Titus
An mbed Module to the Rescue
A request for design help arrived by email: An engineer needed ideas about how to get...
March 16, 2010
Posted In:JON TITUS BLOG
DEV-monkey
Minimizing Video Processing Design Time with FPGA Development Kits and Reference Designs
Introduction Video standards and methods of encoding/decoding have made tremendous p...
October 7, 2009
Posted In:DEV-MONKEY BLOG

» View all blog posts>>

 Free-Newsletter

 



Development Resource Center

MPLAB ICD 3 In-Circuit Debugger
Date: Oct 5, 2009
The MPLAB ICD 3 is the most cost-effective high-speed emulator for PIC MCUs and dsPIC DSCs. It debugs and programs with the powerful, yet easy-to-use... More...

PICkit 3 Debug Express
Date: Oct 5, 2009
Microchip’s PICkit™ 3 Debug Express uses in-circuit debugging logic incorporated into each chip with Flash memory to provide a low-cost hardware debugger and... More...

Free C Compilers from Microchip
Date: Oct 5, 2009
Microchip has a complete selection of C compilers for programming on any PIC microcontroller or dsPIC digital signal processor. The MPLAB C and HI-TECH C... More...



©1997-2010 Reed Business Information, a division of Reed Elsevier Inc. All rights reserved.
Use of this Web site is subject to its Terms of Use | Privacy Policy