Czujnik głębokości dla cieczy z czujnikiem różnicy ciśnień

Masz pomysł na funkcjonalność lub koncepcję na rozwój projektu. Opisz wszystko tutaj.
mirizag
Posts: 123
Joined: Mon Jan 02, 2017 6:36 pm

Post

adamwro25 wrote: Wed May 29, 2019 8:13 am @mirizag

Co podłączyłeś do czujnika mpx worek czy rure?
Do MPX dałem rurę.
adamwro25
Posts: 41
Joined: Sun Mar 04, 2018 1:25 pm

Post

mirizag wrote: Wed May 29, 2019 8:51 pm
adamwro25 wrote: Wed May 29, 2019 8:13 am @mirizag

Co podłączyłeś do czujnika mpx worek czy rure?
Do MPX dałem rurę.
Ok, a koniec rury z drugiej strony masz otwarty czy dałeś worek?
mirizag
Posts: 123
Joined: Mon Jan 02, 2017 6:36 pm

Post

Drugi koniec rury jest otwarty. Na samym dole rury wywierciłem otwory na około rury i rura do samego dna.
NetAs
Posts: 138
Joined: Mon May 28, 2018 7:06 am
Location: Wrocław

Post

Mam pytanko, na schemacie napisane jest rezystor 180K, a na rysunku w kodzie kolorów jest to 150K, to ile właściwie powinno być?
elmaya
Posts: 1485
Joined: Wed Jun 27, 2018 5:48 pm
Location: El Saucejo - Sevilla

Post

NetAs wrote: Mon Jul 29, 2019 6:16 am Mam pytanko, na schemacie napisane jest rezystor 180K, a na rysunku w kodzie kolorów jest to 150K, to ile właściwie powinno być?
180 Kohm
Fritzing has no resistance of 180 kohm
ipro
Posts: 23
Joined: Sun Sep 01, 2019 3:52 am
Location: Jarosławiec

Post

mirizag wrote: Sun Jun 02, 2019 10:05 am Drugi koniec rury jest otwarty. Na samym dole rury wywierciłem otwory na około rury i rura do samego dna.
Czy mógłbyś podzielić się "patentem", jakiego typu i średnicy rury użyłeś, oraz jak ją dokładnie połączyłeś z króćcem czujnika?

Z góry dzięki.
rek.fm
Posts: 12
Joined: Tue Dec 19, 2017 9:31 am

Post

Zmontowałem sobie układ do pomiaru ilości wody w studni (9,5m) czujnik MPX5100 oraz przekaźnika do załączania pompy podlewającej ogródek. Od układu do dna studni poprowadziłem 15m wężyka 4mm. Przekaźnik sterowany jest przyciskiem fizycznym oraz za pomocą supli. Do źródła kolegi elmaya dołożyłem jeszcze BMC280 mierzący temperaturę i ciśnienie bezwzględne. Wszystko "niby" działa ale nie do końca. Pomiar ilości wody dla compensation 750 zaniżony był o ok 1m skorygowałem go ustawiając na 340. Przekaźnik również niby działa ale na jego stan w supli wpływa zmiana poziomu wody. Czy ma ktoś jakieś pomysły?


Code: Select all

#include <FS.h>       // ---- esp board manager 2.4.2 --- iwip Variant V2 higher Bandwidth
#include <EEPROM.h>
#include <ESP8266WiFi.h>
#define SUPLADEVICE_CPP
#include <SuplaDevice.h>
#include <DNSServer.h>
#include <WiFiManager.h> 
#include <ArduinoJson.h>     //--------- https://github.com/bblanchon/ArduinoJson/tree/v5.13.2 ------
#include <Ticker.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
#include <ESPEFC.h>  // modification of ESP8266HTTPUpdateServer that includes erases flash and wifi credentials
#include <Wire.h>
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP280.h>
Adafruit_BMP280 bme; // I2C

