Go to file
Wolfgang Betz 8ec9f6b430 Correct test `socket_sigio`
A call to

    `TCPSocket::recv(void *data, nsapi_size_t size)`

returns, following the mbed documentation, the number of received bytes on
success, and a negative error code on failure.

So in case of success, the return value depends on both the value of parameter
`size` but also on the amount of data already available. This means, that the
value returned can be lower than or equal to the `size` of the `data` buffer
passed as argument to the call.

Therefore, in the cases of `test_tcp_hello_world()` & `find_substring()`
(i.e. test `socket_sigio`), the calls to `TCPSocket::recv()` might return from
one byte up to `sizeof(buffer) - 1` (i.e. 511) bytes for each single call,
while the tests expect to receive the whole response string with a single call.

This commit applies a fix to this situation by implementing a receive loop
which exits once there is no data anymore available to be read from the socket.
2018-02-02 10:29:46 +01:00
.github Copy edit pull_request_template.md 2017-10-27 13:41:02 -05:00
TESTS Correct test `socket_sigio` 2018-02-02 10:29:46 +01:00
cmsis Core(A): Changed macro __DEPRECATED to CMSIS_DEPRECATED. (Issue #287) 2017-12-21 14:09:25 +09:00
drivers Merge pull request #5721 from scartmell-arm/bug-i2c-abort-deep-sleep 2018-01-11 10:30:53 -06:00
events equeue: some refactoring to meet coding rules 2017-10-30 13:56:11 +01:00
features Merge pull request #5874 from c1728p9/usb_fixes_and_improvements 2018-01-26 10:37:13 -06:00
hal Provide fix for issue #5835 - Tickers update should be atomic 2018-01-22 13:29:31 +01:00
platform CriticalSectionLock: fixing missing include 2018-01-24 08:10:35 +01:00
rtos Remove tickless assert for tick count 2018-01-25 15:27:35 -06:00
targets Merge pull request #5857 from TomoYamanaka/master 2018-01-26 10:50:44 -06:00
tools Merge pull request #5476 from ubirch/add-cmake-export 2018-01-26 15:07:55 -06:00
.coveragerc Exclude libraries and tests from coverage numbers 2017-09-25 11:51:31 -05:00
.gitattributes Added .gitattributes for automatic LF line ending conversion 2013-08-08 13:19:34 +03:00
.gitignore Ignore doxygen builds temporay object database 2017-06-05 17:32:45 -05:00
.pylintrc Add pylint configuration file 2016-08-16 11:48:45 -05:00
.travis.yml littlefs: Set specific hash for littlefs-fuse testing 2018-01-24 18:27:47 -06:00
CONTRIBUTING.md Update link in CONTRIBUTING.md 2017-06-09 16:38:38 -05:00
DOXYGEN_FRONTPAGE.md Very minimal text 2016-08-04 14:09:59 +01:00
Jenkinsfile Jenkinsfile: remove client app test temporarily 2017-06-01 12:15:09 +01:00
LICENSE Add Apache v2 LICENSE file 2013-08-06 12:05:04 +01:00
README.md Simple typo fix in the README.md 2018-01-08 19:50:18 +00:00
doxyfile_options Doxygen: Update excluded paths and predefined macros. 2017-12-14 16:44:01 +00:00
doxygen_options.json Doxygen: Update path and predefined macros. 2017-12-14 16:45:31 +00:00
logo.png Readme updates for style and branding 2017-12-04 14:59:16 -06:00
mbed.h platform: add DeepSleepLock 2017-09-07 15:35:06 +01:00
requirements.txt Remove pycurl dependency 2016-10-20 16:24:47 -05:00

README.md

Mbed OS

Build status release Build status master Tools coverage status PR progress

Arm Mbed OS is an open source embedded operating system designed specifically for the "things" in the Internet of Things. It includes all the features you need to develop a connected product based on an Arm Cortex-M microcontroller, including security, connectivity, an RTOS and drivers for sensors and I/O devices.

Mbed OS provides a platform that includes:

  • Security foundations.
  • Cloud management services.
  • Drivers for sensors, I/O devices and connectivity.

Release notes

The release notes detail the current release. You can also find information about previous versions.

Getting started for developers

We have a developer website for asking questions, engaging with others, finding information on boards and components, using an online IDE and compiler, reading the documentation and learning about what's new and what's coming next in Mbed OS.

Getting started for contributors

We also have a contributing and publishing guide that covers licensing, contributor agreements and style guidelines.