Cypress PSoC 62S2 Wi-Fi & BT5.0 Pioneer Dev Kit - Review

Table of contents

RoadTest: Cypress PSoC 62S2 Wi-Fi & BT5.0 Pioneer Dev Kit

Author: gordonmx

Creation date:

Evaluation Type: Development Boards & Tools

Did you receive all parts the manufacturer stated would be included in the package?: True

What other parts do you consider comparable to this product?: PSoC®6 WiFi-BT Pioneer Kit (CY8CKIT-062-WiFi-BT)

What were the biggest problems encountered?: Documentation is poor. Needs more feature related out-of-the-box demos

Detailed Review:

First off, I would like to thank Cypress Semiconductor (“Cypress”) and Element 14 for the opportunity to evaluate the PSoC®62S2 WiFi-BT Pioneer Evaluation/Development Kit (“the Kit”). 

 

Summary Conclusion –

 

The stated purpose of the kit is to “evaluate and develop” applications using the Cypress Semiconductor’s PSoC 62 Series microcontroller (MCU) and the new dual band 2.4/5.0 GHz WiFi & Bluetooth 5 module.  As mentioned in the body of my review, the PSoC®62S2 WiFi-BT Pioneer Kit (CY8CKIT-062S2-43012) is certainly complete, but maybe not as well documented as its previous model, the PSoC®6 WiFi-BT Pioneer Kit (CY8CKIT-062-WiFi-BT).  One of the primary differences between the two Pioneer kits is the wireless modules used as pointed out in the review.  The former kit also included a TFT Display Shield Board (CY8CKIT-028-TFT) where the current board relies on connecting to a terminal emulator to display the board messaging.  There are other differences which I will point out later.

 

However like the previous version, the documentation for exploring the included example programs was sometime confusing, making it difficult to compile and run many of the examples.  For a board whose intended purpose is to show off the features of the PSoC 62s MCUs and CYW43012 wireless families, the user guides were of little help.  Fortunately, Cypress offers a lot of supplemental documentation, both written and video, as well as a large developer community website to help you find your way.  My main focus in evaluating a product is whether it does what it says it does and how well are the instructions (i.e. User Guide and app notes) written to get you there.  I should add that my past experience with Cypress’ PSoC Creator software has been very good, so this did surprised me.

 

As with the earlier PSoC 6, the kit was designed with a specific target market, the Internet of Things (IoT).  The PSoC 62s MCU offers the low power operation, for battery power use, along with the power of Arm Cortex –M4 and M0+ processors, 4th generation CapSense touch and wireless connectivity.  Unlike the WiFi-BT kit, the PSoC®62S2 WiFi-BT Pioneer Kit has incorporated both a Bluetooth BLE (Smart BT) and a dual band (2.4G/5G) WiFi interfaces through the use of Murata’s LBEE59B1LV module.  The Murata module uses the Cypress CYW43012 dual band WiFi + BT combo chip to provide IEEE802.11a/b/g/n/ac-friendly WLAN and Bluetooth 5.0 connectivity along with low power consumption.

 

Pros –

  • Powerful dual Arm-based MCUs: 1) 150 MHz 32bit Cortex-M4 and 2) 100 MHz Cortex M0+ (low-power operations)
  • New dual band 2.4/5.0 GHz WiFi & Bluetooth 5 module design that shares a common onboard antenna.
  • Low power operation for battery operation geared toward the wearable and IoT markets.
  • Arduino Uno R3 shield connectors preinstalled.
  • All hardware is included to run the examples in the User Guide.
  • Useful documentation, reference design examples and training videos are available online.
  • Familiar Eclipse-based IDEs (free)
  • The design is very robust and stable with years of development and expertise.
  • PSoC support through Cypress Developer’s Community 3.0.

 

