Implementing Matter weather station using nrf52840DK and Bosch BME280 sensor

Hi,

I am using nrf52840DK and trying to implement a weather station application using thingy53 application example.
I am using a Bosch BME280 sensor and could read the data from the using I2C.

Now I was integrating it into matter using same DK and BME280 sensor I have done all required changes for my application and tried to build but I got Issue with the RAM.

While build it says RAM overflow by some bytes as i have attached the image below I anyone faced this issue it will be helpful for my implementation.

I want to know do I need add some thing in config file or how can i build this in to flash.

Thanks in advance

Parents Reply
  • Hi Marte,

    I have tried using prj_release.conf and the i could build the code and also flashed it into the DK but i could see any error msg or the board doesn't give any data out.

    previously I could get the data from the sensor from the dk.

    but once i have tried to implement it in matter the DK doesn't show to connet via BLE.

    The only output msg i get in the serial monitor is booting zephyr version.

    I don't see any LED either on the board after flashing the code.

    is there anything I am missing.

    Thanks.

Children
  • Hi,

    The release config turns off logging, so it makes sense that you do not see any serial logging from the device. However, you should still be able to connect to the device over Bluetooth and the LEDs should still be working. You can try using prj.conf and instead reduce the footprint according to the Memory footprint optimization guide.

    Best regards,
    Marte

  • Hi Marte,

    I have tried using prj.conf and tried to optimise the footprint according to the guide you provided,.

    Still I could not connect using bluetooth.

    But when i tried flashing different application from matter, I could see my device as a bluetooth device I am unable to connect to it.

    I see LED glowing with very low intensity but unable to connect to the device.

    Is there anything that I could change to make bluetooth enable.

    Thanks and Regards

    Rutwik

  • Hi Rutwik,

    rutwik said:
    Still I could not connect using bluetooth.

    Do you see the device advertise?

    Do you have application logs from the device that you can share?

    Best regards,
    Marte

  • Hi marte,

    I don't see the device advertising.

    I have attached some of the files from build and what i see in the serial monitor.

    I could see everything build and flashing in the board but I don't see the device advertising or any thing on the serial terminal.

    Thanks & regards

    Rutwik

  • Hi Marte,

    # Enable CHIP
    CONFIG_CHIP=y
    CONFIG_CHIP_ENABLE_PAIRING_AUTOSTART=y
    CONFIG_CHIP_PROJECT_CONFIG="src/chip_project_config.h"
    # 32781 == 0x800D (matter example of Temperature measurement device as NCS Weather Station)
    CONFIG_CHIP_DEVICE_PRODUCT_ID=32781
    CONFIG_STD_CPP17=y

    # Enable Bluetooth Low Energy
    CONFIG_BT_DEVICE_NAME="MatterWeather"

    # Add support for LEDs, buttons and buzzer
    CONFIG_DK_LIBRARY=y
    CONFIG_PWM=y

    # Configure Thingy:53 sensors
    CONFIG_I2C=y
    CONFIG_SENSOR=y
    CONFIG_BME280=y
    CONFIG_ADC=y

    # Suspend devices when the CPU goes into sleep
    CONFIG_PM_DEVICE=y

    # Other settings
    CONFIG_IEEE802154_NRF5_RX_STACK_SIZE=8192
    CONFIG_THREAD_NAME=y
    CONFIG_MPU_STACK_GUARD=y
    CONFIG_CHIP_LIB_SHELL=y

    # Average Thingy:53 current consumption
    CONFIG_AVERAGE_CURRENT_CONSUMPTION=10000

    # Enable DFU over Bluetooth LE SMP
    CONFIG_CHIP_DFU_OVER_BT_SMP=y

    # Increase system workqueue size, as SMP is processed within it
    CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096

    # 0x0302 (Temp. sensor)
    CONFIG_CHIP_DEVICE_TYPE=770
    CONFIG_BT_RX_STACK_SIZE=1500

    # Configure UART logging and shell
    CONFIG_LOG=y
    CONFIG_LOG_MODE_DEFERRED=y
    CONFIG_LOG_PROCESS_THREAD_STACK_SIZE=1024
    CONFIG_LOG_BUFFER_SIZE=8192
    CONFIG_LOG_FUNC_NAME_PREFIX_DBG=n
    CONFIG_MATTER_LOG_LEVEL_DBG=y
    CONFIG_SHELL=y
    CONFIG_SHELL_LOG_BACKEND=y

    # Configure USB CDC ACM
    CONFIG_USB_DEVICE_INITIALIZE_AT_BOOT=y
    CONFIG_USB_DEVICE_PRODUCT="NRF52840DK Matter Weather"
    CONFIG_USB_DEVICE_PID=0x530D
    CONFIG_UART_LINE_CTRL=y
    CONFIG_SHELL_BACKEND_SERIAL_INIT_PRIORITY=51

    # Use minimal C library instead of the Picolib
    CONFIG_MINIMAL_LIBC=y

    this is the prj.conf file that I am using to build.

    And I dont see any thing on the serial monitor I am attaching what I am able to see through Com.

    I: Starting bootlader

    E: failed to openfalsh area ID 1

Related