DS18B20 Sketch erweitern, anzahl erhöhen

Ich habe mal was aus meinen großen Sketch was raus kopiert. Läuft bei mir mit 4 Sensoren sollte aber auch mit 20 gehen. Du musst nur noch deine Adressen eintragen.
Aber ich kann es nicht testen.

#include <DallasTemperature.h>
#include <OneWire.h>
#define ONE_WIRE_BUS D1

char Temperature[20][6];            // Rücklauf Kessel Warmwasser Vorlauf
unsigned long previousMillis = 0;
int numberOfDevices; // Anzahl der gefundenen Thermometer

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature DS18B20(&oneWire);

void setup() {
  Serial.begin(115200);
  DS18B20.begin();
  numberOfDevices = DS18B20.getDeviceCount();       // Ermittelt die Anzahl von Ds18b20 am Pin
  Serial.println(numberOfDevices);
  DS18B20.setWaitForConversion(false);
  DS18B20.requestTemperatures();
}

void loop() {
  unsigned long currentMillis = millis();
  if (currentMillis - previousMillis >= 5000) {         // Temperatur aller 5 Sekunden auslesen
    previousMillis = currentMillis;
    getTemperature();
  }
}

void getTemperature() {
  DeviceAddress sensor[20][8] = { {0x28, 0xFF, 0xF6, 0x1E, 0x81, 0x16, 0x04, 0xB1} , {0x28, 0xFF, 0x2E, 0x17, 0x81, 0x16, 0x04, 0x42} ,
    {0x28, 0xFF, 0x29, 0x17, 0x81, 0x16, 0x04, 0x13} , {0x28, 0xFF, 0x03, 0x18, 0x81, 0x16, 0x04, 0xCC}
  };   //Rücklauf, Kessel, Warmwasser, Vorlauf

  float temp[20];

  for (byte i = 0; i < numberOfDevices; i++ ) {
    temp[i] = DS18B20.getTempC(*sensor[i]);             // Temperatur lesen
    if (temp[i] == -127.00 ) {                        // bei Fehler abbrechen
      continue;
    }
    dtostrf(temp[i], 5, 2, Temperature[i]);
    Serial.print(i);
    Serial.print(" ");
    Serial.println(Temperature[i]);
  }
  DS18B20.requestTemperatures();
}

Gruß fips