//Transmitter Code (Uno) #include int red, green, blue,oldred,oldblue,oldgreen; String RGB; char cRGB[7]; void setup() { Serial.begin(9600); int red = 255; int blue = 255; int green = 255; vw_setup(5000); vw_set_tx_pin(7); } void loop() { if (Serial.available()>=4 && Serial.read() == 0xff) { red = Serial.read(); green= Serial.read(); blue = Serial.read(); } if (oldred!=red && oldgreen!=green && oldblue!=blue){ //here is my shitty way to convert the rgb into a hex color RGB = "F"; //starting with "F" (easier to un-hex for the receiver) if (red<=16){ RGB += "0"+String(red,HEX);} else if (red>16){RGB+=String(red,HEX);} if (green<=16){ RGB += "0"+String(green,HEX);} else if (green>16){RGB+=String(green,HEX);} if (blue<=16){ RGB += "0"+String(blue,HEX);} else if (blue>16){RGB+=String(blue,HEX);} // example of end result from the rgb color (10,10,10) = F0A0A0A RGB.toCharArray(cRGB,8); vw_send((uint8_t *)cRGB, 8); vw_send((uint8_t *)cRGB, 8); //twice is a charm oldblue = blue; oldred = red; oldgreen = green; } }