Go Down

Topic: Sylvania / OSRAM 'Mosaic' light strips - IR codes (Read 6770 times) previous topic - next topic


Hi, has anyone played with the Sylvania / OSRAM 'Mosaic' light strips? The residential version can be purchased at Lowe's.

Here is the spec sheet.

I get the feeling that the LEDs are not individually addressable, but it's still a nice lighting solution for a decent price. And the strips have adhesive on the back so it was easy to put them up where we wanted them.

I have gone ahead and captured all 24 codes from the remote, if you want to send them from an Arduino project using the IRremote library by Ken Shirriff.

Here is his example code, modified to send three of the codes (on, off, and 'red'):

Code: [Select]

* IRremote: IRsendDemo - demonstrates sending IR codes with IRsend
* An IR LED must be connected to Arduino PWM pin 3.
* Version 0.1 July, 2009
* Copyright 2009 Ken Shirriff
* http://arcfn.com
* Modified with Sylvania / OSRAM 'Mosaic' codes by Thom Brooks, 8/2013
#include <IRremote.h>

IRsend irsend;

const int onButtonPin = 12;
int onButtonState = 0;

const int offButtonPin = 11;
int offButtonState = 0;

const int redButtonPin = 10;
int redButtonState = 0;

unsigned int power_off[] = {8967,4497,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,1683,552,1683,552,1683,552,39996,8967,2261,552};             
unsigned int power_on[] = {8967,4497,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,552,552,1683,552,1683,552,552,552,552,552,552,552,552,552,552,552,1683,552,552,552,552,552,1683,552,1683,552,1683,552,1683,552,39996,8967,2261,552};             
unsigned int color_red[] = {8967,4523,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,1683,552,552,552,552,552,1683,552,1683,552,552,552,552,552,552,552,552,552,1683,552,1683,552,552,552,552,552,1683,552,1683,552,1683,552,40022,8967,2261,552};

void setup()
    pinMode(onButtonPin, INPUT_PULLUP);
    pinMode(offButtonPin, INPUT_PULLUP);
    pinMode(redButtonPin, INPUT_PULLUP);

void loop() {

    onButtonState = digitalRead(onButtonPin);
    if (onButtonState == LOW) {
       for (int i = 0; i < 3; i++) {
          irsend.sendRaw(power_on, 71, 38);

    offButtonState = digitalRead(offButtonPin);
    if (offButtonState == LOW) {
       for (int i = 0; i < 3; i++) {
          irsend.sendRaw(power_off, 71, 38);

    redButtonState = digitalRead(redButtonPin);
    if (redButtonState == LOW) {
       for (int i = 0; i < 3; i++) {
          irsend.sendRaw(color_red, 71, 38);


Attached to this post is the lircd.conf file which contains all the raw codes.

Two notes:

1. You'll need to convert it from the format it's in (numbers separated by spaces on multiple lines) to all one line, comma separated;
2. Be careful to count the number of comma-separated values. In this case all three of them had 71 (second argument to the sendRaw function) but I haven't checked all of them. (The third argument is the carrier frequency, 38kHz.)

Hope this is useful to someone!


Just for grins, here are the codes in Philips CCF format and AMX .IRL format, since that's the windy path I took to capture them. (Sorry if slightly off-topic from this forum, but again, maybe someone can make use of them.)


Tnx for the upload...

I imported a couple of them into our AnalysIR tool as a test and here is an exported trace image of the 'power on('top) and 'power off'(bottom) IR signals. FYI the codes are reported as 0x00FFF807 (power on) & 0x00FFB04F (power off). The format is NEC (extended), where only the last 2 bytes are inverted.  These signals should decode easily into Hex format using the Arduino IRremote or IRlib libraries, which would be much more efficient, accurate and use up less RAM than RAW format, if anyone is planning a project on Arduino.


Sincerely curious about these codes and trying to get them into a cleaner format (they seem not to be working on my IR blaster). Currently running it through a pluggin for Tasker on my Galaxy S4 (using it as a light alarm). I've ran tests parsing codes for my samsung TV and they work just fine, the CCF codes look close but are a hex pair shorter than the TV codes. Any help would be great!


At least the power on/off codes are fine, as per my last post.

It is not uncommon for IR signals to be different lengths, for a variety of reasons.

You may be better posting examples or more information, to get more help, as different length Infrared signals is not necessarily a problem.

Also, the IR protocol may be different between devices, even from the same manufacturer.


Thank you for your response, that actually helps a bit, as I know little about IR and have been trying to "night before finals" style learn up on it.  To show the type I have this is the exact package: http://costcocouple.com/sylvania-mosaic-led-flexible-light-kit/ I realize that what you said very well could be what I'm running into, potentially a different manufacturing run that uses different codes, my next question comes from this, how do I figure out the codes I need then? I appreciate your responses, this is one of the only resources that I've been able to actually make use of, that I've found so far.


Thanks a ton for the IR codes!

I have put together an Android/Arduino project that I use to control my Sylvania lights after a freak accident my remote had with a washer and dryer.  :)


If you guys have any feedback please feel free to let me know.

Go Up