element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Arduino
  • Products
  • More
Arduino
Blog Internet of Holiday Lights: Road Test Plus review
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Arduino to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: Jan Cumps
  • Date Created: 17 Jan 2015 10:37 AM Date Created
  • Views 1052 views
  • Likes 0 likes
  • Comments 5 comments
  • driver
  • infineon
  • yun
  • wreath_of_things
  • iot_holidaylights
  • led_driver
  • led
  • arduino_uno
  • rgb
  • uno
  • arduino_shield
  • shield
  • arduino_yun
  • road_test_review
  • road_test
  • arduino
Related
Recommended

Internet of Holiday Lights: Road Test Plus review

Jan Cumps
Jan Cumps
17 Jan 2015

The participants of the The Internet of Holiday Lights RoadTest Plus received these three devices:

  • Infineon Lighting RGB LED Arduino Shield
  • Arduino Yún
  • Arduino Uno

 

 

  • Evaluation Type:Evaluation Boards
  • Application you used the part in:[Christmas Wreath of Things] Internet of Holiday Lights - summary
  • Was everything in the box required?:Yes - complete
  • Comparable Products/Other parts you considered:There are plethora of other IoT capable development boards and RGB drivers
  • What were the biggest problems encountered?:USB connection to PC of the Arduino Yún

 

Scoring

Product Performed to Expectations:7
Specifications were sufficient to design with:10
Demo Software was of good quality:9
Demo was easy to use:7
Support materials were available:10
The price to performance ratio was good:10

TotalScore:53 / 60

 

Infineon Lighting RGB LED Arduino Shield

 

This board is tagged as an RGB driver shield. But it is actually a fully capable microcontroller all by itself.

The manual for the evaluation board says 'XMC1200 Microcontroller Series for Industrial Applications'.

And that's no lie. The board hosts an Infineon XMC1202. One of its peripherals is 'Brightness Color Control Unit (BCCU) for LED lighting control'.

 

image

When using it as an Arduino shield, your sketch talks to the controller using i2c.
But since the shield sports a debug header, you could just as well program the on-board controller.

shabaz has written about that in his RGB LED Shield from Infineon - Getting Started Guide.

 

Using the board is not difficult, but I think Infineon can do  a better job explaining the configuration parameters and the limits calculations.

It is all understandable if you read their documentation for the shield and inspect the schematics a few times.

A nice narrative explanation of the concepts wouldn't be bad though.

However, I give Infineon an A for the completeness of specifications and principles of LED driving operation - and the elaborate explanation of that part.

Several road testers have made a library for the board. Compare the Infineon RGB libraries that spawned from the Internet of Holiday Lights

 

A watch-out: the shield uses D14 and D15 for i2c.

image

This can be an issue when this board is stacked on other shields that don't have these two 'newer' pins (e.g.: some of SparkFun and Velleman shields).

I had to do some bodge-wiring in my design:

image

 

And a second watch-out. This board (at least my board) emits a high frequency pitch when driving the leds. The pitch changes depending on the intensity.

This can be annoying if you're using it in a silent place - and your dog may complain.


Arduino Yún

 

I'm not going to write down the capabilities of this board. I would only repeat what thousands of other reviewers have done before.

I'll just tell about my first experiences with the Yún.

 

image

 

I have skills in both Arduino development and Linux. So the only step I had to talke was to learn how to link the two worlds and how to get each of them connected to the PC.

 

Making the sketch world talk to the Linux world was so simple. I loaded the Bridge TimeCheck sketch, inspected it, and done.

It's all self-explanatory. Also the other interaction principles explained on arduino.cc Yún getting started page worked straight away.

Getting the Yún up and running and connecting it to my home WiFi was also easy. Follow instructions, and done. Works.

The same for telnetting into the Linux part. I used the instructions for Putty and was on the Linux prompt in minutes.

I've used the ATMega timer interrupts in my sketch. It worked well with calling the Linux part. So they really run beautifully in parallel.

 

The USB connectivity is another story. It's been playing up from the beginning that I installed the Yún and is continuing to be a * in the *.

Disclaimer: I have a recent PC, recent OS and the drivers all installed ok.

But at regular times, the Yún disappears from the radar. And it doesn't get re-listed when I unplug it and plug it in again.
Even rebooting the PC does not help. And I have pushed all possible reset buttons on the Yún to no avail.

 

The symptoms are these:

- the Yún is not visible in the IDE.

- there's no COM port assigned to a Yún

- the Yún appears as a problematic device in the device manager.

image

 

 

 

Fixing it requires one or two steps. I haven't figured out why it is sometimes one and sometimes two steps.

If I select the Choose Driver from the device manager, sometimes the Arduino Yun driver is listed.

In that case I select that driver, push next, and the Yún is back in the USB world.

Sometimes the Arduino Yun driver is not listed. Then I have to first select the standard Port driver first.

image

image

 

After that I can go back into the 'flagged device', and the Arduino Yun driver is available.

image

Upon re-selecting that, the Yun is USB-able again.

So yes, strange. May be related to my PC - but still, it's a normal recent one, and it happens.

 

And what's that with the USB and Ethernet connector position on the Yún? They interfere with almost every shield in existence.

Either the pins of your shield are to short. Or when they are long enough, the two metal connectors shortcut something on the underside of your shield. Why?