Cons –

  • A not-so-simple out-of-the-box setup requiring the user to move between several different documents. 
  • As with many boards, the kit comes with a pre-installed demo program, but one that has little to do with the highlighted features of the board.  No WiFi or BT demos only “Hello World” and “Blinky”.
  • Relative to other dev kits I previously reviewed, the example programs were slow to compile and download.  This was hard to understand since most vendors, including Cypress, use Eclipse-based IDEs.  My only thought was how much network down/up loading is being performed.
  • Although 2 development platforms were available each required at least 2 IDEs to design and develop with WiFi-BT applications: 1) Modus Toolbox and Cypress Programmer OR 2) PSoC Creator and WICED Studio.
  • The instructions for building the sample projects were very poor, to the point where some projects would not even compile.
  • Even though there are a lot of features included on the board, very little well documented example programs are available to evaluate them.
  • There is a lot of information online which can make it difficult to find the specific information you are looking for.  I would start looking for something and get distracted by something else.

 

Wish List –

  • Improve the out-of-the-box firmware to demonstrate the highlighted features of the kit.
  • Improve customer support communications.

 

Overall the kit shows great promise if you are willing to dig a little (and sometimes a lot).  Cypress has always been a reliable source for leading edge designs.  The hardware and software documentation is plentiful with an active community forum.  The “kit” included everything hardware needed to come up to speed with the PSoC 62S2 Series and wireless module.

 

Useful Documentation & Tool Links-

NOTE:  Logging in to the respective websites may be required to access some of the documents.

