       }
     }
     if (!responseStr) { // no match
-      if (strcmp(request, "TEST") == 0) {
+      if (strcmp(request, "?") == 0)
+      {
+        responseStr = sensorList;  
+      }
+      else if (strcmp(request, "TEST") == 0) {
         responseStr = "HELLO";
       }
       else

{
  if (!responseStr)
  { 
    float responseNum;
    
    for (int i = 0; i < LENGTH(sensors); i++)

        responseStr = "ERR"; 
      }
    }
      
    Serial.print("Read ");
    Serial.println(request);
    posIn = posOut = 0;
    request[0] = 0;
  }
  else
  {
    if (responseStr[posOut] != '\0')
    {
      Wire.write(responseStr[posOut++]);
    } 
    else
    {
      Wire.write("\n");
      Serial.println(responseStr);
