Error while running the program on Rak11720

In the circuit I created with Rak3172, I switched to Rak11720 due to lack of memory. I soldered Rakl11720 directly to the PCB instead of Rak3172. I chose Apollo 11720 as the card from the Arduino ide. When I transfer the Rak3172 Arduino program to the Rak11720, I get an error message. (I’m also sending the error message below.)
I have a few questions. I would be happy if you answer.
1.Can the Arduino code be transferred directly to the zeroed rak11720 module? Or is there something that needs to be done first? (There are buttons on pins 21 and 22 on the board.)

  1. In the Arduino ide, I get a warning that rak3172 and rak11720 are 84% and 62% used. Shouldn’t these values ​​change (increase) at rak11720?

Welcome to the forum @ressamendy

My codes are running (with a few #ifdef) on all RUI3 modules.
What are the errors you get?

RAK3172 84% from 256 kB flash
RAK11720 62% from 1 MB flash

Slight improvement. RAK3172 is plane STM32 code, RAK11720 has FreeRTOS running in the background.

You can get more if you limit the used LoRaWAN regions in ArduinoIDE or, if you use LoRa P2P remove LoRaWAN support complete.

This is the project I’m experimenting with. It is an Open Source project.

My project goals,

  1. Sending certain parameters to chirpstack lorawan server. Temperature, Humidity, Atmospheric pressure and battery voltage value. (I achieved this with rak3172.)

  2. Sending air quality information from the same sensor. (There was insufficient memory here and that’s why I felt the need to switch to rak11720.)

  3. By teaching the desired odors to the Bosch sensor with AI, an alert will be sent via Lorawan when these odors are detected. (In this case, my memory requirement will be at least as much as in item 2.)

We are in contact with the open source project owner.

The error I get here is below. (I forgot to add this yesterday. When I realized it, the system did not allow me to add it because I was a new user.)

Arduino:1.8.16 (Windows 10), Kart:“WisBlock Core RAK11720 Board, Level 0 (Release), On, Support LoRaWAN and LoRa P2P, On, On, Off, Off, Off, On, On, On, On, On, On”

C:\Users\Endy\Downloads\bwlr1e-main1\bwlr1e-main\src\arduino\RUI3_LoRaWAN_Environmental__dogru_veri_gonderen_20_06_2024_16_1\RUI3_LoRaWAN_Environmental__dogru_veri_gonderen_20_06_2024_16_1.ino: In function ‘void setup()’:

RUI3_LoRaWAN_Environmental__dogru_veri_gonderen_20_06_2024_16_1:98:34: error: no matching function for call to ‘RAKLorawan::nwm::set(int)’

98 | api.lorawan.nwm.set(1) ? “Success” : “Fail”);

  |                                  ^

In file included from C:\Users\Endy\AppData\Local\Arduino15\packages\rak_rui\hardware\apollo3\4.1.1/cores/apollo3/component/rui_v3_api/RAKUnifiedApi.h:13,

             from C:\Users\Endy\AppData\Local\Arduino15\packages\rak_rui\hardware\apollo3\4.1.1/cores/apollo3/component/rui_v3_api/ruiTop.h:919,

             from C:\Users\Endy\AppData\Local\Arduino15\packages\rak_rui\hardware\apollo3\4.1.1/cores/apollo3/component/rui_v3_api/Arduino.h:1,

             from sketch\RUI3_LoRaWAN_Environmental__dogru_veri_gonderen_20_06_2024_16_1.ino.cpp:1:

C:\Users\Endy\AppData\Local\Arduino15\packages\rak_rui\hardware\apollo3\4.1.1/cores/apollo3/component/rui_v3_api/RAKLorawan.h:3410:10: note: candidate: ‘bool RAKLorawan::nwm::set()’

3410 | bool set();

  |          ^~~

C:\Users\Endy\AppData\Local\Arduino15\packages\rak_rui\hardware\apollo3\4.1.1/cores/apollo3/component/rui_v3_api/RAKLorawan.h:3410:10: note: candidate expects 0 arguments, 1 provided

56 | return digitalRead(POWER_STATUS);

  |                        ^~~~~~~~~~~~

exit status 1

no matching function for call to ‘RAKLorawan::nwm::set(int)’

This report would have more information with
“Show verbose output during compilation”
option enabled in File → Preferences.

Seems you installed RUI3 V4.1.1 for RAk11720 while your RAk3172 is still on RUI3 V4.1.0

==> RUI3 V4.1.1 is released

Breaking change for API

:warning: WARNING

With version V4.1.1 of RUI3, the LoRa P2P functions are separated into a new class and API calls for LoRa have a changed syntax:

Old New Comment
api.lorawan.pXXX api.lora.pXXX All LoRa P2P API calls change.
api.lorawan.registerPyyy api.lora.registerPyyy All LoRa P2P callback register API calls change.
api.lorawan.nwm.set(1) api.lorawan.nwm.set() Set device to LoRaWAN mode.
api.lorawan.nwm.set(0) api.lora.nwm.set() Set device to LoRa P2P mode.

99% of the code can be updated with simple search and replace functions
api.lorawan.p* ==> api.lora.p*
api.lorawan.registerP* ==> api.lora.registerP*
api.lorawan.nwm.set(1) ==> api.lorawan.nwm.set()
api.lorawan.nwm.set(0) ==> api.lora.nwm.set()

I made the changes you said. This is the current situation. Screenshot and error messages.

The errors regarding PB12, PA15, … are because on the RAK11720 the GPIO pins are defined different (different names).

You have to change these GPIO names to the names used by the RAK11720.

I never see this, because I am using the “WisBlock” names for GPIO’s (WB_IOx) which are automatically correct for the RAK11720/RAK3172/RAK4630 modules.

I will look into it. Thank you very much Bernd.:+1:

25 Haz 2024 Sal 12:21 tarihinde Bernd Giesecke via RAKwireless Forum <[email protected]> şunu yazdı:

All corrections have been made. Bugs are gone. The current error is shown in the screenshot below.

Your work used 267344 bytes (29%) of the program’s storage space. Maximum 917504 bytes.
Global variables use 151772 bytes (38%) of memory. There is 240420 bytes left for local variables. A maximum of 392192 bytes can be used.

RAK Apollo3 Serial Bootloader
Script version: 0.0.1

Failed to enter bootload phase…