Getting started with DaisyLink

You may have already come across this, but the source for a version of a DaisyLink multicolor LED is available on codeplex ([url]http://gadgeteer.codeplex.com/SourceControl/BrowseLatest[/url]), under the Modules/MSR/MulticolorLED directory. The design is different from the GHI version, but implements very similar functionality.

The chip it uses is a Cypress PSoC. It is an interesting chip - an 8-bit MCU with some programmable digital/analog ‘blocks,’ which can be configured to provide different interfaces and capabilities, and ‘connected’ to any physical pin. For example, you can drag a ‘UART’ module into your design, and configure it to connect the TX line to pin 3, and the RX line to pin 4. It’s a bit like an easy-to-use FPGA, with many ready-to-use modules. We have often found it useful as a general-purpose prototyping chip because of its flexibility. The programmer is also relatively inexpensive (about 28 dollars from Digikey, part number 428-2021-ND).

Even if you don’t use this particular chip, the source code for the firmware should be useful. It is written in C, and should be a good guide for porting to another platform.

Cypress PSoC looks like a very neat programming environment and I love the idea of remappable IO pins. However I am not convinced it is suited to this application. We are looking at a “smart sensor/actuator” approach where you have a lot of chips each interfacing with a single sensor or actuator. For this to be viable the chip needs to be low cost, low pinout and low power consumption. As far as I can see the PSoC chips bottom out at the 20-pin, $5 mark. For comparison the Atmel or PIC chips go down to 8-pin and under $1. (PIC actually go down to 6-pin, but that is definitely not enough for DaisyLink).