Hello,
I am working on trying to get the Azure IoT Hub Demo working on the nRF54h20DK + nRF7002EK.
Currently, i have succesfully loaded the sample on the an nRF7002DK where i have made connection to my IoT hub. This is all working fine.
Now i have tried porting to the nRF54h20DK + nRF7002EK over SPI with the following overlay:
&gpio1 {
status = "okay";
};
&pinctrl {
spi130_default: spi130_default {
group1 {
psels = <NRF_PSEL(SPIM_SCK, 1, 1)>,
<NRF_PSEL(SPIM_MOSI, 1, 5)>,
<NRF_PSEL(SPIM_MISO, 1, 6)>;
};
};
spi130_sleep: spi130_sleep {
group1 {
psels = <NRF_PSEL(SPIM_SCK, 1, 1)>,
<NRF_PSEL(SPIM_MISO, 1, 6)>,
<NRF_PSEL(SPIM_MOSI, 1, 5)>;
};
};
};
&spi130 {
status = "okay";
pinctrl-0 = <&spi130_default>;
pinctrl-1 = <&spi130_sleep>;
pinctrl-names = "default", "sleep";
cs-gpios = <&gpio1 4 (GPIO_ACTIVE_LOW)>;
memory-regions = <&cpuapp_dma_region>;
nrf70: nrf7002-spi@0 {
compatible = "nordic,nrf7002-spi";
reg = <0x0>;
status = "okay";
spi-max-frequency = <8000000>;
/delete-property/ srrf-switch-gpios;
wlan0: wlan0 {
compatible = "nordic,wlan";
status = "okay";
};
bucken-gpios = <&gpio1 0 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
host-irq-gpios = <&gpio1 2 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
iovdd-ctrl-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH)>;
wifi-max-tx-pwr-2g-dsss = <21>;
wifi-max-tx-pwr-2g-mcs0 = <16>;
wifi-max-tx-pwr-2g-mcs7 = <16>;
wifi-max-tx-pwr-5g-low-mcs0 = <14>;
wifi-max-tx-pwr-5g-low-mcs7 = <14>;
wifi-max-tx-pwr-5g-mid-mcs0 = <14>;
wifi-max-tx-pwr-5g-mid-mcs7 = <14>;
wifi-max-tx-pwr-5g-high-mcs0 = <14>;
wifi-max-tx-pwr-5g-high-mcs7 = <14>;
};
};
Which is working fine, since the WiFi is connecting, however i have a problem which can be seen from my log:
*** Booting nRF Connect SDK v3.3.0-ba167d9f3db4 *** *** Using Zephyr OS v4.3.99-fd9204a02d52 *** [00:00:00.756,247] <inf> demo: Starting nrf54h20dk with CPU frequency: 320 MHz [00:00:00.766,068] <inf> wifi: Starting Wi-Fi task [00:00:00.773,951] <inf> led_task: Starting LED task [00:00:00.781,538] <inf> led_task: Received message with event: 0 [00:00:00.790,233] <inf> azure_task: Starting Azure task [00:00:00.798,135] <inf> azure_task: Received message with event: 0 [00:00:01.773,594] <inf> wifi: Waiting for Wi-Fi to be ready [00:00:01.781,855] <inf> wifi: Is Wi-Fi ready?: yes [00:00:03.666,802] <inf> net_wifi_mgmt: Connection requested [00:00:03.675,464] <inf> wifi: Connection requested [00:00:03.682,963] <inf> wifi: State: SCANNING [00:00:03.690,780] <inf> led_task: Received message with event: 1 [00:00:03.700,473] <inf> azure_task: Received message with event: 1 [00:00:07.590,950] <inf> wifi: State: AUTHENTICATING [00:00:07.892,113] <inf> wifi: Connected [00:00:07.905,909] <inf> wifi: State: GROUP_HANDSHAKE [00:00:07.913,552] <inf> wifi: Interface Mode: STATION [00:00:07.921,295] <inf> wifi: Link Mode: WIFI 6 (802.11ax/HE) [00:00:07.944,960] <inf> wifi: Band: 5GHz [00:00:07.951,583] <inf> wifi: Channel: 44 [00:00:07.958,281] <inf> wifi: Security: WPA2-PSK [00:00:07.965,592] <inf> wifi: MFP: Optional [00:00:07.972,467] <inf> wifi: RSSI: -64 [00:00:07.988,952] <wrn> net_dhcpv4: DHCP server provided more DNS servers than can be saved [00:00:08.000,280] <dbg> net_dns_resolve: dns_resolve_init_locked: (rx_q[0]): [0] 10.0.0.235 via wlan0 (DHCP) [00:00:08.014,115] <dbg> net_dns_resolve: dns_resolve_init_locked: (rx_q[0]): Binding 10.0.0.235 to 1 [00:00:08.029,693] <wrn> net_dhcpv4: DHCP server provided more DNS servers than can be saved [00:00:08.269,091] <inf> net_dhcpv4: Received: 10.0.0.156 [00:00:08.277,263] <inf> wifi: DHCP IP address: 10.0.0.156 [00:00:08.285,843] <inf> led_task: Received message with event: 2 [00:00:08.295,660] <inf> azure_task: Received message with event: 2 [00:00:13.304,757] <inf> led_task: Received message with event: 4 [00:00:13.313,467] <inf> azure_task: Starting DPS [00:00:13.320,816] <inf> azure_task: DPS registration status: AZURE_IOT_HUB_DPS_REG_STATUS_NOT_STARTED [00:00:13.333,990] <dbg> net_dns_resolve: dns_resolve_name_internal: (azure_thread_id): DNS id will be 33899 [00:00:13.346,439] <dbg> net_dns_resolve: dns_write: (azure_thread_id): [0] submitting work to server idx 0 for id 33899 hash 36583 [00:00:13.403,434] <dbg> net_dns_resolve: dns_resolve_name_internal: (azure_thread_id): DNS id will be 37972 [00:00:13.416,031] <dbg> net_dns_resolve: dns_write: (azure_thread_id): [0] submitting work to server idx 0 for id 37972 hash 34599 [00:00:13.497,484] <dbg> net_dns_resolve: dns_write: (net_socket_service): [0] submitting work to server idx 0 for id 37972 hash 39799 [00:00:13.662,061] <err> net_sock_tls: TLS handshake error: -0x2700 [00:00:13.686,503] <err> mqtt_helper: mqtt_connect, error: -113 [00:00:13.695,376] <err> azure_iot_hub_dps: mqtt_helper_connect failed, error: -113 [00:00:13.707,476] <err> azure_task: DPS failed to start, error: -113 [00:00:13.716,836] <err> azure_task: Failed to run DPS, error: -113, terminating connection attempt
The error -0x2700 comes from modules/crypto/mbedtls/library/ssl_tlc.c where x509_verify_cert() return -9984 which gives the flag MBEDTLS_X509_BADCERT_NOT_TRUSTED
I know the certificate is good, since i used the exact same on the nrf7002dk
I have tried a multitude of different configs and debugging, but i cant see any problems.
All help would be greatly appreciated