extern "C"
{
#include "user_interface.h"
}
#define onboard_led 2      //D4           status led
#define TRIGGER_PIN 0      // D3     wifi configuration pin --------pin konfiguracji wifi
#define zeroCal_PIN 14 // D5    MPX zero Calibration pin -------Pin kalibracji zerowej MPX
#define BMP_SCK 13
#define BMP_MISO 12
#define BMP_MOSI 11 
#define BMP_CS 10

#define BTN_COUNT 1

typedef struct {
  int pin;
  int relay_pin;
  int channel;
  char last_val;
  unsigned long last_time;
} _btn_t;

_btn_t btn[BTN_COUNT];

void supla_timer() {
  char v;
  unsigned long now = millis();
  
  for(int a=0;a<BTN_COUNT;a++)
    if (btn[a].pin > 0) {
        v = digitalRead(btn[a].pin);
        if (v != btn[a].last_val && now - btn[a].last_time ) {
           btn[a].last_val = v;
           btn[a].last_time = now;
           if (v==0)
             {
                 if ( digitalRead(btn[a].relay_pin) > 0 ) {
                  SuplaDevice.relayOff(btn[a].channel);
                 } else {
                  SuplaDevice.relayOn(btn[a].channel, 0);
                 }        
             }
        }
  
    }
}

void supla_btn_init() {
  for(int a=0;a<BTN_COUNT;a++)
    if (btn[a].pin > 0) {
        pinMode(btn[a].pin, INPUT_PULLUP); 
        btn[a].last_val = digitalRead(btn[a].pin);
        btn[a].last_time = millis();
    }
}

WiFiClient client;
ESP8266WebServer httpServer(81);
ESPEFC httpUpdater;
const char* host = "supla";
Ticker ticker;
unsigned long wifi_checkDelay = 30000;
unsigned long wifimilis; 
int C_W_state = HIGH; 
int last_C_W_state = HIGH;
unsigned long time_last_C_W_change = 0; 
long C_W_delay = 5000;               // config delay 5 seconds           ----------        opóźnienie konfiguracji 5 sekund
int MPX_mtbs = 15000;                // mean time between MPX update 
double MPX_tipo = 100.0;   
int mpx_zeroCal ;
int mpx_Tipo ;
unsigned long MPX_lasttime;   
double MPX_Value = 0;
double MPV_Send = -1;
double distance = 0;
double rssi = 0;
double rssi_last = 0;
int MPX_zero_offset = 0;
int mpx_Compensation =0;
int s;                   //             ---------------- Status ------------------
int timeout           = 120;
char Supla_server[40];
char Location_id[15];
char Location_Pass[34];
char MPX_Compensation[5];
char MPX_Tipo[5];
char Supla_name[51];
char update_path[21];
char update_username[21];
char update_password[21];
byte mac[6];
bool pr_wifi = true;
bool shouldSaveConfig = false;
bool initialConfig = false;

double get_temperature (int channelNumber, double temp){
  
    temp = bme.readTemperature();
    Serial.print("Temperature = ");
    Serial.print(bme.readTemperature());
    Serial.println(" *C");
    if ( isnan(temp)) {
    temp = -275;
    }
    return round(temp*10)/10;
  }

double get_pressure (int channelNumber, double pressure){
  
    pressure = bme.readPressure() / 100.0F;
    Serial.print("Pressure = ");
    Serial.print(bme.readPressure());
    Serial.println(" hPa");
    if ( isnan(pressure) ) {
    pressure = -1;
    }
    return round(pressure);
  }

