Openhab2 with WS2812B neopixel LED strip not working from openhab

Below is my code for nodemcu…please suggest me the configuration for openhab…like home.items,home.sitemap and home.rule.

// Neopixel
#include <Adafruit_NeoPixel.h>

// ESP 8266
#include <ESP8266WiFi.h>
#include <PubSubClient.h>

// MQTT Subscribes
const char* SubscribeTo = “esp/1/out”;
const char* SubscribeFrom = “esp/1/in”;

// WiFi & MQTT Server
const char* ssid = “CS10-1006”;
const char* password = “redhat@rhce”;
const char* mqtt_server = “192.168.0.106”;
const int mqttport = 1883; // use 8883 for SSL
const char *mqttuser = “openhabian”;
const char *mqttpassword = “redhat”;

WiFiClient espClient;
PubSubClient pubClient(espClient);
long lastMsg = 0;
char msg[50];
String message("#000000");
String lastMessage("#000000");

// Neopixel Config
#define NeoPIN D3
#define NUM_LEDS 30
int brightness = 150;
Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, NeoPIN, NEO_RGB + NEO_KHZ800);

void setup() {
Serial.begin ( 115200 );

// ##############
// NeoPixel start
Serial.println();
strip.setBrightness(brightness);
strip.begin();
strip.show();
delay(50);

// WiFi
setup_wifi();

// MQTT
Serial.print(“Connecting to MQTT…”);
// connecting to the mqtt server
pubClient.setServer(mqtt_server, 1883);
pubClient.setCallback(callback);
Serial.println(“done!”);
}

void callback(char* topic, byte* payload, unsigned int length) {
Serial.print(“Message arrived [”);
Serial.print(topic);
Serial.print("] “);
String color(”#");

for (int i = 0; i < length; i++) {
Serial.print((char)payload[i]);
if(i > 0){
color = color + String((char)payload[i]);
}
}

Serial.println();

// finding payload
if((char)payload[0] == ‘#’){
// setting color
setNeoColor(color);
}

}

void setup_wifi() {

delay(10);
// We start by connecting to a WiFi network
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);

WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
delay(100);
Serial.print(".");
}

Serial.println("");
Serial.println(“WiFi connected”);
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
}

void loop() {
if (!pubClient.connected()) {
delay(100);
reconnect();
}
pubClient.loop();

long now = millis();
if (now - lastMsg > 60000 || lastMessage.indexOf(message) < 0 ) {

lastMsg = now;
Serial.print("Publish message: ");
Serial.println(message);
char msg[7];
message.toCharArray(msg, message.length());
Serial.print("Publishing...");
pubClient.publish(SubscribeTo, msg);
Serial.println("Done!!!");
lastMessage = message;

}
delay(10);
}

void setNeoColor(String value){
Serial.println(“Setting Neopixel…” + value);
message = value;
int number = (int) strtol( &value[1], NULL, 16);

int r = number >> 16;
int g = number >> 8 & 0xFF;
int b = number & 0xFF;



 Serial.print("RGB: ");
Serial.print(r, DEC);
Serial.print(" ");
Serial.print(g, DEC);
Serial.print(" ");
Serial.print(b, DEC);
Serial.println(" ");

for(int i=0; i < NUM_LEDS; i++) {
strip.setPixelColor(i, strip.Color( g, r, b ) );
}
strip.show();

Serial.println("on.");

}

void reconnect() {
// Loop until we’re reconnected
while (!pubClient.connected()) {
// Attempt to connect
if (pubClient.connect(“ESP8266Client”)) {
Serial.println(“connected”);
// Once connected, publish an announcement…
pubClient.publish(SubscribeTo, “Restart”);
// … and resubscribe
pubClient.subscribe(SubscribeFrom);
} else {
Serial.print(“failed, rc=”);
Serial.print(pubClient.state());
Serial.println(" try again in 5 seconds");
// Wait 5 seconds before retrying
delay(5000);
}
}
}

This is going to be a case of “if you give a man a fish, you feed him for a day, if you teach a man to fish they eat for life.”

Neither I nor anyone else on this forum is going to do this for you. The fact that you just pasted in this code as is strongly implies that you have no idea how this code works. So start with that. Once you understand the code you can come back and say “I have an ESP device that publishes to the following MQTT topics and subscribes to the following MQTT topics.”

No one here wants to try to figure that out on their own by reading some random code. In truth, I suspect there is only a minority of users on this forum who even know how to read this code.

Then review How to get started (there is no step-by-step tutorial) and all the links posted there. This will help you understand OH. Then read the MQTT binding docs which tell you how to set it up.

Neither I nor anyone else on this forum is going to code this for you. But we will help answer specific questions if you show a willingness to learn.

Hi,
the quick and dirty solution for you is this:

Hardware setup:
-flash the bin with esptool into your esp8266.
-connect 3 cables to your ESP8266
(+5V,GND, 510 Ohm resistor + LED signal)

Software setup:
-connect to your new esp artnet node via browser and config your WiFi parameters
-install additional DMX and Artnet plugin

Easy going, 5 minutes work.
Enjoy OpenHAB2 with you Pixel strip

Cheers
Chrimo

BTW: works perfect with any DMX fixtures