Arduino uno (atmega328p-PU) pin change interrupts not woking

Hi everyone, I am trying to work with Digital temperature sensor (dht11) + RIOT and use Arduino-uno (Atmega328p-PU) as a development baord. I follow the RIOT/cpu/atmega328p/include/atmega_pcint.h and found Digital pin number 2 in arduino-uno is equivalent to GPIO_PIN(PORT_D, 2). But when I try to read data, it does not work and DHT_OK is not satisfied. Below you can find my code for dht11: I think the problem is related to dht_type. in dht_parameters file there is no definition for dht_type.

//////////////////////////////////////////////////*********************************/////////////////////////// #include <stdio.h>

#include “fmt.h”

#include “dht.h” #include “dht_params.h”

#include “periph/pm.h”

#include “periph/rtc.h”

int main(void) { printf(“RIOT temperature_humidity application\n” “DHT temperature and humidity sensor test application\n” “using RIOT DHT peripheral driver\n” “DHT sensor type %d\n”, DHT11);

/* Fix port parameter for digital sensor */
dht_params_t my_params; = GPIO_PIN(PORT_C, 2);
my_params.type = DHT11;
my_params.in_mode = DHT_PARAM_PULL;

/* Initialize digital sensor */
dht_t dev;
if (dht_init(&dev, &my_params) == DHT_OK) {
    printf("DHT sensor connected\n");
else {
    printf("Failed to connect to DHT sensor\n");
    return 1;

/* Retrieve sensor reading */
int16_t temp, hum;
if (dht_read(&dev, &temp, &hum) != DHT_OK) {
    printf("Error reading values\n");
char temp_s[10];
size_t n = fmt_s16_dfp(temp_s, temp, -1);
temp_s[n] = '\0';
char hum_s[10];
n = fmt_s16_dfp(hum_s, hum, -1);
hum_s[n] = '\0';
printf("DHT values - temp: %s°C - relative humidity: %s%%\n",
       temp_s, hum_s);
return 0;


I attach my setup as well as Arduino-uno datasheet. I would be gratefull if someone can help me