Bluetooth Low Energy (BLE) is one of the buzzwords of embedded hardware at the moment. It's not hard to see why: It's low powered, quick to connect, and perfect for transmitting data packets like sensor readings and device instructions. Today we are looking at the Cypress PSoC 6 BLE Pioneer Kit, featuring the CY8CKIT-062-BLE dev board with the powerful PSoC 6 dual-core MCU.
What is the Cypress Semiconductor PSoC 6 BLE Pioneer Kit?
The board also features onboard capacitive touch sensors, an extendible capacitive proximity sensor, user-programmable buttons, LEDs, and an RGB LED. The kit also contains an upgraded 2.7" e-ink screen with a built-in 6-axes motion sensor, thermistor, and digital microphone.
The kit also includes a BLE 4.2 USB dongle for attaching to a computer, along with some jumper wires and a USB-A to USB Type-C lead for connecting to the dev board.
Much like the PSoC 6 Pioneer Kit we looked at last week, this development board looks to be treading the divide between industry professionals looking for a fully-featured development board to evaluate the PSoC 6 chipset and hobby devs looking to move on to something a little more industry-standard than Arduino.
Cypress Semiconductor PSoC 6 BLE Pioneer Kit Specs
- CY8CKIT-062-BLE dev board
- ARM-Cortex-M4 and ARM-Cortex®-M0+
- 1MB of Flash
- 288KB of SRAM
- 78 GPIO
- 7 programmable analog blocks
- 56 programmable digital blocks
- Bluetooth Low Energy (BLE)
- 1 x serial memory interface
- 1 x PDM-PCM digital microphone interface
- Capacitive-sensing with CapSense
- EZ-PD CCG4 Type-C power delivery
- ModusToolbox Software Suite compatibility
- Mbed SDK support
- 2.7-inch E-ink display
What Makes the PSoC 6 BLE Pioneer Kit Special?
Well, the price certainly helps. The PSoC 6 Pioneer Kit is available for just $62, and you get a lot for your money. While other development boards are capable of working with BLE, few combine the technology with a powerful processor and enough onboard sensors to prototype with. There are also some nice touches to extend the development board's use, like Arduino Shield compatibility and an option to debug via j-tag connector instead of the onboard KitProg debugger.
It's evident in the design of the BLE Pioneer Kit that it's meant to sit on your desk and be used for many different projects over time. While it is around the same size as a Raspberry Pi and could be housed in a robot, kiosk, or case, it seems at home on the desktop. I think Cypress planned for this, too, as the board has four sturdy rubber feet on the bottom to stop it from sliding around a work surface.
This combination of features makes this the board you prototype, say, an access point kiosk. A user could navigate a menu and get a QR code to scan with their phone for WiFi details, and those details could be changed by the owner using a custom BLE app. Everything you need for that hypothetical development situation comes out-of-the-box with the BLE Pioneer Kit. Add to that the added CY5677 BLE USB dongle, and you have a further way to communicate with the development board, even if your computer is not BLE compatible as standard.
Is the Cypress CY8CKIT-062-BLE Kit Well Documented?
Many high-quality development boards are only beneficial to industry professionals due to hard to understand (or even find) documentation and a reliance on external debuggers and programmers. Cypress includes a getting started guide on their PSoC 6 BLE Pioneer Page, which takes the user through getting up and running and some example code. This should be easy enough to follow for most people, though complete beginners might struggle with the general workflow of project setup, building, and debugging if they've never done it before.
One slightly confusing issue is conflicting information on which IDE to use. Until recently, Cypress has favored its PSoC Creator Integrated Development Environment. It seems that they are moving away from this, advising users to switch to Modus Toolbox for Ecplise IDE. Assuming this is the way they plan to go, and I didn't need support for older chipsets, I opted for Modus Toolbox. The example projects that come with Modus Toolbox are excellent, and each has a readme file taking you through what it does and how it operates. These documentation files also feature full-color images and links to external resources for each project.
Should You Buy The Cypress PSoC 6 BLE Pioneer Kit?
We'll look at some specifications and how it is to get started with the PSoC 6 BLE Pioneer Kit in a moment, but for now: Should you get this kit?
If you are interested in Bluetooth Low energy, then yes, absolutely. This development kit combines high quality and easy to use hardware with an industry-grade chipset and professional software tools. The software examples all give a good view of the PSoC 6 workflow, and most have extended links to documentation in the readme files. Add to this a powerful onboard debugger, an external BLE USB dongle for testing, and all the extra features you get with the e-ink screen, and I can see this being a development board you spend a lot of time with. It's likely not going to be great for beginners, but for those with a little experience, right up to people working in the embedded hardware industry, this is an excellent kit for the money.
Out Of the Box CY8CKIT-062-BLE Experience
Before diving into coding the BLE Pioneer Kit, you can get a feel for its capable of using its built-in demo. Each BLE Kit comes with a full-color getting started guide taking you through the steps of installing their smartphone app, powering up the development board, and connecting to it.
Once connected, there are a few demos showing off the interactive capacitive touch sensors on the board and controlling the RGB LED color via a color wheel on the app. Nice demos, but to get started, you'll need to download the ModusToolbox version of Eclipse IDE.
A Little Deeper Using the ModusToolbox with the PSoC 6 BLE Pioneer Kit
ModusToolbox, available from Cypress, seems to be their IDE of choice going forward. While there is no official word on it, they don't seem in a rush to integrate older chipsets into the new IDE. Once the IDE is downloaded, you should be ready to get started. Before doing so, I also grabbed the official firmware updater for the KitProg debugger, as previous Cypress boards shipped with the outdated KitProg2 firmware.
As it turned out, the BLE Pioneer kit dev boards come shipped with KitProg3 already, which made things much easier. I went through my usual routine, opening a Hello World program, running and debugging it, then rebuilding it myself to get a taste of what it's like to work with. My experience with ModusToobox for Eclipse has been overwhelmingly positive so far.
Each example has a readme, which helpfully reminds you to check the KitProg firmware version number if you hadn't already. The IDE layout is easy to follow, and the Quick Access panel allows you to open new applications or build and debug current projects quickly.
E-ink is The New Black
I also tried some example code for the e-ink display. The demo code walks through various forms of writing to the screen with text and shapes, courtesy of the emWin e-ink library. Setting a breakpoint and stepping into the code while debugging shows just how easy it is to display information on the screen. Of course, an added bonus of e-ink is that once it's displaying information, it uses no power until it changes again. Perfect for super low energy projects.
This project also highlights how good some of the documentation is for the PSoC 6 BLE Pioneer Kit. When looking up the emWin e-ink library documentation, I stumbled across a detailed breakdown of the example project I'd just been looking at. This documentation makes it a little easier for intermediate programmers (or even relative noobs like myself) to get acquainted with the PSoC 6 environment and libraries.
What about the BLE USB Dongle?
The CY5677 BLE USB dongle that comes with the kit is designed as a way to communicate using BLE even if you don't have access to a computer or smartphone that supports it. Cypress provides the Cysmart software for working with the dongle, allowing users to search for and connect to BLE compatible devices.
It also gives a detailed breakdown of the information being exchanged and tools for sending test data and debugging. The CY5677 USB dongle is a standalone BLE device in its own right, which can be programmed using Cypress's PSoC Creator IDE.
A Great Entry Point to BLE - PSoC 6 BLE Pioneer Kit Final Thoughts
The PSoC 6 BLE Pioneer Kit is a great entry point to working with BLE, e-ink displays, and the PSoC 6 chipset in general. There are great demos and good documentation, which will help those in the early stages of learning about embedded programming. Those already working at a professional level will find this a highly extensible device, perfect for BLE development. If you are interested in a device that you can learn with, featuring a new chipset that'll be relevant for a long time to come, this is probably the best value development board out there currently.