cancel
Showing results for 
Search instead for 
Did you mean: 

LoRaWAN end node issue in dual core and single core project with CubeIDE

Candra SN.
Associate III

0693W000008zDkfQAE.pngHi

I'm using Nucleo-WL55JC1 STM32WL development board for LoRaWAN end node dual core and i have a custom board with MCU STM32WLE5CBU6 for LoRaWAN end node single core.

I have configured LoRaWAN end node protocol parameters like this documentation (https://www.st.com/resource/en/application_note/dm00660451-how-to-build-a-lora-application-with-stm32cubewl-stmicroelectronics.pdf).

The program from the example project has been uploaded successfully. After I uploaded the LoRaWAN end node program to the STM32WL55JC1 (dual core) development board, it said

"WARNING: There is a difference between the MAPPING_TABLE placement in memory: 0x20008000

 and the address calculated according to the IPCCDBA option byte: 0x2003FFF0

 The execution enters now in a while(1){}

 please check the CM4\MbMux\mbmuxif_sys.c or update the scatter file"

on the external terminal via serial usb and couldn't send data to the server / gateway with OTAA. I have followed the solution steps given from this topic:

(https://community.st.com/s/question/0D53W00000VgqmvSAB/trouble-with-the-stm32cubewl-dual-core-example-projects)

and I still have problems like that

Meanwhile, for the single core STM32WLECB MCU end node, the program was successfully uploaded with the Lora protocol configured. But there is no response / action from the node sending data to the server / gateway with OTAA. On this board, I'm not using TCXO and DCDC.

So, from the problem I got, is there a solution or configuration that I missed so that the nodes can send data with OTAA to the server / gateway with dual core or single core. I really appreciate your attention, thank you.

7 REPLIES 7
YBOUV.1
Senior

Hi,

as you saw in the thead (https://community.st.com/s/question/0D53W00000VgqmvSAB/trouble-with-the-stm32cubewl-dual-core-example-projects))

the option byte IPCCDBA probably does not match MAPPING_TABLE address in the linker file at STM32CubeIDE\CM4\STM32WL55JCIX_FLASH.ld.

  • MAPPING_TABLE is mapped at RAM_SHARED (@0x20008000). Mapping table is used to exchange data between the cores.
  • To see IPCCDBA, connect with cube programmer, open tab 'OB', section 'User Configuration', scrolling down to bottom you will find it.

following rule shall apply IPCCDBA = (MAPPING_TABLE>>4)

please try to program manually option byte IPCCDBA to 0x800. The board will restart to reload the new OB value.

To do this, please connect with CubeProgrammer, go to 'Option Bytes/User Configuration 'tab and scroll down to IPCCDBA. Then update IPCCDBA to 0x800.

The board should reset and M0 should now boot.

0693W00000AM0nWQAT.pngPlease, let us know

YBOUV.1
Senior

Note also,

if you do not have TCXO nor DCDC on your board, you shall tell the FW by setting

-IS_TCXO_SUPPORTED to 0 in LoraWan/radio_board_if.h

-IS_DCDC_SUPPORTED to 0 in LoraWan/radio_board_if.h

Thank you YBOUV.1

I already tried it and it's no longer an error. But I still haven't managed to run the lora end node protocol on my single core STM32WL custom board. I run the example end node program that I have configured (OTAA mode, radio switch pin, TCXO and DCDC set 0), but nothing happens to my custom board

Souan.1
Associate II

i'm having similar issues, but where is that radio_board_if.h file located ? on M0 or M4? or both?

Souan.1
Associate II

Hi @Candra SN.​  have you been able to resolve all your issues with LoRa communication? if yes can you share what you did. im having the same issues with dual core on my board. i ran the single core example smoothly from this Tutorial (MOOC - STM32WL workshop - 5 Sending data to LoRaWAN network lab - YouTube) on both nucleo board and my manufactured board, but Dual Core example is not working and i cant seem to find a decent tutorial for dual core

Hi @Souan.1​ ,

For MAPPING TABLE issue on dual core, the solution from @YBOUV.1​  is quite helpful if you follow the steps. I decide to use single core MCU for my self design board, so I didn't continue with the dual core issue. If I may know, what are the details of your problem ?

Souan.1
Associate II

i have the exact same issue i did the fix suggested from the cube programmer but it did not fix the issue

after reboot i still have this message

"There is a difference between the MAPPING_TABLE placement in memory: 0x20000290

and the address calculated according to the IPCCDBA option byte: 0x2003FFF0

IPCCDBA is automatically updated"

0693W00000LzGqiQAF.png