Are these BME280 or BMP280

I just recieved 5 BME280 sensors for aliexpress but they look identicle to my BMP280 that i got ripped on my last purchase of supposed BME280. I just put them on a esp32c3-devkit-02 with this .YAML

i2c:
  sda: GPIO0
  scl: GPIO1
  scan: True
  id: i2c_bus
  frequency: 10000Hz

sensor:
  - platform: bme280_i2c
    temperature:
      name: "BME280 Temperature"
      oversampling: 16x
    pressure:
      name: "BME280 Pressure"
    humidity:
      name: "BME280 Humidity"
    address: 0x76
    update_interval: 60s

but i am gettin this error in my logs.

[03:48:12][C][api:142]:   Using noise encryption: YES
[03:48:30][VV][scheduler:226]: Running interval 'update' with interval=60000 last_execution=4294939592 (now=32296)
[03:48:30][V][bme280.sensor:210]: Sending conversion request...
[03:48:30][VV][i2c.arduino:141]: 0x76 TX F4B5
[03:48:30][VV][i2c.arduino:167]: TX failed: not acknowledged
[03:48:47][VV][api.service:558]: on_ping_request: PingRequest {}
[03:48:47][VV][api.service:043]: send_ping_response: PingResponse {}
[03:48:57][VV][scheduler:226]: Running interval '' with interval=60000 last_execution=4294965972 (now=58676)
[03:49:12][VV][api.connection:132]: Sending keepalive PING...
[03:49:12][VV][api.service:037]: send_ping_request: PingRequest {}
[03:49:12][VV][api.service:567]: on_ping_response: PingResponse {}


Can anyone help me out with determining if these are BME280 or not, and if they are what is wrong with my .YAML?
Thanks

This might help.

Try leaving out this line.

i checked out Mahko_Mahko link but i dont know what i have that will allow me to see the text on the chip. i did try with a BMP280 config which did not work whereas i am linking to this sensor just not communicating with it.
i put the frequency in there just trying something which did not work

1 Like

the text on the board is
HW-611
E/P
280

In one of the comments in Mahko_Mahko’s link you can find a link to a picture that shows both sensors. Yours is clearly a BME (square).
Link

I always set scan: False because ‘True’ made my BME280’s fail.

1 Like

VIMVa Link doesnt work but i will try the true false right now

False did not work this is my logs.