None of my shields I have at home fitted (SainSmart, Adafruit, Velleman, Infineon).

 

The internet of things talks

 

I drove the memory use of the Yún to red when I made a talking sketch.

I used the Yún to read out aloud the payload of messages I subscribed to image.

Sketch uses 28,454 bytes (99%) of program storage space. Maximum is 28,672 bytes.

Global variables use 1,208 bytes (47%) of dynamic memory, leaving 1,352 bytes for local variables. Maximum is 2,560 bytes.

 

But it works. It took me 1 hour to adapt the TSS example to the Yún and latest IDE release, and 3 hours to bring the memory under the maximum.

Here you can hear the Yún shout out my name once, and Robert Peter Oakes name twice.

The amplifier is a Science Fair 200 in One kit. That is my tribute to Radio Shack. A company that I care for a lot. Tandy: respect forever!

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

Early sketch (Works, there's a delay sometimes - but it can be a start point to get you going. You go and debug it please):

 

// needed for MQTT and Process lib
#include <Bridge.h>
// MQTT  includes start




#include <SPI.h>
#include <YunClient.h>
#include <IPStack.h>
#include <Countdown.h>
#include <MQTTClient.h>




#include <TTS.h>
TTS text2speech;  // speech output is digital pin 10








YunClient c; // replace by a YunClient if running on a Yun
IPStack ipstack(c);
MQTT::Client<IPStack, Countdown> client = MQTT::Client<IPStack, Countdown>(ipstack);




bool messageChanged = false;


// start MQTT functionality ====================================




void mqttInit() {
//  Ethernet.begin(mac); // replace by Bridge.begin() if running on a Yun
  Bridge.begin();


  // // Serial.println("MQTT Internet of Holiday Lights example");
  connect();
} 


void messageArrived(MQTT::MessageData& md) // this handler is called when a subscribed MQTT message arrives
{
  MQTT::Message &message = md.message;
text2speech.say((char*)message.payload); //    Test_Speech();
  client.yield(1000);


}


void connect()  // connect to the MQTT broker
{
  ipstack.connect("iot.eclipse.org", 1883);

  // // Serial.println("MQTT connecting");
  MQTTPacket_connectData data = MQTTPacket_connectData_initializer;      
  data.MQTTVersion = 3;
  data.clientID.cstring = "1cfee8dd0afc_yun"; //(char*)_id;
  client.connect(data);
  client.subscribe("element14_IoT", MQTT::QOS1, messageArrived);  
}


void sendAliveMessage() {
  if (!client.isConnected())
    connect();

  MQTT::Message message;

  message.qos = MQTT::QOS1;
  message.retained = false;
  message.dup = false;
  message.payload = (void *)"jancumps"; //(void*)payLoadBuf;
  message.payloadlen = 8; // strlen(payLoadBuf)+1;
  client.publish("element14_IoT", message);
  client.yield(1000);
} 


// end MQTT functionality ==============================


/*
void Test_Speech() {
// text2speech.setPitch(6); //higher values = lower voice pitch
// strcpy(printbuf, "Hello  master! How are you doin?");
text2speech.say(printbuf);
/* delay(500);
text2speech.setPitch(1); //lower values = higher voice pitch
strcpy(text, "I am fine, thankyou.");
text2speech.say(text);*/

/*
}


*/


void setup()
{


//  Serial.begin(9600);
//  delay(10000); // give me time to start the yun monitor
  // MQTT related tasks
  mqttInit();
}


void loop()
{

  // non timer related functionality comes here
//  static unsigned int uCounter = 0;
sendAliveMessage();
delay(60000);


//  uCounter++;


}

 

 

 

Arduino UNO

 

The most reviewed gizmo in the world. I didn't use it in my final design.

It had prototyping duty.

All not-IoT related parts have been prototyped on the UNO when the Yún was already ripping away on the Internet of Things.

 

image

  • Sign in to reply

Top Comments

  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago in reply to Jan Cumps +1
    OK, now we have our first project for 2015, see how far we can take this, leverage the Eclipse Broker, PAHO or other MQTT Libraries, YUN, Speech and hmm what else this could be fun
  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago in reply to Jan Cumps +1
    Recognise... no know when it is trying to say my name sure, but only because you said it does mine twice I forgot how bad old tek speech synth was... Ah the memories
  • Jan Cumps
    Jan Cumps over 10 years ago in reply to Robert Peter Oakes

    ... I was also short on low pass filter components in my Science Fair kit image .

    It's a rather random filter that just eats away the corners of the PWM square wave audio.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago in reply to Jan Cumps

    Recognise... no

    know when it is trying to say my name sure, but only because you said it does mine twice image

     

    I forgot how bad old tek speech synth was... Ah the memories

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Jan Cumps
    Jan Cumps over 10 years ago in reply to Robert Peter Oakes

    Did you recognise your name in the video?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Robert Peter Oakes
    Robert Peter Oakes over 10 years ago in reply to Jan Cumps

    OK, now we have our first project for 2015, see how far we can take this, leverage the Eclipse Broker, PAHO or other MQTT Libraries, YUN, Speech and hmm what else

     

    this could be fun

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Jan Cumps
    Jan Cumps over 10 years ago

    I've added speech to the internet of things. image RadioShack.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube