This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| en:iot:rgb [2017/09/22 11:44] – Somepub | en:iot:rgb [2020/07/20 12:00] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | <code c> | ||
| + | #include < | ||
| + | #include < | ||
| + | #include < | ||
| + | |||
| + | #define PIN D2 | ||
| + | |||
| + | // When we setup the NeoPixel library, we tell it how many pixels, and which pin to use to send signals. | ||
| + | // Note that for older NeoPixel strips you might need to change the third parameter--see the strandtest | ||
| + | // example for more information on possible values. | ||
| + | Adafruit_NeoPixel pixels = Adafruit_NeoPixel(1, | ||
| + | |||
| + | // https:// | ||
| + | String getValue(String data, char separator, int index) | ||
| + | { | ||
| + | int found = 0; | ||
| + | int strIndex[] = {0, -1}; | ||
| + | int maxIndex = data.length()-1; | ||
| + | |||
| + | for(int i=0; i< | ||
| + | { | ||
| + | if(data.charAt(i)==separator || i==maxIndex) | ||
| + | { | ||
| + | found++; | ||
| + | strIndex[0] = strIndex[1]+1; | ||
| + | strIndex[1] = (i == maxIndex) ? i+1 : i; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | return found> | ||
| + | } | ||
| + | |||
| + | // Change RGB LED color | ||
| + | // mosquitto_pub -u test -P test -t " | ||
| + | void iot_received(String topic, String msg) | ||
| + | { | ||
| + | Serial.print(" | ||
| + | Serial.print(topic); | ||
| + | Serial.print(" | ||
| + | Serial.println(msg); | ||
| + | |||
| + | String r = getValue(msg,';', | ||
| + | String g = getValue(msg,';', | ||
| + | String b = getValue(msg,';', | ||
| + | |||
| + | Serial.print(" | ||
| + | Serial.println(r); | ||
| + | |||
| + | Serial.print(" | ||
| + | Serial.println(g); | ||
| + | |||
| + | Serial.print(" | ||
| + | Serial.println(b); | ||
| + | |||
| + | pixels.setPixelColor(0, | ||
| + | |||
| + | pixels.show(); | ||
| + | } | ||
| + | |||
| + | void iot_connected() | ||
| + | { | ||
| + | Serial.println(" | ||
| + | iot.subscribe(" | ||
| + | iot.log(" | ||
| + | } | ||
| + | |||
| + | void setup() | ||
| + | { | ||
| + | Serial.begin(115200); | ||
| + | Serial.println(" | ||
| + | |||
| + | iot.printConfig(); | ||
| + | iot.setup(); | ||
| + | |||
| + | pixels.begin(); | ||
| + | } | ||
| + | |||
| + | void loop() | ||
| + | { | ||
| + | iot.handle(); | ||
| + | delay(200); | ||
| + | } | ||
| + | |||
| + | |||
| + | </ | ||