Hello,
I have an application and I am using a nrf52833, as soon as i flash my application I am getting a hardfault prior to the main call.
As in below snap:

I do not know what to make of this, kindly suggest.
Thanks,
Hello,
I have an application and I am using a nrf52833, as soon as i flash my application I am getting a hardfault prior to the main call.
As in below snap:

I do not know what to make of this, kindly suggest.
Thanks,
Hello,
I found the source of hard fault issue.
I wanted to have memory partitioning, for which I edited the "pm_static.yaml" file and "bl653_dvk.dts" files
As soon as I removed the "pm_static.yaml" from my project, The restart was not happening and image is working fine.
Please fine the below attached files and kindly suggest what is wrong with my "pm_static.yaml" file:
app:
address: 0x10200
end_address: 0x70000
region: flash_primary
size: 0x5fe00
external_flash:
address: 0x0000
end_address: 0x100000
region: external_flash
size: 0x100000
mcuboot:
address: 0x0
end_address: 0x10000
placement:
before:
- mcuboot_primary
region: flash_primary
size: 0x10000
mcuboot_pad:
address: 0x10000
end_address: 0x10200
placement:
before:
- mcuboot_primary_app
region: flash_primary
size: 0x200
mcuboot_primary:
address: 0x10000
end_address: 0x70000
orig_span: &id001
- mcuboot_pad
- app
region: flash_primary
size: 0x60000
span: *id001
mcuboot_primary_app:
address: 0x10200
end_address: 0x70000
orig_span: &id002
- app
region: flash_primary
size: 0x5fe00
span: *id002
mcuboot_secondary:
address: 0x0
device: IS25
end_address: 0x60000
placement:
align:
start: 0x4
region: external_flash
share_size:
- mcuboot_primary
size: 0x60000
settings_storage:
address: 0x70000
end_address: 0x80000
placement:
before:
- end
region: flash_primary
size: 0x10000
sram_primary:
address: 0x20000000
end_address: 0x20020000
region: sram_primary
size: 0x20000
And my dts file is:
/*
* Copyright (c) 2020 Laird Connectivity
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <nordic/nrf52833_qiaa.dtsi>
/ {
model = "Laird BL653 Dev Kit";
compatible = "lairdconnect,bl653_dvk";
chosen {
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
zephyr,uart-mcumgr = &uart0;
zephyr,bt-mon-uart = &uart0;
zephyr,bt-c2h-uart = &uart0;
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zephyr,code-partition = &slot0_partition;
};
leds {
compatible = "gpio-leds";
led1: led_1 {
gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
label = "Blue LED 1";
};
led2: led_2 {
gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
label = "Blue LED 2";
};
led3: led_3 {
gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>;
label = "Blue LED 3";
};
led4: led_4 {
gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>;
label = "Blue LED 4";
};
};
buttons {
compatible = "gpio-keys";
button1: button_1 {
gpios = <&gpio0 11 GPIO_PULL_UP>;
label = "Push button switch 1 (SW1)";
};
button2: button_2 {
gpios = <&gpio0 12 GPIO_PULL_UP>;
label = "Push button switch 2 (SW2)";
};
button3: button_3 {
gpios = <&gpio0 24 GPIO_PULL_UP>;
label = "Push button switch 3 (SW9)";
};
button4: button_4 {
gpios = <&gpio0 22 GPIO_PULL_UP>;
label = "Push button switch 4 (SW10)";
};
};
/* These aliases are provided for compatibility with samples */
aliases {
led0 = &led1;
led1 = &led2;
led2 = &led3;
led3 = &led4;
sw0 = &button1;
sw1 = &button2;
sw2 = &button3;
sw3 = &button4;
};
};
&adc {
status = "okay";
};
&gpiote {
status = "okay";
};
&gpio0 {
status = "okay";
};
&gpio1 {
status = "okay";
};
&uart0 {
compatible = "nordic,nrf-uart";
current-speed = <115200>;
status = "okay";
tx-pin = <6>;
rx-pin = <8>;
rts-pin = <5>;
cts-pin = <7>;
};
&i2c0 {
compatible = "nordic,nrf-twi";
status = "okay";
sda-pin = <26>;
scl-pin = <27>;
dac0: mcp4725@60 {
/* MCP4725 not populated at factory */
compatible = "microchip,mcp4725";
reg = <0x60>;
label = "MCP4725";
#io-channel-cells = <1>;
status = "disabled";
};
};
&pwm0 {
status = "okay";
ch0-pin = <13>;
};
&spi1 {
compatible = "nordic,nrf-spi";
status = "okay";
sck-pin = <41>;
mosi-pin = <40>;
miso-pin = <4>;
cs-gpios = <&gpio1 23 0>;
};
/*
&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x000000000 0xC000>;
};
slot0_partition: partition@c000 {
label = "image-0";
reg = <0x0000C000 0x32000>;
};
slot1_partition: partition@3e000 {
label = "image-1";
reg = <0x0003E000 0x32000>;
};
scratch_partition: partition@70000 {
label = "image-scratch";
reg = <0x00070000 0xA000>;
};
storage_partition: partition@7a000 {
label = "storage";
reg = <0x0007A000 0x00006000>;
};
};
};
*/
&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x000000000 0x10000>;
};
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x00010000 0x60000>;
};
storage_partition: partition@70000 {
label = "storage";
reg = <0x00070000 0x0010000>;
};
};
};
zephyr_udc0: &usbd {
compatible = "nordic,nrf-usbd";
status = "okay";
};
Regards,
Have you made any changes to the pm_static.yaml file?
Yes, I added a new pm_static.yaml into project
pm_static.yaml" file:
I think something wrong here
Can you check my pm_static.yml file and see if anything wrong there..?
As soon as I removed the "pm_static.yaml" from my project, The restart was not happening and image is working fine.
Have you made any changes to the pm_static.yaml file?
Hi Susheel Nuguru,
Can you help me figure out what is wrong with the defined file..?
"pm_static.yaml" file: