Closed cyberman54 closed 5 years ago
fixed in v1.7.03 (currently in development-bme680-2 branch)
good evening, I know that you have closed the trend, it is days that I have read everything, but I still have this problem, I have the ttgo t3 v 2.1 with display and a sensor bme 680. I have tried the various versions but I always have the probklema that together they don't work.
"Starting I2C bus scan ... 23: 06: 23.191> [I] [i2c.cpp: 78] i2c_scan (): 0 I2C device (s) found 23: 06: 23.494> [E] [display.cpp: 70] dp_setup (): FAILURE in src / display.cpp: 70 23: 06: 23.494> /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/tasks.c:4826 (xTaskNotify) - assert failed! " can you please give me some advice ??? thank you
@mcapani Looks like a non working i2c bus. Please show your platformio.ini
and paxcounter.conf
and double check your pin mappings for SDA/SCL.
; PlatformIO Project Configuration File ; NOTE: PlatformIO v5 is needed! ; ; Please visit documentation for the other options and examples ; http://docs.platformio.org/page/projectconf.html
; ---> SELECT THE TARGET PLATFORM HERE! <--- [board] ;halfile = generic.h ;halfile = ebox.h ;halfile = eboxtube.h ;halfile = ecopower.h ;halfile = heltec.h ;halfile = heltecv2.h ;halfile = heltecv21.h ;halfile = ttgov1.h ;halfile = ttgov2.h ;halfile = ttgov21old.h halfile = ttgov21new.h ;halfile = ttgofox.h ;halfile = ttgobeam.h ;halfile = ttgobeam10.h ;halfile = ttgotdisplay.h ;halfile = ttgotwristband.h ;halfile = fipy.h ;halfile = lopy.h ;halfile = lopy4.h ;halfile = lolin32litelora.h ;halfile = lolin32lora.h ;halfile = lolin32lite.h ;halfile = wemos32oled.h ;halfile = wemos32matrix.h ;halfile = octopus32.h ;halfile = tinypico.h ;halfile = tinypicomatrix.h ;halfile = m5core.h ;halfile = m5fire.h ;halfile = olimexpoeiso.h
[platformio] ; upload firmware to board with usb cable default_envs = usb ; upload firmware to a jfrog bintray repository ;default_envs = ota ; use latest versions of libraries ;default_envs = dev description = Paxcounter is a device for metering passenger flows in realtime. It counts how many mobile devices are around.
[common] ; for release_version use max. 10 chars total, use any decimal format like "a.b.c" release_version = 2.4.0 ; DEBUG LEVEL: For production run set to 0, otherwise device will leak RAM while running! ; 0=None, 1=Error, 2=Warn, 3=Info, 4=Debug, 5=Verbose debug_level = 3 extra_scripts = pre:build.py otakeyfile = ota.conf lorakeyfile = loraconf.h lmicconfigfile = lmic_config.h platform_espressif32 = espressif32@3.1.0 monitor_speed = 115200 upload_speed = 115200 ; set by build.py and taken from hal file display_library = ; set by build.py and taken from hal file lib_deps_lora = mcci-catena/MCCI LoRaWAN LMIC library @ ^3.3.0 lib_deps_display = bitbank2/OneBitDisplay @ 1.9.0 bitbank2/BitBang_I2C @ ^2.1.3 ricmoo/QRCode @ ^0.0.1 bodmer/TFT_eSPI @ ^2.3.51 lib_deps_ledmatrix = seeed-studio/Ultrathin_LED_Matrix @ ^1.0.0 lib_deps_rgbled = roboticsbrno/SmartLeds @ ^1.2.1 lib_deps_gps = mikalhart/TinyGPSPlus @ ^1.0.2 lib_deps_sensors = adafruit/Adafruit Unified Sensor @ ^1.1.4 adafruit/Adafruit BME280 Library @ ^2.1.1 adafruit/Adafruit BMP085 Library @ ^1.1.0 boschsensortec/BSEC Software Library @ 1.6.1480 https://github.com/ricki-z/SDS011.git lib_deps_basic = https://github.com/SukkoPera/Arduino-Rokkit-Hash.git bblanchon/ArduinoJson @ ^6 jchristensen/Timezone @ ^1.2.4 makuna/RTC @ ^2.3.5 spacehuhn/SimpleButton lewisxhe/AXP202X_Library @ ^1.1.3 geeksville/esp32-micro-sdcard @ ^0.1.1 256dpi/MQTT @ ^2.4.7 lib_deps_all = ${common.lib_deps_basic} ${common.lib_deps_lora} ${common.lib_deps_display} ${common.lib_deps_rgbled} ${common.lib_deps_gps} ${common.lib_deps_sensors} ${common.lib_deps_ledmatrix} build_flags_basic = -include "src/hal/${board.halfile}" -include "src/paxcounter.conf" '-DCORE_DEBUG_LEVEL=${common.debug_level}' '-DLOG_LOCAL_LEVEL=${common.debug_level}' '-DPROGVERSION="${common.release_version}"' '-Wno-unknown-pragmas' '-Wno-unused-variable' build_flags_sensors = -Llib/Bosch-BSEC/src/esp32/ -lalgobsec build_flags_all = ${common.build_flags_basic} ${common.build_flags_sensors} -mfix-esp32-psram-cache-issue
[env] lib_ldf_mode = deep ; #632 Fixes compiler error with OneBitDisplay library framework = arduino board = esp32dev board_build.partitions = min_spiffs.csv upload_speed = ${common.upload_speed} ;upload_port = COM3 platform = ${common.platform_espressif32} lib_deps = ${common.lib_deps_all} build_flags = ${common.build_flags_all} upload_protocol = ${common.upload_protocol} extra_scripts = ${common.extra_scripts} monitor_speed = ${common.monitor_speed} monitor_filters = time, esp32_exception_decoder, default
[env:ota] upload_protocol = custom
[env:usb] upload_protocol = esptool
[env:dev] upload_protocol = esptool build_type = debug platform = https://github.com/platformio/platform-espressif32.git#develop
paxcounter.conf // clang-format off
// ----- Paxcounter user config file ------ // // --> adapt to your needs and use case <-- // // Note: After editing, before "build", use "clean" button in PlatformIO!
// Device options
// Payload send cycle and encoding
// MAC sniffing parameters
// BLE scan parameters
// Corona Exposure Notification Service(ENS) counter
// set to 1 if you want to enable this function [default=0]
// for additional sensors (added by some user)
/ Note: guide for setting bluetooth parameters
// WiFi scan parameters
// LoRa payload default parameters
// Hardware settings
// Settings for BME680 environmental sensor
// OTA settings
// settings for syncing time of node with a time source (network / gps / rtc / timeserver)
// time zone, see https://github.com/JChristensen/Timezone/blob/master/examples/WorldClock/WorldClock.ino
// Ports on which the device sends and listenes on LoRaWAN and SPI
// Cayenne LPP Ports, see https://community.mydevices.com/t/cayenne-lpp-2-0/7510
// MQTT settings, only needed if MQTT is used (#define HAS_MQTT in board hal file)
//#define MQTT_CLIENTNAME "my_paxcounter" // generated by default
@mcapani You selected ttgov21new.h board hal file. Are you sure you have this board? Please show a photo of your board to verify version is matching the selected hal file. Please show your modifications of this file for BME680 (you need to enable the external sensor in your board's hal file, see example in generic.h).
Which pins did you use to connect the BME680? Note: supply voltage of BME680 is 1,7 - 3,8 Volt. If you connected it to 5 Volt, you may have damaged it.
I had the doubt .... in some guides I read that the module I purchased (photo1) can also be powered at 5v because the board adjusts the voltage automatically. in any case I connected 2 photos as shown in the attached diagram. 21/22 5v gdn
Please show your hal file. Did you add/edit the BME680 settings in hal file?
PS: on your photo it looks like the black wire is not connected to GND, but to 3V3?
now works!!!! I'm a bit ashamed :) you have hit the problem !! great i did a lot of tests and it was trivially a 3.3V pin soldering error. I apologize for having lost this time, probably yesterday I was "melted". Thanks again. now I do the other tests and maybe we will talk about something else ..... ps it also works to detect immune apps (covid-italia) thanks
If you need support, please use discussion tab next time, not issue. Thx.
ok thanks
BME680 sensor and OLED display both use i2c communication from separate parallel tasks. Since esp32 i2c hal is not thread safe, we need a mutex solution for this, otherwise the i2c bus driver crashes.