void get_MPX(){
  int val = 0;
      for(int i = 0; i < 10; i++) {
      val += analogRead(A0);
      delay(1);
      }
      val = val / 10; 
  yield();
  MPX_Value = map(val,MPX_zero_offset,(mpx_Compensation+MPX_zero_offset),0,1000) / MPX_tipo;
  yield(); 
  Serial.print("depth: ");  
  Serial.print(MPX_Value,2);
  Serial.println(" m"); 
  yield();
  if (MPX_Value != MPV_Send){ 
    MPV_Send = MPX_Value;
    SuplaDevice.channelDoubleValueChanged(0, MPV_Send);       
  }
    digitalWrite(onboard_led, LOW);
    delay(100);
    digitalWrite(onboard_led, HIGH);
}
void tick(){
  int state = digitalRead(onboard_led);  
  digitalWrite(onboard_led, !state);  
}
void saveConfigCallback () {
  Serial.println("Should save config");
  shouldSaveConfig = true;
}
void ondemandwifiCallback () {
  ticker.attach(0.2, tick);
  WiFiManagerParameter custom_Supla_server("server", "supla server", Supla_server, 40);
  WiFiManagerParameter custom_Location_id("ID", "Location_id", Location_id, 15);
  WiFiManagerParameter custom_Location_Pass("Password", "Location_Pass", Location_Pass, 34 );
  WiFiManagerParameter custom_MPX_Compensation("MPX_Compensation", "Compensation 500-1000", MPX_Compensation, 5);
  WiFiManagerParameter custom_MPX_Tipo("MPX_Tipo", "MPX Tipo 5010-5050-5100", MPX_Tipo, 5);
  WiFiManagerParameter custom_Supla_name("name", "Supla Device Name", Supla_name, 51,"required");
  WiFiManagerParameter custom_update_path("updatePath", "/xxxx update path", update_path, 21,"required");
  WiFiManagerParameter custom_update_username("updateUsername", "update username", update_username, 21,"required");
  WiFiManagerParameter custom_update_password("updatePassword", "update password", update_password, 21,"required");

  WiFiManager wifiManager;
  wifiManager.setBreakAfterConfig(true);
  wifiManager.setSaveConfigCallback(saveConfigCallback);

  wifiManager.addParameter(&custom_Supla_server);
  wifiManager.addParameter(&custom_Location_id);
  wifiManager.addParameter(&custom_Location_Pass);
  wifiManager.addParameter(&custom_MPX_Compensation);
  wifiManager.addParameter(&custom_MPX_Tipo);
  wifiManager.addParameter(&custom_Supla_name);
  wifiManager.addParameter(&custom_update_path);
  wifiManager.addParameter(&custom_update_username);
  wifiManager.addParameter(&custom_update_password);

  wifiManager.setCustomHeadElement("<style>html{ background-color: #01DF3A;}</style><div class='s'><svg version='1.1' id='l' x='0' y='0' viewBox='0 0 200 200' xml:space='preserve'><path d='M59.3,2.5c18.1,0.6,31.8,8,40.2,23.5c3.1,5.7,4.3,11.9,4.1,18.3c-0.1,3.6-0.7,7.1-1.9,10.6c-0.2,0.7-0.1,1.1,0.6,1.5c12.8,7.7,25.5,15.4,38.3,23c2.9,1.7,5.8,3.4,8.7,5.3c1,0.6,1.6,0.6,2.5-0.1c4.5-3.6,9.8-5.3,15.7-5.4c12.5-0.1,22.9,7.9,25.2,19c1.9,9.2-2.9,19.2-11.8,23.9c-8.4,4.5-16.9,4.5-25.5,0.2c-0.7-0.3-1-0.2-1.5,0.3c-4.8,4.9-9.7,9.8-14.5,14.6c-5.3,5.3-10.6,10.7-15.9,16c-1.8,1.8-3.6,3.7-5.4,5.4c-0.7,0.6-0.6,1,0,1.6c3.6,3.4,5.8,7.5,6.2,12.2c0.7,7.7-2.2,14-8.8,18.5c-12.3,8.6-30.3,3.5-35-10.4c-2.8-8.4,0.6-17.7,8.6-22.8c0.9-0.6,1.1-1,0.8-2c-2-6.2-4.4-12.4-6.6-18.6c-6.3-17.6-12.7-35.1-19-52.7c-0.2-0.7-0.5-1-1.4-0.9c-12.5,0.7-23.6-2.6-33-10.4c-8-6.6-12.9-15-14.2-25c-1.5-11.5,1.7-21.9,9.6-30.7C32.5,8.9,42.2,4.2,53.7,2.7c0.7-0.1,1.5-0.2,2.2-0.2C57,2.4,58.2,2.5,59.3,2.5z M76.5,81c0,0.1,0.1,0.3,0.1,0.6c1.6,6.3,3.2,12.6,4.7,18.9c4.5,17.7,8.9,35.5,13.3,53.2c0.2,0.9,0.6,1.1,1.6,0.9c5.4-1.2,10.7-0.8,15.7,1.6c0.8,0.4,1.2,0.3,1.7-0.4c11.2-12.9,22.5-25.7,33.4-38.7c0.5-0.6,0.4-1,0-1.6c-5.6-7.9-6.1-16.1-1.3-24.5c0.5-0.8,0.3-1.1-0.5-1.6c-9.1-4.7-18.1-9.3-27.2-14c-6.8-3.5-13.5-7-20.3-10.5c-0.7-0.4-1.1-0.3-1.6,0.4c-1.3,1.8-2.7,3.5-4.3,5.1c-4.2,4.2-9.1,7.4-14.7,9.7C76.9,80.3,76.4,80.3,76.5,81z M89,42.6c0.1-2.5-0.4-5.4-1.5-8.1C83,23.1,74.2,16.9,61.7,15.8c-10-0.9-18.6,2.4-25.3,9.7c-8.4,9-9.3,22.4-2.2,32.4c6.8,9.6,19.1,14.2,31.4,11.9C79.2,67.1,89,55.9,89,42.6z M102.1,188.6c0.6,0.1,1.5-0.1,2.4-0.2c9.5-1.4,15.3-10.9,11.6-19.2c-2.6-5.9-9.4-9.6-16.8-8.6c-8.3,1.2-14.1,8.9-12.4,16.6C88.2,183.9,94.4,188.6,102.1,188.6z M167.7,88.5c-1,0-2.1,0.1-3.1,0.3c-9,1.7-14.2,10.6-10.8,18.6c2.9,6.8,11.4,10.3,19,7.8c7.1-2.3,11.1-9.1,9.6-15.9C180.9,93,174.8,88.5,167.7,88.5z'/></svg>");

  wifiManager.setMinimumSignalQuality();

    wifiManager.setConfigPortalTimeout(timeout);

    if (!wifiManager.startConfigPortal("SuplaMPX")) {   //    ----wifi configuration ap name---
      Serial.println("Not connected to WiFi but continuing anyway.");
    } else {
      
      Serial.println("connected...yeey :)");    //if you get here you have connected to the WiFi
    }
    strcpy(Supla_server, custom_Supla_server.getValue());
    strcpy(Location_id, custom_Location_id.getValue());
    strcpy(Location_Pass, custom_Location_Pass.getValue());
    strcpy(MPX_Compensation, custom_MPX_Compensation.getValue());
    strcpy(MPX_Tipo, custom_MPX_Tipo.getValue());
    strcpy(Supla_name, custom_Supla_name.getValue());
    strcpy(update_path, custom_update_path.getValue());
    strcpy(update_username, custom_update_username.getValue());
    strcpy(update_password, custom_update_password.getValue());
}
//double get_temperature(int channelNumber, double rssi_last) {   //   --------------------------- New -----------------------------
         
