Problem configuring STS40 Temperature sensor using codes provided by Sensirion

I am trying to configure the STS4x temperature sensor by Sensirion on I2C on a nRF5340DK, I have setup my the coding exactly how sensirion suggested except few changes such as I2C address. Here is the github link : https://github.com/Sensirion/embedded-i2c-sts4x.git 

In the github it is suggested that to only edit the sensirion_i2c_hal.c file and sensirion already gave an example of it in the github. However, i have changed the header files that suits current zephyr. Below is the sensirion_i2c_hal.c , in here i used I2C_1 instead of I2C_0 already given.

 

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <zephyr/drivers/i2c.h>
#include <zephyr/kernel.h> // For k_usleep and other kernel functions
#include <zephyr/device.h>
#include <zephyr/devicetree.h>
#include "sensirion_common.h"
#include "sensirion_config.h"
#include "sensirion_i2c_hal.h"
/* I2C device. */
static const struct device *i2c_dev;
/**
* Select the current i2c bus by index.
* All following i2c operations will be directed at that bus.
*
* @param bus_idx Bus index to select
* @returns 0 on success, an error code otherwise
*/
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Here is my overlay file 

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
&pinctrl {
i2c1_default_alt: i2c1_default_alt {
group2 {
psels = <NRF_PSEL(TWIM_SDA, 1, 02)>, <NRF_PSEL(TWIM_SCL, 1, 03)>;
bias-pull-up;
};
};
i2c1_default_sleep: i2c1_default_sleep {
group3 {
psels = <NRF_PSEL(TWIM_SDA, 1, 02)>, <NRF_PSEL(TWIM_SCL, 1, 03)>;
low-power-enable;
};
};
};
&i2c1 {
status = "okay";
compatible = "nordic,nrf-twim";
pinctrl-0 = <&i2c1_default_alt>;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

my prj.conf file 

Fullscreen
1
2
3
4
5
6
7
8
9
CONFIG_STDOUT_CONSOLE=y
CONFIG_I2C=y
CONFIG_SENSOR=y
CONFIG_CBPRINTF_FP_SUPPORT=y
# I2C
CONFIG_NRFX_TWIM1=y
# Rebooot
CONFIG_REBOOT=n
CONFIG_RESET_ON_FATAL_ERROR=n
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

And main file 

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h> // printf
#include "sensirion_common.h"
#include "sensirion_i2c_hal.h"
#include "sts4x_i2c.h"
/*
* TO USE CONSOLE OUTPUT (PRINTF) YOU MAY NEED TO ADAPT THE INCLUDE ABOVE OR
* DEFINE IT ACCORDING TO YOUR PLATFORM:
* #define printf(...)
*/
int main(void) {
int16_t error = 0;
/**
* select the proper i2c address for your sensor (defaults to 0x46)
*
* STS40-CD1B: ADDR_STS4X (I2C address: 0x46)
* STS40-AD1B: ADDR_STS4X_ALT (I2C address: 0x44)
* STS40-BD1B: ADDR_STS4X_ALT2 (I2C address: 0x45)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

I do not get an output only the booting screen,

*** Booting nRF Connect SDK v3.5.99-ncs1-1 ***

My question is how can i setup my sensor and is there any obvious mistakes i have done in the setting up i2c device? because the code could not setup the i2c device properly.

This is the project file folder : 2084.sts4x.zip