     
     size_t equals = req.indexOf("?");
     if (equals != -1) {
-      String message=req.substring(equals+1);
+      String message=req.substring(equals+1, req.length()-9);
       printDebug("message : " + message);
-      
-      
-      strip.Show();
+      printScroll(message, 500);
+      
+      
     }
 }
 

  int off = 0;
  int pixelNumber= 0;
  for (int curCol = 0; curCol < 8; ++curCol) {
    int colValue = hexaToInt(req.charAt(2*curCol)) << 8 + hexaToInt(req.charAt(2*curCol + 1));
    int checker;
    if (curCol % 2 == 0) {
      checker = 1;
    }
    else {
      checker = 128;
    }
    
    for (int curBit = 0; curBit < 8; curBit++) {
      if ((curCol & checker) == checker) {
        strip.SetPixelColor(pixelNumber++, white);      
      }
      else {
        strip.SetPixelColor(pixelNumber++, black);            
      }
      if (curCol % 2 == 0) {
        checker << 1;
      }
      else {
        checker >> 1;
      }      
    }
  }
  
  strip.Show();
  delay(waitms);       
}



void printScroll(String input, int waitms) {
  // Need to add a space at the beginning/ end of the string
  int curOffset_message = 0;
  
  for (int maxLoop=0; maxLoop<5*input.length(); ++maxLoop) {
    
    String Chars_2 =   getCharHexa(input.charAt(curOffset_message)) +  getCharHexa(input.charAt((curOffset_message + 1) % input.length()));
    
    for (int offsetLetter = 0; offsetLetter < 8; ++offsetLetter) {
      handleHexaStringRequest(Chars_2 , waitms);
      
      
    }
    curOffset_message = curOffset_message + 1;