//         rssi = WiFi.RSSI();  // ---------------------Twój kod daje 
//        delay(10);
//         if (rssi != rssi_last){ 
//          rssi_last = rssi;
//          return rssi_last;
//         }          
//    }


double get_distance(int channelNumber, double distance) {
    delay(10);
    return MPV_Send;
    }
void status_func(int status, const char *msg) {     //    ------------------------ Status --------------------------
 s=status;                                          //    -- to check if we are registered and ready 
}

void setup() {    //    ------------------------ Setup --------------------------

  memset(btn, 0, sizeof(btn));
  btn[0].pin = 13;
  btn[0].relay_pin = 12;
  btn[0].channel = 3;
  supla_btn_init();
  SuplaDevice.setTimerFuncImpl(&supla_timer);

  wifi_set_sleep_type(NONE_SLEEP_T);

  Serial.begin(115200);
  EEPROM.begin(128);  
  pinMode(TRIGGER_PIN, INPUT_PULLUP);
  pinMode(zeroCal_PIN, INPUT_PULLUP);
  pinMode(onboard_led, OUTPUT);

if (!bme.begin()) { 
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
while (1);
}

  
  if (WiFi.SSID()==""){
    initialConfig = true;
  }
  ticker.attach(0.8, tick);
  
  Serial.println("mounting FS...");
  
  if (SPIFFS.begin()) {
    Serial.println("mounted file system");
    if (SPIFFS.exists("/config.json")) {
      //file exists, reading and loading
      Serial.println("reading config file");
      File configFile = SPIFFS.open("/config.json", "r");
      if (configFile) {
        Serial.println("opened config file");
        size_t size = configFile.size();
        // Allocate a buffer to store contents of the file.
        std::unique_ptr<char[]> buf(new char[size]);

        configFile.readBytes(buf.get(), size);
        DynamicJsonBuffer jsonBuffer;         
        JsonObject& json = jsonBuffer.parseObject(buf.get());
        Serial.println(jsonBuffer.size());
        json.printTo(Serial);
        if (json.success()) {
          Serial.println("\nparsed json");

          strcpy(Supla_server, json["Supla_server"]);
          strcpy(Location_id, json["Location_id"]);
          strcpy(Location_Pass, json["Location_Pass"]);
          strcpy(MPX_Compensation, json["MPX_Compensation"]);
          strcpy(MPX_Tipo, json["MPX_Tipo"]);
          strcpy(Supla_name, json["Supla_name"]);         
          strcpy(update_path, json["update_path"]);
          strcpy(update_username, json["update_username"]);
          strcpy(update_password, json["update_password"]);
          mpx_Tipo = String(MPX_Tipo).toInt();
          if (mpx_Tipo == 5010){
           MPX_tipo = 1000.0; 
          }
          else if (mpx_Tipo == 5050){
           MPX_tipo = 200.0; 
          }
          else{
           MPX_tipo = 100.0; 
          }
          Serial.print("Mpx Tipo: ");
          Serial.println(MPX_tipo);
          mpx_Compensation = String(MPX_Compensation).toInt();
          Serial.print("Mpx Compensation: ");
          Serial.println(mpx_Compensation);
        } else {
          Serial.println("failed to load json config");          
        }
      }
    }
  } else {
    Serial.println("failed to mount FS");
  }
  MPX_zero_offset = EEPROM.read(1);
  Serial.print("Read MPX zero offset: ");
  Serial.println(MPX_zero_offset);

  uint8_t mac[WL_MAC_ADDR_LENGTH];
  WiFi.macAddress(mac);
  char GUID[SUPLA_GUID_SIZE] = {mac[WL_MAC_ADDR_LENGTH - 6], mac[WL_MAC_ADDR_LENGTH - 5], mac[WL_MAC_ADDR_LENGTH - 4], mac[WL_MAC_ADDR_LENGTH - 3],                                
                                mac[WL_MAC_ADDR_LENGTH - 2], mac[WL_MAC_ADDR_LENGTH - 1], mac[WL_MAC_ADDR_LENGTH - 1], mac[WL_MAC_ADDR_LENGTH - 2], 
                                mac[WL_MAC_ADDR_LENGTH - 3], mac[WL_MAC_ADDR_LENGTH - 4], mac[WL_MAC_ADDR_LENGTH - 5], mac[WL_MAC_ADDR_LENGTH - 6]};
  
  SuplaDevice.addDistanceSensor();
  SuplaDevice.addDS18B20Thermometer();
  SuplaDevice.addPressureSensor();
  SuplaDevice.addRelay(12);
   
  SuplaDevice.setStatusFuncImpl(&status_func);    //   ----------------------------- Status -----------------------------
 
  SuplaDevice.setName(Supla_name);    // Supla device name

  int LocationID = atoi(Location_id);
  SuplaDevice.begin(GUID,              // Global Unique Identifier 
                    mac,               // Ethernet MAC address
                    Supla_server,      // SUPLA server address
                    LocationID,        // Location ID 
                    Location_Pass);    // Location Password
 WiFi.mode(WIFI_STA);
}

