BME280 with values zero

I am trying to use Hookup a BME280 Sensor to Arduino using I2C. I am using the Adafruit BME 280 breakoutboard. The controller is the Uno R3. I have done a i2c scan and am able to get an address of 0x77 or 0x76 depending on how I wire the BME280 to the R3. I have wired it according to the cactus.io hookup description. cactus.io bme280 hookup No matter what I do, I get the following readings that do not change:

22:05:47.568 -> Bosch BME280 Pressure - Humidity - Temp Sensor | cactus.io
22:05:47.638 -> Pressure Humdity Temp tTemp
22:05:47.671 -> -0.00 mb 0.00 % 0.00 *C 32.00 *F
22:05:49.651 -> -0.00 mb 0.00 % 0.00 *C 32.00 *F
22:05:51.663 -> -0.00 mb 0.00 % 0.00 *C 32.00 *F
22:05:53.639 -> -0.00 mb 0.00 % 0.00 *C 32.00 *F
22:05:55.652 -> -0.00 mb 0.00 % 0.00 *C 32.00 *F

I also have a second sensor. It is a BME/BMP280. It gives me the same results. (or very similar)

22:09:53.006 -> 1000.02 mb 0.00 % 0.01 *C 32.02 *F
22:09:54.983 -> 1000.02 mb 0.00 % 0.01 *C 32.02 *F
22:09:56.994 -> 1000.02 mb 0.00 % 0.01 *C 32.02 *F
22:09:59.014 -> 1000.02 mb 0.00 % 0.01 *C 32.02 *F

Here is the sketch that I have been using:

#include <Wire.h>
#include "cactus_io_BME280_I2C.h"

// Create BME280 object
BME280_I2C bme; // I2C using address 0x77
// or BME280_I2C bme(0x76); // I2C using address 0x76

void setup() {

Serial.begin(9600);
Serial.println("Bosch BME280 Pressure - Humidity - Temp Sensor | cactus.io");

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

bme.setTempCal(-1);// Temp was reading high so subtract 1 degree

Serial.println("Pressure\tHumdity\t\tTemp\ttTemp");
}

void loop() {

bme.readSensor();

Serial.print(bme.getPressure_MB()); Serial.print(" mb\t"); // Pressure in millibars
Serial.print(bme.getHumidity()); Serial.print(" %\t\t");
Serial.print(bme.getTemperature_C()); Serial.print(" *C\t");
Serial.print(bme.getTemperature_F()); Serial.println(" *F");

// Add a 2 second delay.
delay(2000); //just here to slow down the output.
}

I am very new to this and hope that I required the necessary information to have my question answered. Will be glad to supply more information if required and I am able.

Does anyone have any suggestions? Thanks for reading!
Andy

I have wired it according to the cactus.io hookup description

That link describes two different wirings. Which one did you choose?

Please edit your post and insert code tags!

Have you tried the Adafruit library for the BME280. I don't know the library you used. Although a quick overview didn't show any apparent error in it, a test with the Adafruit library may show if you have a faulty hardware.

Hi Andrew_Mogg,

Here is the 'official' BME280 test sketch. You can use that as an independent test of your device

/***************************************************************************
  This is a library for the BME280 humidity, temperature & pressure sensor
  Designed specifically to work with the Adafruit BME280 Breakout
  ----> http://www.adafruit.com/products/2650
  These sensors use I2C or SPI to communicate, 2 or 4 pins are required
  to interface. The device's I2C address is either 0x76 or 0x77.
  Adafruit invests time and resources providing this open source code,
  please support Adafruit andopen-source hardware by purchasing products
  from Adafruit!
  Written by Limor Fried & Kevin Townsend for Adafruit Industries.
  BSD license, all text above must be included in any redistribution
 ***************************************************************************/

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

#define BME_SCK 13
#define BME_MISO 12
#define BME_MOSI 11
#define BME_CS 10

#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();  
    if (!status) {
        Serial.println("Could not find a valid BME280 sensor, check wiring!");
        while (1);
    }
    
    Serial.println("-- Default Test --");
    delayTime = 1000;

    Serial.println();

    delay(100); // let sensor boot up
}


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


void printValues() {
    Serial.print("Temperature = ");
    Serial.print(bme.readTemperature());
    Serial.println(" *C");

    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();
}