Upgrading Arduino R3 to R4 for SimpleFOC Shield

I’m using the SimpleFOC Shield v2 for magnetic encoder reading, and have used it with Arduino Uno R3 where it works very well. I’m trying to upgrade to Arduino R4 WiFi, but the SimpleFOC Shield is causing me some trouble and I need some help with this, please. I’ve copied the warning messages below.

I’ve tried using different versions as follows:
Library: Simple FOC v2.1.1 / v2.3.3
Boards Manager: Arduino UNO R4 v1.0.5 / v1.1.0

I would really appreciate any help or insights with solving this. Thank you!

/home/user/snap/arduino/current/Arduino/libraries/Simple_FOC/src/drivers/hardware_specific/renesas/renesas.cpp:8:68: note: #pragma message: SimpleFOC: compiling for Arduino/Renesas (UNO R4)
 #pragma message("SimpleFOC: compiling for Arduino/Renesas (UNO R4)")
                                                                    ^
/home/user/snap/arduino/85/.arduino15/packages/arduino/hardware/renesas_uno/1.1.0/cores/arduino/cm_backtrace/cm_backtrace.c: In function 'cm_backtrace_init':
/home/user/snap/arduino/85/.arduino15/packages/arduino/hardware/renesas_uno/1.1.0/cores/arduino/cm_backtrace/cm_backtrace.c:144:13: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     fw_name = firmware_name;
             ^
/home/user/snap/arduino/85/.arduino15/packages/arduino/hardware/renesas_uno/1.1.0/cores/arduino/cm_backtrace/cm_backtrace.c:145:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hw_ver = hardware_ver;
            ^
/home/user/snap/arduino/85/.arduino15/packages/arduino/hardware/renesas_uno/1.1.0/cores/arduino/cm_backtrace/cm_backtrace.c:146:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     sw_ver = software_ver;
            ^
/home/user/snap/arduino/85/.arduino15/packages/arduino/hardware/renesas_uno/1.1.0/cores/arduino/tinyusb/rusb2/dcd_rusb2.c: In function 'wait_pipe_fifo_empty':
/home/user/snap/arduino/85/.arduino15/packages/arduino/hardware/renesas_uno/1.1.0/cores/arduino/tinyusb/rusb2/dcd_rusb2.c:289:3: warning: 'return' with a value, in function returning void
   TU_ASSERT(num);
   ^~~~~~~~~
/home/user/snap/arduino/85/.arduino15/packages/arduino/hardware/renesas_uno/1.1.0/cores/arduino/tinyusb/rusb2/dcd_rusb2.c:288:13: note: declared here
 static void wait_pipe_fifo_empty(rusb2_reg_t* rusb, uint8_t num) {
             ^~~~~~~~~~~~~~~~~~~~
Sketch uses 77416 bytes (29%) of program storage space. Maximum is 262144 bytes.
Global variables use 10036 bytes (30%) of dynamic memory, leaving 22732 bytes for local variables. Maximum is 32768 bytes.
Please run as root

Do you know how I can solve some of these warnings? Thanks for your help.

I expect this has to do with the GCC compiler version. I have arm-none-eabi-gcc/7-2017q4 and I do not get these warnings. Newer compilers are normally more strict and have better checks.

1 Like

Ok, many thanks for your help @Delta_G and @paulvha.