cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to successfully load Sigfox credentials to STM32WLE5.

DThom.5
Associate

Hi There.

I've successfully loaded the Sigfox_AT_Slave example to my device and the AT commands work 100%.

I then followed the "Personalization and activation" section in document AN5480 to get and flash the Sigfox credentials from ST.

When I try to load the Sigfox credentials to the device, it responds with success,

0693W000008yPQuQAM.jpg 

but when I query the PAC afterwards it is still the default of 0000000000000000.

"...

SIGFOX APPLICATION READY

AT$PAC

0000000000000000

OK

..."

Is there anything else that I should do afterwards to get it updated in the registers?

Regards

Damion

1 ACCEPTED SOLUTION

Accepted Solutions
YBOUV.1
Senior

sigfox data.o contains the credentials (compiled from sifox_data.c). The default credentials are contained in sigfox_data.h.

In the stm32_cubeWL, the Sigfox_data.o is placed at 0x0803E500 through the linker file (.ld). Please note this adress is out of range for your device (64kByte). This address (0x0803E500) matches by default the address you see in Cube programmer

There are 2 ways to update you credentials:

1/ update default sigfox_data.h with the one you received, recompile and load

OR

2/ flash the firmware with default credentials, and update credentials using Cube programmer

Now, if you have generated from CubeMx, your linker file is likely the default one (e.g. sigfox data.o not placed).

2a) sigfox_data.o not placed in your linker file

You need to check where the sigfox_data.o has been mapped (by searching into the map file) by the linker. Once you have the address, you should copy/paste it in the Cube progammerin the address TAB of the Sigfox provisionning tab before flashing.

2b) sigfox_data.o placed in your linker file

If you want to force placement of the sigfox data.o, you should update .ld file (256kByte stm32WL example here)

update section as below and update 0x0803E500 to the address you want to fit in:

0693W00000AMrLpQAL.png 

let me know,

best regards

View solution in original post

4 REPLIES 4
YBOUV.1
Senior

Hello Damion,

can you please tell me what if you are using single core or dual core sigfox modem and which IDE?

thanks

Hi YBOUV.1

I'm using the STM32WLE5J8 processor.

The IDE I used to load the firmware is STMCubeMX version 5.6.1

To load the Sigfox credentials I used STM32CubeProgrammer version 2.7.0

Regards

Damion

YBOUV.1
Senior

sigfox data.o contains the credentials (compiled from sifox_data.c). The default credentials are contained in sigfox_data.h.

In the stm32_cubeWL, the Sigfox_data.o is placed at 0x0803E500 through the linker file (.ld). Please note this adress is out of range for your device (64kByte). This address (0x0803E500) matches by default the address you see in Cube programmer

There are 2 ways to update you credentials:

1/ update default sigfox_data.h with the one you received, recompile and load

OR

2/ flash the firmware with default credentials, and update credentials using Cube programmer

Now, if you have generated from CubeMx, your linker file is likely the default one (e.g. sigfox data.o not placed).

2a) sigfox_data.o not placed in your linker file

You need to check where the sigfox_data.o has been mapped (by searching into the map file) by the linker. Once you have the address, you should copy/paste it in the Cube progammerin the address TAB of the Sigfox provisionning tab before flashing.

2b) sigfox_data.o placed in your linker file

If you want to force placement of the sigfox data.o, you should update .ld file (256kByte stm32WL example here)

update section as below and update 0x0803E500 to the address you want to fit in:

0693W00000AMrLpQAL.png 

let me know,

best regards

YBOUV.1
Senior

Hi @DThom.5​ ,

can you please mark this question as answered .. if it did actually solve your issue..

Best regards