void loop() {

  
  if (WiFi.status() == WL_CONNECTED) 
  {    
    httpServer.handleClient();
  }
  
  
    switch (s) {    //    ------------------------------------------------ Status ------------------------------------
   case 9:      // --------------------- DISCONNECTED  ----------------------      
      break;
        
   case 17:      // -----     STATUS_REGISTERED_AND_READY
         
      if (millis() > MPX_lasttime + MPX_mtbs)  {    //--------------MPX callback--------------------
          get_MPX();
          MPX_lasttime = millis();
          } 
        
       
    break;        
  }

  if ( digitalRead(zeroCal_PIN) == LOW )  {
    int val = 0;
      for(int i = 0; i < 10; i++) {
      val += analogRead(A0);
      delay(1);
      }
      val = val / 10;
      MPX_zero_offset = val; 
    Serial.print("Write MPX zero offset: ");
    Serial.println(MPX_zero_offset);
    delay (1000);
    EEPROM.write(1, MPX_zero_offset); 
    EEPROM.commit();
  }

  
  int C_W_read = digitalRead(TRIGGER_PIN);{  
   if (C_W_read != last_C_W_state) {       
     
     time_last_C_W_change = millis();
   }
   if ((millis() - time_last_C_W_change) > C_W_delay) {
     
     if (C_W_read != C_W_state) {     
       Serial.println("Triger sate changed");
       C_W_state = C_W_read;
       
       if (C_W_state == LOW) {
        ondemandwifiCallback () ;
       }
     }
    }
   last_C_W_state = C_W_read;            
   }

  if  (initialConfig)  {     
    ondemandwifiCallback () ;
    initialConfig = false; 
  }

  if (shouldSaveConfig) {
    Serial.println("saving config");
    DynamicJsonBuffer jsonBuffer;
    JsonObject& json = jsonBuffer.createObject();
    json["Supla_server"] = Supla_server;
    json["Location_id"] = Location_id;
    json["Location_Pass"] = Location_Pass;
    json["MPX_Compensation"] = MPX_Compensation;
    json["MPX_Tipo"] = MPX_Tipo;
    json["Supla_name"] = Supla_name;
    json["update_path"] = update_path;
    json["update_username"] = update_username;
    json["update_password"] = update_password;

    File configFile = SPIFFS.open("/config.json", "w");
    if (!configFile) {
      Serial.println("failed to open config file for writing");
    }
    json.prettyPrintTo(Serial);
    json.printTo(configFile);
    configFile.close();
    Serial.println("config saved");
    shouldSaveConfig = false;
    WiFi.mode(WIFI_STA);
    ticker.detach();
    digitalWrite(onboard_led, HIGH);
    ESP.restart();
      delay(5000);
  }
  
  if (WiFi.status() != WL_CONNECTED) 
  {
    ticker.attach(0.8, tick);
    WiFi_up();
  }
  if (WiFi.status() != WL_CONNECTED) { 
    ticker.attach(0.8, tick);
    WiFi_up();
    pr_wifi = true;
  }
  else if ((WiFi.status() == WL_CONNECTED)  && (pr_wifi)){
    Serial.println("");
    Serial.println("CONNECTED");
    Serial.print("local IP: ");
    Serial.println(WiFi.localIP());
    Serial.print("subnetMask: ");
    Serial.println(WiFi.subnetMask());
    Serial.print("gatewayIP: ");
    Serial.println(WiFi.gatewayIP());
    long rssi = WiFi.RSSI();
    Serial.print("Signal Strength (RSSI): ");
    Serial.print(rssi);
    Serial.println(" dBm");
    ticker.detach();
    digitalWrite(onboard_led, HIGH); 
    pr_wifi = false;
    MDNS.begin(host);
    httpUpdater.setup(&httpServer, update_path, update_username, update_password);
    httpServer.begin();
    MDNS.addService("http", "tcp", 81);
    Serial.printf("HTTPUpdateServer ready! Open http://%s.local:81%s in your browser and login with username '%s' and password '%s'\n", host, update_path, update_username, update_password);      
   }
  SuplaDevice.iterate();
}

