void init() {
    Serial.begin(SERIAL_BAUD_RATE); // 115200 by default
    Serial.systemDebugOutput(false); // Enable debug output to serial

    WifiStation.enable(false);
    WifiAccessPoint.enable(false);

    initDisplay();

    ReadTemp.Init(DS_PIN);
    ReadTemp.StartMeasure();

    displayTemps();

    system_deep_sleep(30 * 1000 * 1000);
}
Exemple #2
0
void init()
{
	if (USE_SERIAL)
	{
		Serial.begin(SERIAL_BAUD_RATE); // 115200 by default
		Serial.systemDebugOutput(true); // Debug output to serial
		Serial.println("booting up");
	}
    //Setup temp sensors
    temperatureSensor.Init(TEMP_PIN);
    temperatureSensor.StartMeasure();
    System.onReady(ready);
    WifiStation.config(WIFI_SSID, WIFI_PWD);
    WifiStation.enable(true);
    WifiAccessPoint.enable(false);

    // Run our method when station was connected to AP (or not connected)
    WifiStation.waitConnection(connectOk, 20, connectFail); // We recommend 20+ seconds for connection timeout at start
}
Exemple #3
0
String getTemperature()
{
    if (!temperatureSensor.MeasureStatus())  // the last measurement completed
    {
        if (temperatureSensor.GetSensorsCount())   // is minimum 1 sensor detected ?
        {
            for(int a=0;a<temperatureSensor.GetSensorsCount();a++)   // prints for all sensors
            {
                if (temperatureSensor.IsValidTemperature(a))   // temperature read correctly ?
                    return String(temperatureSensor.GetFahrenheit(a));
                else
                    if (USE_SERIAL) Serial.println("Temperature not valid");
            }
        }
    }
    else
        if (USE_SERIAL) Serial.println("No valid Measure so far! wait please");

    return "-1111";
}
void displayTemps() {
    uint8_t a;

    if (!ReadTemp.MeasureStatus()) {
        display.clearDisplay();
        display.setCursor(0, 0);

        for (a = 0; a < ReadTemp.GetSensorsCount(); a++) {
            if (ReadTemp.IsValidTemperature(a)) {
                display.printf("T%d: %.2f %cC\n", a + 1, ReadTemp.GetCelsius(a), (char) 0x7f);
            }
        }
        display.display();
    }
    else {
        display.println("Measure err.");
        Serial.println("Measure err.");
    }


}
//**********************************************************
// DS18S20 example, reading
// You can connect multiple sensors to a single port
// (At the moment 4 pcs - it depends on the definition in the library)
// Measuring time: 1.2 seconds * number of sensors
// The main difference with the previous version of the demo:
//  - Do not use the Delay function () which discourages by manufacturer of ESP8266
//  - We can read several sensors
// Usage:
//  Call Init to setup pin eg. ReadTemp.Init(2);   //pin 2 selected
//  Call ReadTemp.StartMeasure();
//   if ReadTemp.MeasureStatus() false read sensors
//   You can recognize sensors by the ID or index.
//***********************************************************
void readData()
{
	uint8_t a;
	uint64_t info;

	if (!ReadTemp.MeasureStatus())  // the last measurement completed
	{
      if (ReadTemp.GetSensorsCount())   // is minimum 1 sensor detected ?
		Serial.println("******************************************");
	    Serial.println(" Reding temperature DEMO");
	    for(a=0;a<ReadTemp.GetSensorsCount();a++)   // prints for all sensors
	    {
	      Serial.print(" T");
	      Serial.print(a+1);
	      Serial.print(" = ");
	      if (ReadTemp.IsValidTemperature(a))   // temperature read correctly ?
	        {
	    	  Serial.print(ReadTemp.GetCelsius(a));
	    	  Serial.print(" Celsius, (");
	    	  Serial.print(ReadTemp.GetFahrenheit(a));
	    	  Serial.println(" Fahrenheit)");
	        }
	      else
	    	  Serial.println("Temperature not valid");

	      Serial.print(" <Sensor id.");

	      info=ReadTemp.GetSensorID(a)>>32;
	      Serial.print((uint32_t)info,16);
	      Serial.print((uint32_t)ReadTemp.GetSensorID(a),16);
	      Serial.println(">");
	    }
		Serial.println("******************************************");
		ReadTemp.StartMeasure();  // next measure, result after 1.2 seconds * number of sensors
	}
	else