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…
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.
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.
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.
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:
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
@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.
Hi, I have downloaded the compiler and put it in the repo, added the right path but now we get a different error.
when we run the Psudo cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain.cmake ..;
command we get the following error:
The C compiler
"/Users/ezra/Public/arm-none-eabi-gcc"
is not able to compile a simple test program.It fails with the following output:
Change Dir: /Users/ezra/Documents/GitHub/RAK5205-WisTrio-LoRa/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make cmTC_11a26/fast
/Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_11a26.dir/build.make CMakeFiles/cmTC_11a26.dir/build
Building C object CMakeFiles/cmTC_11a26.dir/testCCompiler.c.obj
/Users/ezra/Public/arm-none-eabi-gcc -Wall -DSTM32L151xB -nostartfiles -nodefaultlibs -fno-common -ffunction-sections -fdata-sections -mabi=aapcs -march=armv7-m -mthumb -mcpu=cortex-m3 -o CMakeFiles/cmTC_11a26.dir/testCCompiler.c.obj -c /Users/ezra/Documents/GitHub/RAK5205-WisTrio-LoRa/build/CMakeFiles/CMakeTmp/testCCompiler.c
make[1]: /Users/ezra/Public/arm-none-eabi-gcc: Permission denied
make[1]: *** [CMakeFiles/cmTC_11a26.dir/testCCompiler.c.obj] Error 1
We used sudo so the permission denied is very strange…
sorry for the many questions we are very new to this
Anyway when I compile it throws me a warning in the SendRadioP2PFrame:
C:/Users/dhinojosac/Documents/000-CODES/RAK5205-WisTrio-LoRa/src/application/RAK811/rw_lora.c: In function 'rw_P2PTxContinueTimerEvent':
C:/Users/dhinojosac/Documents/000-CODES/RAK5205-WisTrio-LoRa/src/application/RAK811/rw_lora.c:1054:56: warning: passing argument 3 of 'SendRadioP2PFrame' makes integer from pointer without a cast [-Wint-conversion]
SendRadioP2PFrame(g_lora_config.lorap2p_param, NULL, NULL);
^~~~
In file included from c:\users\dhinojosac\documents\000-codes\rak5205-wistrio-lora\src\board\rak811\board.h:42:0,
from C:/Users/dhinojosac/Documents/000-CODES/RAK5205-WisTrio-LoRa/src/application/RAK811/rw_lora.c:1:
C:/Users/dhinojosac/Documents/000-CODES/RAK5205-WisTrio-LoRa/src/application/RAK811/app.h:91:20: note: expected 'uint16_t {aka short unsigned int}' but argument is of type 'void *'
extern TimerTime_t SendRadioP2PFrame( S_LORAP2P_PARAM LoraP2PParams, void *fBuffer, uint16_t fBufferSize);
And @mani, Iused cmake 3.14.5 and 3.13.5 and the result was the same.