// Supla.org ethernet layer
    int supla_arduino_tcp_read(void *buf, int count) {
        _supla_int_t size = client.available();
       
        if ( size > 0 ) {
            if ( size > count ) size = count;
            return client.read((uint8_t *)buf, size);
        };
    
        return -1;
    };
    
    int supla_arduino_tcp_write(void *buf, int count) {
        return client.write((const uint8_t *)buf, count);
    };
    
    bool supla_arduino_svr_connect(const char *server, int port) {
          return client.connect(server, 2015);
    }
    
    bool supla_arduino_svr_connected(void) {
          return client.connected();
    }
    
    void supla_arduino_svr_disconnect(void) {
         client.stop();
    }
    
    void supla_arduino_eth_setup(uint8_t mac[6], IPAddress *ip) {

       WiFi_up();
    }

SuplaDeviceCallbacks supla_arduino_get_callbacks(void) {
          SuplaDeviceCallbacks cb;
          
          cb.tcp_read = &supla_arduino_tcp_read;
          cb.tcp_write = &supla_arduino_tcp_write;
          cb.eth_setup = &supla_arduino_eth_setup;
          cb.svr_connected = &supla_arduino_svr_connected;
          cb.svr_connect = &supla_arduino_svr_connect;
          cb.svr_disconnect = &supla_arduino_svr_disconnect;
          cb.get_temperature = &get_temperature;  // --------------------------- New ------------------------
          //cb.get_temperature_and_humidity = NULL;
          //cb.get_temperature_and_humidity =&get_temperature_and_pressure;
          //cb.get_temperature = &get_temperature;
          cb.get_pressure = &get_pressure;
          cb.get_distance = &get_distance;
         // cb.get_temperature_and_pressure=&get_temperature_and_pressure;
          return cb;
}

void WiFi_up(){ // conect to wifi
 
  if (millis() > wifimilis)  {
  WiFi.begin();
  Serial.println("CONNECTING WIFI"); 
  }
  wifimilis = (millis() + wifi_checkDelay) ;
}
User avatar
byniom
Posts: 695
Joined: Sat Jan 07, 2017 1:17 pm
Been thanked: 1 time

Post

Ten czujnik pokazuje złe dane jeżeli zmieni się ciśnienie na zewnątrz.
elmaya
Posts: 1485
Joined: Wed Jun 27, 2018 5:48 pm
Location: El Saucejo - Sevilla

Post

byniom wrote: Thu Apr 09, 2020 4:07 pm Ten czujnik pokazuje złe dane jeżeli zmieni się ciśnienie na zewnątrz.
That's what the second air inlet is supposed to be for.
the external pressure does not affect the module that I have in operation.
User avatar
byniom
Posts: 695
Joined: Sat Jan 07, 2017 1:17 pm
Been thanked: 1 time

Post

Czyli mam zły czujnik bo mam z jednym wejściem :(

Return to “Pomysły i koncepcje”