enviar datos de accelerometro mma8452 a un web server

Hola he estado trabajando en un proyecto de sensores acelerometros y de temperatura , sucede que quiero enviarlos a un servidor web donde se muestren las lecturas en unos medidores creados en html con ajax , pero tengo problemas al querer enviar los datos del acelerometro , me muestran los de temperatura pero no los del accelerometro , adjunto mi codigo para checar si alguien podria notar que estoy haciendo mal .

#include <SPI.h>
#include <Wire.h> //libreria acce
#include <MMA8452.h>// libreria accelerometro
#include <SD.h>
#include <ESP8266WiFi.h> //librerias tarjeta 
#include <OneWire.h>  // libreria sensor
#include <DallasTemperature.h>// libreria sensor


#define REQ_BUF_SZ   50    // Buffer para las peticiones HTTP

File webFile;               // El Archivo de la pagina web en la SD card
char HTTP_req[REQ_BUF_SZ] = {0}; 
char req_index = 0;

//PETICION A SERVIDOR WEB 

MMA8452 accelerometer;

const char* ssid = "sha19";
const char* password = "12345678";
WiFiServer server(80);


float x,y,z; 

OneWire ourWire(D4);
DallasTemperature sensors(&ourWire);   
DeviceAddress address1 = {0x28, 0x60, 0xCB, 0x1E, 0x0, 0x0, 0x80, 0x2E};
DeviceAddress address2 = {0x28, 0x85, 0xCA, 0x1E, 0x0, 0x0, 0x80, 0x21};    

 




void setup()
{    


  pinMode(D1,INPUT);
  pinMode(D2,INPUT);
  digitalWrite(D1,HIGH);
  digitalWrite(D2,HIGH);
 
  
Serial.begin(115200);       // puerto serial

   Serial.println("Initializing SD card...");
   
   if (!SD.begin(4)) 
   {   Serial.println("ERROR - SD card initialization failed!");
       return;    // init failed
   }
   Serial.println("SUCCESS - SD card initialized.");
   if (!SD.exists("index.htm")) {
       Serial.println("ERROR - Can't find index.htm file!");
       return;  // can't find index file
   }
   Serial.println("SUCCESS - Found index.htm file.");
   Serial.println();
   Serial.print("Connecting to ");
   Serial.println(ssid);
  
   
    // Conectando a  WiFi network
 //  Serial.println();
   //Serial.print("Connecting to ");
   //Serial.println(ssid);
   
     
     WiFi.begin(ssid, password);

 
   while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
 }
 Serial.println("");
 Serial.println("WiFi connected");
 
 // iniciando servidor
 server.begin();
 Serial.println("Web server running. Waiting for the ESP IP...");
 delay(10000);
 
 //imprimir en serial monitor la ip de la pagina a consultar
 Serial.println(WiFi.localIP());

   Wire.begin();
   bool initialized = accelerometer.init(); 
   accelerometer.setPowerMode(MMA_HIGH_RESOLUTION);
   accelerometer.setDataRate(MMA_1_56hz);
   accelerometer.setRange(MMA_RANGE_2G);
   accelerometer.setHighPassFilter(MMA_HP4);

 
}

void loop()
{


  //Inicia lectura del servidor
    WiFiClient client = server.available();

     if (client) {     // Si tenemos cliente
       Serial.println("New client");
       //variables booleanas
       boolean currentLineIsBlank = true;
       while (client.connected()) {
           if (client.available())    // Hay algo pendiente de leer
             {  char c = client.read(); 
                if (req_index < (REQ_BUF_SZ - 1)) 
                 {   HTTP_req[req_index] = c;          // Montar la peticion HTTP
                     req_index++;
                 }
               if (c == '\n' && currentLineIsBlank) {  

                   client.println("HTTP/1.1 200 OK");
                   if (StrContains(HTTP_req, "ajax_inputs")) 
                      { client.println("Content-Type: text/xml");
                         client.println("Connection: keep-alive");
                         client.println();
                         // send XML file containing input states
                         XML_response(client);
                      }
                   else 
                     { client.println("Content-Type: text/html");
                       client.println("Connection: keep-alive");
                       client.println();
                       webFile = SD.open("index.htm");        // open web page file
                       if (webFile) 
                         {   while(webFile.available()) 
                               client.write(webFile.read()); // send web page to client
                           webFile.close();
                         }
                     }
                    Serial.print(HTTP_req);
                    req_index = 0;
                    StrClear(HTTP_req, REQ_BUF_SZ);
                    break;
               }
               // every line of text received from the client ends with \r\n
               if (c == '\n') 
                    currentLineIsBlank = true;
               else if (c != '\r') 
                   currentLineIsBlank = false;
           } // end if (client.available())
       } // end while (client.connected())
       delay(1);      // give the web browser time to receive the data
       client.stop(); // close the connection
   } // end if (client)
}

// send the XML file containing analog value
void XML_response(WiFiClient cl)
{
   float analog_val;
  
   
 
    
   cl.print("<?xml version = \"1.0\" ?>");
   cl.print("<inputs>");
   // read pin digital D3
   sensors.requestTemperatures();
   analog_val = sensors.getTempC(address1);
   cl.print("<analog>");
   cl.print (analog_val);
   cl.print("</analog>");
   sensors.requestTemperatures();
   analog_val = sensors.getTempC(address2);
   cl.print("<analog>");
   cl.print (analog_val);
   cl.print("</analog>"); 
   accelerometer.getAcceleration(&x);
   analog_val = fabs(x*99.10);
   cl.print("<analog>");
   cl.print (analog_val);
   cl.print("</analog>");
   //accelerometer.getAcceleration(&x,&y,&z);
   //analog_val = fabs(y*99.10);
  // cl.print("<analog>");
   //cl.print (analog_val);
   //cl.print("</analog>");
   //accelerometer.getAcceleration(&x,&y,&z);
   //analog_val = fabs(z*99.10);
   //cl.print("<analog>");
   //cl.print (analog_val);
   //cl.print("</analog>");
   cl.print("</inputs>");
}

// sets every element of str to 0 (clears array)
void StrClear(char *str, char length)
{
   for (int i = 0; i < length; i++) {
       str[i] = 0;
   }
}

// searches for the string sfind in the string str
// returns 1 if string found
// returns 0 if string not found
char StrContains(char *str, char *sfind)
{
   char found = 0;
   char index = 0;
   char len;

   len = strlen(str);
   
   if (strlen(sfind) > len) {
       return 0;
   }
   while (index < len) {
       if (str[index] == sfind[found]) {
           found++;
           if (strlen(sfind) == found) {
               return 1;
           }
       }
       else {
           found = 0;
       }
       index++;
   }

   return 0;
}]

este ultimo es mi codigo que guardo en una sd para ejecutarlo como pagina web online.
Gracias por leerme , espero no romper ninguna regla ya que soy principiante

Que arduino usas y que placa de red o WIFI usas?

Hola es verdad utilizo un Generico llamado NodeMCU es similar a Nano , y el modulo Wifi ESP8266, sensor accelerometro mmaa8452 , sensores de temperatura ds18b20 estos funcionan correctamente no tengo problema con ellos y un lector de tarjeta sd