Arm just introduced Mbed OS 6. The new OS runs perfectly on Cypress' Mbed-Enabled boards and you should feel free to try it out with the standard examples (ARMmbed/mbed-os-example-*).
However, Mbed OS 6 removes a small number deprecated API functions that are used in Cypress Code Examples (cypresssemiconductorco/mbed-os-example-*). There are three types of impacted API:
As a result, most of the Cypress-hosted examples will fail to build without modifying the source code. Cypress remains fully committed to supporting Mbed OS and we shall be updating the examples in due course. Until the examples are updated, however, we recommend using Mbed OS v5.15.x for production builds or if your project is nearing completion.
UPDATE on October 25th: All impacted libraries and examples have been updated to support Mbed OS 6. We now recommend Mbed OS6.x for production with PSoC 6 devices.
A full list of deprecated API functions is available in Mbed OS Reference | Deprecated List. The ones used in Cypress examples are as follows:
File | Deprecated API | New Usage |
---|---|---|
features/netsocket/NetworkInterface.h | virtual const char *get_ip_address(); | virtual nsapi_error_t get_ip_address(SocketAddress *address); |
virtual const char *get_netmask(); | virtual nsapi_error_t get_netmask(SocketAddress *address); | |
virtual const char *get_gateway(); | virtual nsapi_error_t get_gateway(SocketAddress *address); | |
virtual nsapi_error_t set_network(const char *ip_address, const char *netmask, const char *gateway); | virtual nsapi_error_t set_network(const SocketAddress &ip_address, const SocketAddress &netmask, const SocketAddress &gateway); | |
features/netsocket/TCPServer.h (deprecated) | TCPServer class is deprecated. | Use TCPSocket instead. |
features/netsocket/TCPSocket.h | nsapi_error_t connect(const char *host, uint16_t port); | nsapi_error_t connect(const SocketAddress &address) |
features/netsocket/TLSSocket.h | nsapi_error_t connect(const SocketAddress &address) | nsapi_error_t connect(const SocketAddress &address) |
platform/mbed_wait_api.h | wait(…) and wait_ms(…) | void wait_us(int us) void wait_ns(unsigned int ns) ThisThread::sleep_for(); |