INFO Successful handshake with grow-tent-two @ 192.168.2.100 in 0.083s
[04:56:29][I][app:102]: ESPHome version 2024.2.2 compiled on Mar 14 2024, 04:55:53
[04:56:29][C][wifi:577]: WiFi:
[04:56:29][C][wifi:409]:   Local MAC: 58:CF:79:DA:3C:80
[04:56:29][C][wifi:414]:   SSID: [redacted]
[04:56:29][C][wifi:415]:   IP Address: 192.168.2.100
[04:56:29][C][wifi:417]:   BSSID: [redacted]
[04:56:29][C][wifi:418]:   Hostname: 'grow-tent-two'
[04:56:29][C][wifi:420]:   Signal strength: -60 dB ▂▄▆█
[04:56:29][V][wifi:422]:   Priority: 0.0
[04:56:29][C][wifi:424]:   Channel: 6
[04:56:29][C][wifi:425]:   Subnet: 255.255.255.0
[04:56:29][C][wifi:426]:   Gateway: 192.168.2.1
[04:56:29][C][wifi:427]:   DNS1: 192.168.2.1
[04:56:29][C][wifi:428]:   DNS2: 142.166.166.166
[04:56:29][VV][api.service:656]: on_subscribe_homeassistant_services_request: SubscribeHomeassistantServicesRequest {}
[04:56:29][VV][api.service:140]: send_sensor_state_response: SensorStateResponse {
  key: 1168764344
  state: nan
  missing_state: YES
}
[04:56:29][C][logger:447]: Logger:
[04:56:29][C][logger:448]:   Level: VERY_VERBOSE
[04:56:29][C][logger:449]:   Log Baud Rate: 115200
[04:56:29][C][logger:451]:   Hardware UART: USB_SERIAL_JTAG
[04:56:29][VV][api.service:683]: on_subscribe_home_assistant_states_request: SubscribeHomeAssistantStatesRequest {}
[04:56:29][VV][api.service:140]: send_sensor_state_response: SensorStateResponse {
  key: 849378863
  state: nan
  missing_state: YES
}
[04:56:29][C][i2c.arduino:053]: I2C Bus:
[04:56:29][C][i2c.arduino:054]:   SDA Pin: GPIO0
[04:56:29][C][i2c.arduino:055]:   SCL Pin: GPIO1
[04:56:29][C][i2c.arduino:056]:   Frequency: 50000 Hz
[04:56:29][C][i2c.arduino:059]:   Recovery: bus successfully recovered
[04:56:29][VV][api.service:140]: send_sensor_state_response: SensorStateResponse {
  key: 4217600373
  state: nan
  missing_state: YES
}
[04:56:29][C][bme280_i2c.sensor:025]:   Address: 0x76
[04:56:29][C][bme280.sensor:182]: BME280:
[04:56:29][C][bme280.sensor:194]:   IIR Filter: OFF
[04:56:29][C][bme280.sensor:195]:   Update Interval: 60.0s
[04:56:29][C][bme280.sensor:197]:   Temperature 'BME280 Temperature'
[04:56:29][C][bme280.sensor:197]:     Device Class: 'temperature'
[04:56:29][C][bme280.sensor:197]:     State Class: 'measurement'
[04:56:29][C][bme280.sensor:197]:     Unit of Measurement: '°C'
[04:56:29][C][bme280.sensor:197]:     Accuracy Decimals: 1
[04:56:29][C][bme280.sensor:198]:     Oversampling: 16x
[04:56:29][C][bme280.sensor:199]:   Pressure 'BME280 Pressure'
[04:56:29][C][bme280.sensor:199]:     Device Class: 'pressure'
[04:56:29][C][bme280.sensor:199]:     State Class: 'measurement'
[04:56:29][C][bme280.sensor:199]:     Unit of Measurement: 'hPa'
[04:56:29][C][bme280.sensor:199]:     Accuracy Decimals: 1
[04:56:29][C][bme280.sensor:200]:     Oversampling: 16x
[04:56:29][C][bme280.sensor:201]:   Humidity 'BME280 Humidity'
[04:56:29][C][bme280.sensor:201]:     Device Class: 'humidity'
[04:56:29][C][bme280.sensor:201]:     State Class: 'measurement'
[04:56:29][C][bme280.sensor:201]:     Unit of Measurement: '%'
[04:56:29][C][bme280.sensor:201]:     Accuracy Decimals: 1
[04:56:29][C][bme280.sensor:202]:     Oversampling: 16x
[04:56:29][C][captive_portal:088]: Captive Portal:
[04:56:29][C][mdns:115]: mDNS:
[04:56:29][C][mdns:116]:   Hostname: grow-tent-two
[04:56:29][V][mdns:117]:   Services:
[04:56:29][V][mdns:119]:   - _esphomelib, _tcp, 6053
[04:56:29][V][mdns:121]:     TXT: version = 2024.2.2
[04:56:29][V][mdns:121]:     TXT: mac = 58cf79da3c80
[04:56:29][V][mdns:121]:     TXT: platform = ESP32
[04:56:29][V][mdns:121]:     TXT: board = esp32-c3-devkitm-1
[04:56:29][V][mdns:121]:     TXT: network = wifi
[04:56:29][V][mdns:121]:     TXT: api_encryption = Noise_NNpsk0_25519_ChaChaPoly_SHA256
[04:56:29][C][ota:096]: Over-The-Air Updates:
[04:56:29][C][ota:097]:   Address: grow-tent-two.local:3232
[04:56:29][C][ota:100]:   Using Password.
[04:56:29][C][ota:103]:   OTA version: 2.
[04:56:29][C][api:139]: API Server:
[04:56:29][C][api:140]:   Address: grow-tent-two.local:6053
[04:56:29][C][api:142]:   Using noise encryption: YES
[04:56:54][VV][scheduler:226]: Running interval 'update' with interval=60000 last_execution=4294941069 (now=33773)
[04:56:54][V][bme280.sensor:210]: Sending conversion request...
[04:56:54][VV][i2c.arduino:141]: 0x76 TX F4B5
[04:56:54][VV][i2c.arduino:167]: TX failed: not acknowledged
[04:57:09][VV][api.service:558]: on_ping_request: PingRequest {}
[04:57:09][VV][api.service:043]: send_ping_response: PingResponse {}
[04:57:12][VV][scheduler:226]: Running interval '' with interval=60000 last_execution=4294959044 (now=51748)
[04:57:29][VV][api.connection:132]: Sending keepalive PING...
[04:57:29][VV][api.service:037]: send_ping_request: PingRequest {}
[04:57:29][VV][api.service:567]: on_ping_response: PingResponse {}

Here’s the picture behind the link.

Ahhh!!! I SEEE MAYTEE. thanks u are corect my BMP are rectangle where the new ones are square exactly like the pic. do u think my pins are wrong i am confused as to why they dont work???

This works for me. Don’t see too much difference with your code.
(Filters as required to calibrate. ‘Platform’ depends on ESPHome version: I am on an older one).

i2c:
   sda: 4
   scl: 5
   scan: False
 
 sensor:
   - platform: bme280 #I should modify this into bme280_i2c when upgrading to latest Esphome update
     id: bme280_outside
     temperature:
       name: "Outside Temperature"
       filters:
         - offset: 0.9
     pressure:
       name: "Outside Pressure"
       filters:
         - offset: 1.8
     humidity:
       name: "Outside Humidity"
     address: 0x76
     update_interval: 15min

Try to change to 0x77 and see if it will work

Booya Got it working!! i added your filter changed to a different board as the first 1 was broke. i then added another one so i now have 2 working. 1 more question about having around 4 of them do i have to use a single esp32c3-devkit-02 for 2 BME sensors because of the i2c or how many can i put on 1 esp32 ??

i2c:
  sda: GPIO0
  scl: GPIO1
  scan: True
  id: i2c_bus

sensor:
  - platform: bme280_i2c
    id: bme280_canopy
    temperature:
      name: "BME280 Canopy Temperature"
      oversampling: 16x
      filters:
        - offset: 0.9
    pressure:
      name: "BME280 Canopy Pressure"
      filters:
        - offset: 2.9
    humidity:
      name: "BME280 Canopy Humidity"
    address: 0x76
    update_interval: 60s

  - platform: bme280_i2c
    id: bme280_flower
    temperature:
      name: "BME280 Flower Temperature"
      oversampling: 16x
      filters:
        - offset: 0.9
    pressure:
      name: "BME280 Flower Pressure"
      filters:
        - offset: 2.9
    humidity:
      name: "BME280 Flower Humidity"
    address: 0x77
    update_interval: 60s

I²C Bus — ESPHome
But I think you have to change address manually on each BME280 devices
Multiple I2C BME280 sensor challenge - ESPHome - Home Assistant Community (home-assistant.io)

yea manual change and cost is the issue as 1 of those cost almost as much as a esp32. THANKS for everything cheers!