Cypress Developer Community 3.0 Web Site (https://community.cypress.com/welcome

PSoC®62S2 WiFi-BT Pioneer Kit Web Site (https://www.cypress.com/documentation/development-kitsboards/psoc-62s2-wi-fi-bt-pioneer-kit-cy8ckit-062s2-43012)

PSoC®62S2 WiFi-BT Pioneer Kit Guide (Cypress Semi Doc 002-28109, Rev *E – 02/11/20) NOTE:  “User’s Guide”; (https://www.cypress.com/file/487006/download)

PSoC®62S2 WiFi-BT Pioneer Kit Quick Start Guide (Cypress Semi Doc 002-28145, Rev *B – 12/29/2019) (https://www.cypress.com/file/487011/download)

MuRata Type 1LV CYW43012 Website (https://wireless.murata.com/type-1lv.html)

MuRata Type 1LV CYW43012 WiFi+Bluetooth Combo Module Data Sheet (MuRata Doc SP-9B1LV-M, Rev M – 11/21/2019) (https://wireless.murata.com/datasheet?/RFM/data/type1lv.pdf)

CYW43012 Single-Chip Ultra-Low Power, IEEE 802.11n, 802.11ac-friendly MAC/Baseband/Radio with Bluetooth 5.0 (Cypress Semi Doc 002-18925, Rev *M – 6/30/2020); (http://www.cypress.com/file/497511/download)

Cypress GitHub Server (https://github.com/cypresssemiconductorco)

Cypress ModusToolbox Home Page https://www.cypress.com/products/modustoolbox-software-environment

Cypress ModusToolbox Installation Guide (Cypress Semi Doc 002-22556, Rev *L) (https://www.cypress.com/file/512706/download)

Cypress ModusToolbox 2.2 User Guide (Cypress Semi Doc 002-29893, Rev *G) (https://www.cypress.com/file/512716/download)

Cypress ModusToolbox AnyCloud User Guide (Cypress Semi Doc 002-30738, Rev *A), (https://www.cypress.com/file/509821/download)

Cypress ModusToolbox Software GitHub Repository, (https://github.com/cypresssemiconductorco/modustoolbox-software)

Cypress Code Examples for Modus Toolbox Software GitHub Repository, (https://github.com/cypresssemiconductorco/Code-Examples-for-ModusToolbox-Software)

Cypress Programmer Home Page (https://www.cypress.com/products/psoc-programming-solutions)

Cypress Programmer GUI User Guide (Cypress Semi Doc 002-25230, Rev *D) (https://www.cypress.com/file/451356/download)

Cypress KitProg3 User Guide (Cypress Semi Doc 002-24616, Rev *L) (https://www.cypress.com/documentation/development-kitsboards/kitprog-user-guide)

 

The following is a set of Cypress Community Tutorial/Videos for the ModusToolbox that are helpful:

https://community.cypress.com/community/topics/cypress-community-blogs/modustoolbox-blog/blog/2020/06/25/session-1-introduction-to-modustoolbox-2x

https://community.cypress.com/community/topics/cypress-community-blogs/modustoolbox-blog/blog/2020/06/25/session-2-introduction-to-digital-peripherals

https://community.cypress.com/community/topics/cypress-community-blogs/modustoolbox-blog/blog/2020/06/25/session-3-introduction-to-capsense-in-modustoolbox

https://community.cypress.com/community/topics/cypress-community-blogs/modustoolbox-blog/blog/2020/07/16/session-4-anycloud-wifi-design-flow

https://community.cypress.com/community/topics/cypress-community-blogs/modustoolbox-blog/blog/2020/08/06/session-5-introduction-to-low-power-modes-in-psoc-6

https://community.cypress.com/community/topics/cypress-community-blogs/modustoolbox-blog/blog/2020/09/23/session6-psoc6-analog-sub-system-design-using-modustoolbox

https://community.cypress.com/community/topics/cypress-community-blogs/modustoolbox-blog/blog/2020/11/01/session-7-getting-started-with-btble-in-modustoolbox22

 

 

Part I – PSoC®62S2 WiFi-BT Pioneer Kit (CY8CKIT-062S2-43012)…

Before diving into my actual review of the PSoC®62S2 WiFi-BT Pioneer Kit (CY8CKIT-062S2-43012), let’s take a look at what it is.  First off the user manual describes the board as an evaluation/development board, but more on the evaluation side since many MCU pins are dedicated to demonstrating the features of the board.  This is not to say that the board is not impressive and useful in exploring these features. 

 

Hardware

The board is built around the PSoC 62s-based CY8CMOD-062S2-43012 PCA which combines the PSoC 62s MCU (CY8C624ABZI-S2D44) and the CYW43012 based Murata Type 1LV module for dual band 2.4/5.0 GHz WiFi & Bluetooth 5 operation.

Features of the PSoC 62s MCU (CY8C624ABZI-S2D44) include:

*  150-MHz Arm® Cortex®-M4 and 100-MHz Arm Cortex-M0+ cores,

*  2MB of Flash, 1MB of SRAM,

*  Secure Digital Host Controller (SDHC) supporting SD/SDIO/eMMC interfaces,

*  Programmable analog blocks,

*  Programmable digital blocks,

*  Full-Speed USB,

*  Serial memory interface,

*  Industry-leading capacitive-sensing with CapSense® and

*  PDM-PCM digital microphone interface (Not implemented on the board)

 

Additional board features included:

*  PSoC 5LP based onboard KitProg3 programmer/debugger (CY8C5868LTI-LP039, U2),

*  512-Mbit Quad SPI NOR flash,

*  4-Mbit (512kx8) Excelon Quad SPI F-RAM(CY15B104QSN),

*  Micro-B connector for USB device interface,

*  5-segment CapSense slider,

*  Two CapSense buttons,

*  MicroSD card holder,

*  Multiple LEDs (RGB & 2 user),

*  A potentiometer and multiple push buttons.

 

The PSoC®62S2 WiFi-BT Pioneer board is built around the PSoC 6 MCU, whose block diagram is shown below.

                              Block Diagram of the Kit

 

NOTE:  See the “Unpacking” section for more hardware pictures.

 

Software

To say that the kit is used to demonstrate only the features of the respective MCU is only half the story.  For the documentation equally pushes the supporting software, in this case Cypress’s ModusToolbox.  Although the previous PSoC®6 WiFi-BT Pioneer Kit (CY8CKIT-062-WiFi-BT) used the PSoC Creator IDE coupled with the WICED IDE and KitProg2 debugger/programmer, Cypress points the developer to their newer wireless developer platform, ModusToolbox.  NOTE: The former platform can still be used with the newer board, but not displayed in the documentation.  The ModusToolbox IDE is Eclipsed-based and used to develop programs like the former IDE.  Aside from functioning as the primary IDE for the platform, the toolbox also offers a collection of solutions for embedded, Bluetooth stack, AWS IoT Core, ARM Pelion and AnyCloud examples.  ModusToolbox supporting utilities include the Cypress Programmer and KitProg3 debugger. The new Cypress Programmer can also be used as a standalone cross-platform, flash programmer tool.

 

The following table outlines the target platforms.

The table below highlights the differences among available KitProg versions.

The following is diagram of the high-level architecture of KitProg3.

 

NOTE: See the “Useful Documentation & Tool Links” section for links to respective software downloads.

 

 

Part II – The Unpacking: 

Welcome to the first part of many of my evaluation of the PSoC®62S2 WiFi-BT Pioneer Kit (CY8CKIT-062S2-43012).  I have read many different views on the value and/or Importance of the unpacking segment, but I feel it is important because it is often our first glimpse into what to expect in the product and support.

 

I’m excited to road test the WiFi-BT Pioneer kit, not just for the performance, flexibility and feature expansion of their PSoC families, but for the standard Cypress Semiconductor has set for their documentation and support.  I have worked with other Cypress kits, including the PSoC®6 WiFi-BT Pioneer Kit (CY8CKIT-062-WiFi-BT), in the past and not only was their documentation and workshops useful, but they sometime listen to their users and learn from their mistakes.  The dev/eval kit is currently available through Element 14 for ~$125.

 

The box arrived undamaged, always a good sign, and well packed.  The actual dev kit box is well constructed to endure most rough handling.

 

As listed in the user guide, the PSoC®62S2 WiFi-BT Pioneer Kit (CY8CKIT-062S2-43012) I received included:

1 – PSoC®62S2 WiFi-BT Pioneer Board,

1 – USB Type-A to Micro B cable,

1 – Four jumper wires (four inches each),

1 – Two jumper wires (~five inches each) and

1 – Quick Start Guide

 

The instructions for downloading the user’s guide, software and additional resources are shown on the back of the box. 

    

The board is shown below:

NOTE:  For the examples given in the Quick Start and User’s guides, all required components were supplied.  However the User’s Guide is more of a setup guide since it only shows how to get up and running with the kit and offers virtual no examples other than the pre-installed firmware. 

 

As we have all seen with every dev/eval kit produced within the last 10 years, all documentations available only through download.  Cypress is no different, but there is a lot of information online which can make it difficult to find the specific information you are looking for.  I would start looking for something and get distracted by something else.

 

Part III – Connecting and Powering Up the Kit:

As mentioned above, all the instructions needed to initially setting up the WiFi-BT kit can be found on the Quick Start Guide, included with the kit, and the User’s Guide which should be downloaded using the link found in the Useful Documentation & Tool Links section. My host PC is running under Windows 7 x64, but for the initial turn on, the USB2/3 port on my PC is only used for power to the board.  There is a power connector on the main board if you would like to use an external supply.

This is where things start to get a little less useful since you may be expecting the pre-installed firmware would demonstrate some of the major features of the PSoC®62S2 family.  Following the instructions, the first step is to open a terminal emulator (i.e. Tera Term, etc.) connected through the KitProg3 USB-UART port using the appropriate settings.

Step 2 is to press the board’s reset button (SW1-XRES), then follow the instructions displayed on the screen.  As with the previous PSoC®6 WiFi-BT Pioneer Kit (CY8CKIT-062-WiFi-BT), one might expect to see instructions on how to setup your WiFi or/and BT wireless connections to demonstrate targeted features of the board but instead you get instructions to download additional examples.

Oh, and you do get to blink the User’s LED (LED8).  During this board turn on the Power and KitProg3 status LEDs are solid on, LED1 and LED2, respectively.

 

This may be a little helpful in checking that the dev board actually works, but in reality we really want to try and program it, so let’s back up a little. First, to program the board we will need to communicate to it.  For our examples, I will use the same USB port used to power the board.  In the past, I have had issues with other manufacturer’s USB connections, although that was not the case with the Cypress WiFi-BT board.  Because the may be the case with other PCs, the following shows the connections from Windows device manager:

    

 

In my case, the PC will communicate to the kit through a USB-to-Serial connection, KitProg3 USB-UART.  A virtual disk drive is also created to drop compiled HEX files into.  If these devices do not get created on your PC, check for other driver solutions or let me know. 

 

Part IV - Software Installation:

As mentioned earlier, the User’s Guide outlines 2 different software development platforms. Since I already had PCreator and WICED IDEs installed I decided to update to the latest versions and give them a try.  It was not without issues for which I will not go into during this review.  If you have any questions, please feel free to send them to me.

 

You may ask why I aborted the PCreator/WICED route, aside from the aforementioned issues. Sometimes I get overly excited that can lead to some interesting results and takes me off my planned path or down a rabbit hole.  This was one of those times.  My goal in evaluating a product is to see how well the documentation works together with the hardware and software to provide a useful and productive experience for the developer.  Although I have faith that PCreator will work, the User’s Guide points the developer in the direction of the newer ModusToolbox and Cypress Programmer IDEs platform.  Both platforms use different versions of KitProg for debugging and general communications with the board.

 

NOTE: The “Kit” user guide assumes the all software programs are already installed, so see the “Useful Documentation & Tool Links” section for links to user guides for ModusToolbox 2.2, Cypress Programmer and KitProg3 for individual installation instructions.

 

ModusToolbox IDE

From the ModusToolbox home page, click the download button corresponding to your operating system.

I install the software on my Windows 7 pro (x64) laptop.  The setup wizard will appear followed by the typical License Agreement popup, for which you must agree.  The rest of the steps are straight forward as outline in the installation guide.  I used the default responses where needed.

ModusToolbox IDE start up screen -

Cypress Programmer

From the Cypress Programmer home page, click the download button corresponding to your operating system.

The setup wizard will appear followed by the typical License Agreement popup, for which you must agree.  The rest of the steps are straight forward as outline in the installation guide.  I used the default responses where needed.

Cypress Programmer IDE start up screen -

KitProg3

The KitProg3 software is automatically installed when the ModusToolbox IDE is installed.  There is not startup screen for KitProg, but the presence of the drivers can be verified in the Windows Device Manager.

 

Part V – Testing the Kit:

Now for the fun stuff, sort of.  As I’ve mentioned in earlier, my ultimate goal in my reviews of evaluation kits is to see if the documentation and hardware supplied to the developer is enough to demonstrate the primarily features of the kit.  This includes any examples shown.  This is probably the weakness part of the CY8CKIT-062S2-43012 since the only example shown in the user manual is a “Hello World/Blinky” program.  The pre-installed firmware is more setup to demonstrate the different modes of the KitProg3 connectivity software than the main board wireless features.  For more relative examples of the wireless features of the board, the developer must filter through very specific, yet poorly commented sample code located in the ModusToolbox solution collection.

 

Back to the only example in the user manual, Hello World.  First open the ModusToolbox and select the workspace directory.  The default base directory is <user_dir>/mtw. 

Click “New Application” in the Quick Start panel to bring up Project Creator 1.2. Project Creator walks you through specifying your hardware base as defined by your dev kit or MCU.  The panel on your right outlines a brief description of the selected H/W platform.  Then click [Next]

The next Project Creator window will display the list of available examples in your solution collection under Template Application.  A summary of the requirements for each example is shown in the lower panel. This is important because some examples require addition resource before they can be build and/or run.  For the user manual example, check the “Hello World” and then click [Create] to start the process.  The process downloads the latest source code (~165MB) so depending on the speed of your PC, size of the download and internet service, this may take a few minutes.

After the download is complete, highlight the <project name> in the Explorer section, then scroll the Quick Start section until your find <project_name> Program (KitProg3_MiniProg) and highlight it to start the build.

When the build is complete the firmware is automatically loaded to the board.

Final to verify the firmware, open your terminal emulator (i.e. Tera Term, etc.) and press the reset (XRES – SW1) button on the board to display the output

NOTE:  The output displayed is different than the pre-installed F/W output, but only in the content of the text and not function.

 

Out-of_the_Box F/W output:

If you have already build your code and just want to load it to your board, you can use the Cypress Programmer to accomplish the task.

 

What I didn’t try

As mentioned earlier my goal in reviewing the kit is to see how well the documentation works together with the hardware and software to provide a useful and productive experience for the developer.  Since the documentation does not cover actually building any of the example code, and I did lose some time going down my “rabbit hole”, I did not experiment with any of the ModusToolbox example solutions, sadly.

 

What’s next?

I would like to explore more of the examples solutions from the ModusToolbox collection for which I ran out of time.  I would still like to try some of the AnyCloud solutions, so stay tuned for an update or two.  Hopefully Cypress improves their examples documentation in the future.

 

Please let me know if I missed something in the documentation.  Also please pardon my typos.

 

Gordon Margulieux

Twin Falls, ID USA

Anonymous