- 
	
	
	
		esp8266 und DS18B20 
		Hallo zusammen
 Habe den mehre DS18BS20 an den ESP8266 angeschlossen und das Programm unten laufen.
 Mein Probelm ist jetzt: Es werden nicht alle DS18B20 erkannt.
 Frage: kann ich den Wiederstand jetzt 4.7 KOhme veränderen. In welchen bereich?
 Und erreiche ich damit was?
 
	Code: 
 #include <OneWire.h>
 #include <DallasTemperature.h>
 
 // Data wire is plugged TO GPIO 4
 #define ONE_WIRE_BUS 4
 
 // Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
 OneWire oneWire(ONE_WIRE_BUS);
 
 // Pass our oneWire reference to Dallas Temperature.
 DallasTemperature sensors(&oneWire);
 
 // Number of temperature devices found
 int numberOfDevices;
 
 // We'll use this variable to store a found device address
 DeviceAddress tempDeviceAddress;
 
 void setup() {
 // start serial port
 Serial.begin(115200);
 Serial.println();
 
 // Start up the library
 sensors.begin();
 
 // Grab a count of devices on the wire
 numberOfDevices =  sensors.getDeviceCount(), DEC;
 
 // locate devices on the bus
 Serial.print("Locating devices...");
 Serial.print("Found ");
 Serial.print(numberOfDevices, DEC);
 Serial.println(" devices.");
 
 // Loop through each device, print out address
 for (int i = 0; i < numberOfDevices; i++) {
 // Search the wire for address
 if (sensors.getAddress(tempDeviceAddress, i)) {
 Serial.print("Found device ");
 Serial.print(i, DEC);
 Serial.print(" with address: ");
 printAddress(tempDeviceAddress);
 Serial.println();
 } else {
 Serial.print("Found ghost device at ");
 Serial.print(i, DEC);
 Serial.print(" but could not detect address. Check power and cabling");
 }
 }
 }
 
 void loop() {
 sensors.requestTemperatures(); // Send the command to get temperatures
 
 // Loop through each device, print out temperature data
 for (int i = 0; i < numberOfDevices; i++) {
 // Search the wire for address
 if (sensors.getAddress(tempDeviceAddress, i)) {
 // Output the device ID
 Serial.print("Temperature for device: ");
 Serial.println(i, DEC);
 // Print the data
 float tempC = sensors.getTempC(tempDeviceAddress);
 Serial.print("Temp C: ");
 Serial.print(tempC);
 Serial.print(" Temp F: ");
 Serial.println(DallasTemperature::toFahrenheit(tempC)); // Converts tempC to Fahrenheit
 }
 }
 delay(5000);
 }
 
 // function to print a device address
 void printAddress(DeviceAddress deviceAddress) {
 for (uint8_t i = 0; i < 8; i++) {
 if (deviceAddress[i] < 16) Serial.print("0");
 Serial.print(deviceAddress[i], HEX);
 }
 }