RAK5205 WisTrio modify firmware

Has someone modified the firmware not using Keil? (e.g Segger Embedded Studio, IAR, CMAKE or whatever). The free version of Keil doesn’t allow link more than 32Kbytes.

Thanks.

Yeah currently using Keil but this IDE is limited to 32 Kbytes.

Do you managed to compiled it without any error?

I don’t have license for Keil. I would like use Segger Embedded or a Makefile if somebody has the projects. Can you use Keil or do you have the paid version ?. Thanks

By now, you can only compile the project with Keil.
I’ve realized that it is hard for some people to use Keil, so we are working hard to develop another project which can be compiled with gcc recently. But it also need several weeks to get a project which works well on RAK5205.
If we have any good news, i will share in RAK forum ASAP.

1 Like

I using Keil downloaded from Keil official website.

Hello,

I have the same problem, Keil is limited to 32 Kbytes.

I managed to compile it with Eclipse IDE, more precisely ac6 OpenSTM32, and it worked for me until firmware 1.1.3. But since Firmware 2.x.x.x, it compiles but the fw sends some strange characters in the debug console and the board reboots endlessly. I suspect the e_printf function that is not working like the old printf implemented in fw 1.1.3.

I started to put everything needed on Gitub but I need to go further in my personal project, so I don’t have many time to finalize the explanations on how to configure the IDE. In a few words, you need to put the “.cproject” file in the root directory of the project (I can provide it to you) and adjust some directories and it should work…

Regards.

1 Like

Thanks @JCDS,
Woow that sounds great. :slightly_smiling_face: . I would appreciate it if you could share your repository or your project to fit my needs.

Regards.

Hi @dhinojosac, @JCDS,

I have added CMake support for WisTrio SDK recently to help building the firmware without the use of any proprietary IDE. The built binary can be flashed using the stm32flash opensource utility.

Link to repo: https://github.com/Mani-Sadhasivam/RAK5205-WisTrio-LoRa/tree/cmake

Build and flash instructions are provided in the README itself.

Note You need to have recent version of the CMake (>3.13)and stm32flash utilities for building and flashing the firmware.

Finally a blog which describes the work: https://www.96boards.org/blog/wistrio-cmake/

I hope that this would be helpful!

Thanks,
Mani

2 Likes

Thank you very much! I’ll use it!

Regards.

Great!
Thank you! Mani.
It is very useful for developers!

Hi @mani,

I’ve had some problems with de final .hex code generated using cmake (3.14.5). I was able to compile and flash it without any problems but when I run it looks like it’s in a loop. I guess it’s sticks trying to join and apparently the WDG restarts it.
As it’s stuck in the join process don’t react to commands like “at+version” or “at+band” either.

Configuration image:

Loop image:

Thanks

Hi, Thank you so much for the effort you put into this. This will be very useful!
I am trying to build the image but im quite new at this. I have pulled from git and installed make (via home-brew).
When I try the build command I get the following error:

– The C compiler identification is unknown
CMake Error at CMakeLists.txt:6 (project):
The CMAKE_C_COMPILER:
/usr/bin/arm-none-eabi-gcc
is not a full path to an existing compiler tool.
Tell CMake where to find the compiler by setting either the environment
variable “CC” or the CMake cache entry CMAKE_C_COMPILER to the full path to
the compiler, or to the compiler name if it is in the PATH.
– Configuring incomplete, errors occurred!
See also “/Users/ezra/Documents/GitHub/RAK5205-WisTrio-LoRa/build/CMakeFiles/CMakeOutput.log”.
See also “/Users/ezra/Documents/GitHub/RAK5205-WisTrio-LoRa/build/CMakeFiles/CMakeError.log”.

How do I install the gcc compiler? I tried brew install gcc but this was not the right one.

Thank you :slight_smile:

Hi @dhinojosac,

I can reproduce the issue. Will look into this. Thanks for reporting!

1 Like

Which host machine you are using? For ubuntu, you can use “apt” utility to install the arm cross compiler:

$ sudo apt-get install gcc-arm-none-eabi
1 Like

Hi @De_Drie_Bronnen ,

For windows you can download gcc-arm-none-eabi from this site, I recommend you download the version 7-2018-q2, because the last one has a bug when linking the firmware.

After that I edited the lines (because I had the same mistake as you.) in toolchain.cmake file:

set(CMAKE_C_COMPILER ${TOOLCHAIN}-gcc${TOOLCHAIN_EXT} CACHE INTERNAL "C Compiler")

set(CMAKE_CXX_COMPILER ${TOOLCHAIN}-g++${TOOLCHAIN_EXT} CACHE INTERNAL "C++ Compiler")

set(CMAKE_ASM_COMPILER ${TOOLCHAIN}-as${TOOLCHAIN_EXT} CACHE INTERNAL "ASM Compiler")

set(CMAKE_OBJCOPY ${TOOLCHAIN}-objcopy${TOOLCHAIN_EXT} CACHE INTERNAL "ASM Compiler")

Thanks!

1 Like

Hi I am using MacOs Mojave.
I tried installing using “brew install arm-none-eabi-gcc” but this did not exist.
I then installed “brew install arm-none-eabi” but that just gives compiler errors.
Thank you

Did you try to download it from here?

Regards.

@dhinojosac Did you find the issue only with CMake 3.14.5?

-Mani

Sorry @mani,

I only used that version. I don’t have time right now, but when I do I’ll try another version.

Regards.

@dhinojosac Okay no issues. Funny thing is, it works fine on my laptop but it throws reboot issue as like yours in my PC. My first suspection is the CMake, I’ll confirm it soon.

Thanks,
Mani

1 Like