Skocz do zawartości
Kajurt

ESP32 i problem z uruchomieniem czujnika BME280

Pomocna odpowiedź

Napisano (edytowany)

Cześć!

Od paru dni męczę się z odpaleniem czujnika BME/BMP280 - o takiego dokładnie:

image.thumb.png.2bdb604a6bfa0af5ad36c0ec1cc69981.png

W międzyczasie przebrnąłem już przez, wydaje mi się, wszystkie czeluści internetu, ale może Wasze doświadczenie jeszcze mi pomoże. Generalnie wszystko starałem się konfigurować i robić analogicznie do tutorialu znajdującego się pod tym linkiem: https://randomnerdtutorials.com/esp32-bme280-arduino-ide-pressure-temperature-humidity/?fbclid=IwAR14vHOzVlIAiPvsUOxV-efDpnfCjG6Ms7q_sTuLk0ypwM-p3ousZU1yn_Y

Sprawdzałem poprawność podłączeń, korzystałem z najnowszych bibliotek adafruit, później próbowałem korzystać z tych przedstawionych w tutorialu (zmieniając adres I2C w Adafruit_BME280.h). Zaczynam podejrzewać, że może czujnik jest w jakiś sposób uszkodzony. Może macie jakieś inne sposoby, żeby to sprawdzić? Bo jednak wolałbym się nie nadwrężać dodatkowymi kosztami. Również sugerowałem się filmikiem - 

niestety komentowanie (w moim przypadku 

_wire -> begin();

w Adafruit_BME280.cpp i dopisywanie kodu w Arduino IDE również nie pomogło.)

Z góry bardzo Wam dziękuję za wszelkie rady 😄

Edit. żeby było prościej kod z którego korzystam:

/*********
  Complete project details at http://randomnerdtutorials.com  
*********/

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>

/*#include <SPI.h>
#define BME_SCK 18
#define BME_MISO 19
#define BME_MOSI 23
#define BME_CS 5*/

#define SEALEVELPRESSURE_HPA (1013.25)

Adafruit_BME280 bme; // I2C
//Adafruit_BME280 bme(BME_CS); // hardware SPI
//Adafruit_BME280 bme(BME_CS, BME_MOSI, BME_MISO, BME_SCK); // software SPI

unsigned long delayTime;

void setup() {
  Serial.begin(9600);
  Serial.println(F("BME280 test"));

  bool status;

  // default settings
  // (you can also pass in a Wire library object like &Wire2)
  status = bme.begin(0x76);  
  if (!status) {
    Serial.println("Could not find a valid BME280 sensor, check wiring!");
    while (1);
  }

  Serial.println("-- Default Test --");
  delayTime = 1000;

  Serial.println();
}


void loop() { 
  printValues();
  delay(delayTime);
}

void printValues() {
  Serial.print("Temperature = ");
  Serial.print(bme.readTemperature());
  Serial.println(" *C");
  
  // Convert temperature to Fahrenheit
  /*Serial.print("Temperature = ");
  Serial.print(1.8 * bme.readTemperature() + 32);
  Serial.println(" *F");*/
  
  Serial.print("Pressure = ");
  Serial.print(bme.readPressure() / 100.0F);
  Serial.println(" hPa");

  Serial.print("Approx. Altitude = ");
  Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
  Serial.println(" m");

  Serial.print("Humidity = ");
  Serial.print(bme.readHumidity());
  Serial.println(" %");

  Serial.println();
}

I na monitorze dostaje błąd z setupu, "Cold not find a valid BME280 sensor, check wiring!". Przez chwilę myślałem, że to może coś z lokalizacją bibliotek i obiekt "bme" się w ogóle nie tworzy, ale samo IDE biblioteki wyświetla...

Edit 2, further information

I2C scanner daje mi adres 0x76 - czy w ogóle to, że znajduje jakieś urządzenie nie jest dowodem, że czujnik nie jest zepsuty? czy to leży po stronie ESP32?

ESP32, z którego korzystam piny do I2C SDA na D21, i SCL na D22. 

 

Edytowano przez Kajurt

Udostępnij ten post


Link to post
Share on other sites

Na początek ustal, czy kupiłeś wersję 5V czy 3.3V, wersja 5V nie chciała mi działać zasilana z 3.3V. A potem przetestuj to po prostu w UNO 5V (jeśli jest wersja 5V). 

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Napisz odpowiedź...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...