How to update deprecated apps HTTPClient_HelloWorld_IDW01M1

Dear members,

I want to use deprecated mbedlts apps (HTTPClient_HelloWorld_IDW01M1) and wifi board.

I compiled with online compiler Nucleo F401 and the error occured.

Warning: Function “mbed::FunctionPointerArg1<R, void>::FunctionPointerArg1(R (*)()) [with R=void]” (declared at line 67 of “/extras/mbed/platform/FunctionPointer.h”) was declared “deprecated” in “NetworkSocketAPI/Socket.cpp”, Line: 23, Col: 2
Error: #error directive: "BufferedSerial version 13 and newer requires use of Mbed OS 5.2.0 and newer or Mbed 2 version 130 and newer. Use BufferedSerial version 12 and older or upgrade the Mbed version. in “X_NUCLEO_IDW01M1v2/SPWF01SA/ATParser/BufferedSerial/BufferedSerial.h”, Line: 33, Col: 3
Info: Unable to download. Fix the reported errors…

So, I will try to change the mbed revision to 131

Warning: Members and base-classes will be initialized in declaration order, not in member initialisation list order in “X_NUCLEO_IDW01M1v2/SPWF01SA/SPWFSA01.cpp”, Line: 29, Col: 8
Warning: Statement is unreachable in “X_NUCLEO_IDW01M1v2/SpwfInterface.cpp”, Line: 505, Col: 6
Success: Success!

Compile Success.(Not yet working or not on Nucleo F401 board.)

But, offline compiler - MDK,
the error occurred
mbed/TARGET_NUCLEO_F401RE\core_cmFunc.h(629): error: unknown register name ‘vfpcc’ in asm
__ASM volatile (“VMSR fpscr, %0” : : “r” (fpscr) : “vfpcc”);

Could you let me know how to update latest mbed version and how to export it ( with changed revision) for MDK correctly?

Best regards


in general you must follow errors from compiler and solve them one by one.
For example the FunctionPointer was replaced with a Mbed::Callback, and so on.

However I think, it will be hard update it diretly, because it depends also on an old library NetworkSocketAPI - Base class for IP Based Networking Libraries | Mbed which is already implemented in MbedOs but in a modified version. Also HTTPClient - HTTP/HTTPS Client Library for the X-NUCLEO-IDW01… | Mbed depends on these old libraries.

Form my point of view you can try to do this.
The shield’s driver page says " mbed OS 5 library can instead be found at this link ." So you can try to use it with MbedOs 5.15.7. When you will able to test it with Wi-Fi - APIs | Mbed OS 5 Documentation, then also mbed-http - HTTP and HTTPS library for Mbed OS 5 | Mbed can be usable.
For the latest MbedOS (6.15) you need to rework the driver anyway, but it will be not so hard like rework all libraries from original version for Mbed2.
Updated SandBox’s HTTP library for MbedOS 6+ is here - mbed-http - Fork of SandBox’s original mbed-http (https://os… | Mbed

I also have this shield, I think, I will check it later.

BR, Jan