Commit Graph

124 Commits (ee5c8135e45cd2832b459c0459479d6cc13000d5)

Author SHA1 Message Date
Christopher Haster e3cb10f134 Revert "Revert "Add the C027Interface""
This reverts commit 0aa9bd0bf2.
2016-06-05 18:45:12 -05:00
Yogesh Pande 7f9d06f2ce Updating mbed-client-classic repo pointer
This commit includes
- Udpating mbed-client-classic repository pointer after removing threadwrapper.h
2016-06-03 09:52:21 +03:00
Yogesh Pande 13814e4c12 Updating mbed-client related git repo pointers
This commit updates
 - mbed-client.lib
 - mbed-client-c.lib
 - mbed-client-classic.lib
 - nanostack-hal-mbed-cmsis-rtos.lib
2016-06-02 17:04:12 +03:00
Seppo Takalo 94c931ca7b Update Nanostack 2016-06-02 12:12:16 +03:00
Martin Kojtal 0aa9bd0bf2 Revert "Add the C027Interface" 2016-06-01 13:50:52 +01:00
Sam Grove 834fc28bdb Merge pull request #108 from geky/c027
Add the C027Interface
2016-06-01 07:51:28 +08:00
Yogesh Pande b5a8dcf374 Updating mbed-client-classic repo with latest reconnection logic.
This commit includes
 - Reconnection logic porting from existing mbed OS implementation.
 - Tested on Ethernet.
2016-05-31 14:42:14 +03:00
Russ Butler eb76d0ebd6 Pull in lwip-eth updates from mbedmicro/mbed
Sync the directory lwip-eth with that of mbedmicro/mbed at revision
b32f7a9aaf.
2016-05-28 00:08:28 -05:00
Russ Butler 966ef8c35e Remove hal
Remove all the hal files in preparation for pulling in mbedmicro/mbed.
2016-05-27 17:53:53 -05:00
Russ Butler a659b47785 Pull up on atmel-rf-driver to fix older IAR
Bring in changes to support older versions of IAR.
2016-05-27 14:08:49 -05:00
Martin Kojtal 08ecdb296b Merge pull request #139 from geky/callback-fixes
Small fixes for issues with Callback class
2016-05-27 09:14:02 +01:00
geky 11baa9dce0 Merge pull request #144 from devran01/master
Incrase netif_up semaphore timeout from 1500ms to 2500ms
2016-05-26 10:46:30 -05:00
Russ Butler bd3ad9d6ff Remove mirror repos
Remove all of the repos which are being automatically mirrored.  The
addition of .mbedignore allows these repos to be used directly.

Also pull up on nanostack-hal-mbed-cmsis-rtos.lib to bring in new
features required by the updated repos.
2016-05-26 09:29:20 -05:00
Devaraj Ranganna 506d63e8b7 Incrase netif_up semaphore timeout from 1500ms to 2500ms 2016-05-26 11:18:45 +01:00
Christopher Haster 753720af56 Fixed ambigous function declarations in serial class
Caused by default argument and overly generalized templated types.

SerialBase::attach(T *obj, M method, IrqType type=RxIrq)
->
SerialBase::attach(T *obj, void (T::*method)(), IrqType type=RxIrq)
SerialBase::attach(T *obj, void (*method)(T*), IrqType type=RxIrq)
2016-05-25 15:24:54 -05:00
Russ Butler a4355ce81a Fix atmel-rf-driver to use mirror repo SHA
The atmel-rf-driver-mirror repo is pointing to a SHA in the
atmel-rf-driver repo.  This prevents mbed-os from building.
This patch updates atmel-rf-driver.lib to point to the correct
SHA.
2016-05-25 09:01:48 -05:00
Russ Butler 14e235ae46 Update libraries for IAR support
Pull up on libraries so they support IAR.
2016-05-24 14:38:34 -05:00
Russ Butler 960941cb0a Add IAR support
Make the following changes for IAR support:
-define __deprecated_message for IAR
-fix python error in iar.py
-move variable length array in buffered serial from cpp file to c file.
    IAR only supports variable length arrays in c.
2016-05-24 14:37:14 -05:00
Sam Grove 02a23c22ad Merge pull request #103 from geky/esp8266-non-blocking
Add non-blocking support to ESP8266Interface
2016-05-20 16:03:40 -05:00
Russ Butler e920f247bf Update mbed-client repos
Update the mbed-client repos to bring in the latest changes.  With
this PR the mbed-client repos now point to commits mirrored from
the real repo rather than a morpheus fork.
2016-05-18 09:42:59 -05:00
Sam Grove 7d541a9cbd Merge pull request #104 from theotherjimmy/buffered-serial-printf
removed warning about unsigned to signed cast
2016-05-18 02:02:59 -05:00
Jimmy Brisson 59ed1bef61 removed warning about unsigned to signed cast 2016-05-17 13:35:24 -05:00
Russ Butler 64cd1f3dfb Fix SocketAddress constructor to support ipv6
Fix typo causing ipv6 addresses in the constructor to fail.
2016-05-17 08:24:10 -05:00
Christopher Haster 9ce315a18c Increase C027 buffers to handle DTLS packets 2016-05-17 04:06:03 -05:00
Christopher Haster 901dcbd893 Fix C027 endianness issue 2016-05-17 03:05:24 -05:00
Christopher Haster 88293b54f1 Fix idiosyncratic non-blocking behaviour in C027 2016-05-17 02:48:47 -05:00
Christopher Haster a878b60a0a Add background thread to emulate attach callback for C027 2016-05-17 01:22:53 -05:00
Christopher Haster 467a31f263 Add C027Interface 2016-05-17 01:22:52 -05:00
Christopher Haster 4f8e8f5d75 Add non-blocking support to ESP8266Interface
requires changes in the following
- BufferedSerial
- ESP8266
- ESP8266Interface
2016-05-16 20:40:57 -05:00
Christopher Haster dd6a24b76d Adopt Callback class in NetworkSocketAPI 2016-05-16 11:48:09 -05:00
Russ Butler b15e2c293e Add synchronization to the network socket API
Add mutexes to protect the network socket API.  Also use semaphores to
wait for read/write events.  Also fix a typo in the comments for
timeout.
2016-05-15 18:03:48 -05:00
Russ Butler c8fc4dff6d Update Nanostack related libs
Update library files related to Nanostack to bring in Network Socket
API support.
2016-05-15 18:03:40 -05:00
Christopher Haster 83f65c0d3a Add rudimentary support for server side
mirrored from:
https://developer.mbed.org/teams/NetworkSocketAPI/code/LWIPInterface/
2016-05-13 11:41:20 -05:00
Christopher Haster 9e415df196 Match changes to NSAPI in LWIPInterface
mirrored from:
https://developer.mbed.org/teams/NetworkSocketAPI/code/LWIPInterface/
2016-05-13 11:41:19 -05:00
Christopher Haster 4684173778 Match changes to NSAPI in ESP8266Interface
mirrored from:
https://developer.mbed.org/teams/components/code/ESP8266Interface/
2016-05-13 11:41:18 -05:00
Christopher Haster 7d9b5e6f76 Small bug fixes
mirrored from:
https://developer.mbed.org/teams/NetworkSocketAPI/code/NetworkSocketAPI/

- Fix bug with SocketAddress init per @c1728p9
- Fix issue with not passing interface through accept call
- Fix port issue in SocketAddress constructor
2016-05-13 11:41:17 -05:00
Christopher Haster 8304124a63 Add NSAPI_ERROR_PARAMETER
per @c1728p9
2016-05-13 11:41:16 -05:00
Christopher Haster bcab0fcef5 Added WFI to save power in temporary polling implementation 2016-05-13 11:41:15 -05:00
Christopher Haster 5475dd0404 Consolidate set_timeout/set_blocking behaviour
- Avoids ambiguity when both are used
- Matches Python behaviour
2016-05-13 11:41:14 -05:00
Christopher Haster d17fa4faad Separate Stack/Interface concept into two distinct classes 2016-05-13 11:41:13 -05:00
Christopher Haster 49ba2be3a7 Add standardized stack options 2016-05-13 11:41:11 -05:00
Christopher Haster 893dfec7e6 Added workaround for bug in newlib sscanf
https://bugs.launchpad.net/gcc-arm-embedded/+bug/1399224
2016-05-13 11:41:10 -05:00
Russ Butler 57de57efc5 Update libraries to match the latest NSAPI
Update the library references for mbed-client-classic and
sal-iface-6lowpan-morpheus-private.
2016-05-13 11:41:09 -05:00
Christopher Haster f4526e5b73 Fix race condition in socket close 2016-05-13 11:41:08 -05:00
Christopher Haster 16929af278 Rename Interface -> Stack
NetworkInterface  -> NetworkStack
EthernetInterface -> EthernetStack
WiFiInterface     -> WiFiStack
CellularInterface -> CellularStack
MeshInterface     -> MeshStack
2016-05-13 11:41:07 -05:00
Christopher Haster 55f7d29fc3 Revised documentation for Interface classes 2016-05-13 11:41:06 -05:00
Christopher Haster d43f8706d3 Revisited documentation for Socket API 2016-05-13 11:41:05 -05:00
Christopher Haster eab6d775ac Removed is_connected function
- Not supported by TCP/UDP protocols
- Uncommon and less useful with proper error handling
2016-05-13 11:41:04 -05:00
Christopher Haster 50a9143478 Revisited documentation for NetworkInterface specific methods 2016-05-13 11:41:03 -05:00
Christopher Haster 59549cb4df Standardized comment style 2016-05-13 11:41:02 -05:00
Christopher Haster e762b04f64 Added support for shortened form ipv6 addresses
supported:
    1.2.3.4
    1:2:3:4:5:6:7:8
    1:2::7:8
    ::

currently not supported:
    1:2:3:4:5:6:1.2.3.4
2016-05-13 11:41:01 -05:00
Christopher Haster 525c7b361c Revised stack specific configurations
Adds the following functions for direct configuration of interface
- (set|get)stackopt
- (set|get)sockopt
2016-05-13 11:41:00 -05:00
Christopher Haster c4506dc1c0 Move bind to Socket
Bind can operate on any IP socket and is not specific to a protocol
2016-05-13 11:40:59 -05:00
Russ Butler fa45131245 Fix ipv6 addr in SocketAddress
Correctly set and return the ipv6 address.
2016-05-13 11:40:58 -05:00
Christopher Haster 141b245dfc Added better support for SocketAddress/string addresses/ports 2016-05-13 11:40:57 -05:00
Christopher Haster d488f02f5e Move to SocketAddress in gethostbyname 2016-05-13 11:40:55 -05:00
Christopher Haster 62bb777c1f Added support for storing bytes directly in SocketAddress
Bytes are stored by default, however enough space is allocated in
a SocketAddress to generate the string representation if necessary.

Currently there is no support for shortened addresses
2016-05-13 11:40:54 -05:00
Christopher Haster 455f023949 Renamed NetworkInterface create/destroy methods to match Socket methods
- socket_create -> socket_open
- socket_destroy -> socket_close
2016-05-13 11:40:53 -05:00
Christopher Haster c33d246fa6 Move to single state-change interrupt
Pros
- Easier to implement
- More similar to SIGIO in BDS sockets

Cons
- Less information, but this information had a high risk of being
  faulty/spurious
2016-05-13 11:40:52 -05:00
Christopher Haster c3eec0322b Remove shutdown parameter from close call
Pros
- Simplifies interface
- Easier base implementation

Cons
- May need shutdown functionality, in this case shutdown
  can be added as another function in the future
2016-05-13 11:40:51 -05:00
Christopher Haster 71efccb1e8 Add open call as alternative to passing NetworkInterface at construction
Pros
- Allows memory to be statically allocated
- Avoids issues with Thread creation before entering main
- Matches existing APIs such as FunctionPointer and Ticker

Cons
- Does not enforce passing a NetworkInterface
2016-05-13 11:40:50 -05:00
Christopher Haster 106e459a64 Adopt mbed style doxygen comments
per @0xc0170
2016-05-13 11:40:49 -05:00
Christopher Haster f0f7972a64 Move to asynch lwip sockets based on armmbed/sal-stack-lwip
Move the backend of LWIPInterface from the LWIP socket API to the
asynch UDP/TCP APIs used in https://github.com/armmbed/sal-stack-lwip.
Provides asynchronous functionality for the LWIPInterface.
2016-05-13 11:40:48 -05:00
Martin Kojtal 1524c5fca9 lwip - fix size of sys mutex for RTX 4.79
The size was increased to 4 bytes. Thanks @c1728p9 for spotting this.
2016-04-14 21:47:17 +01:00
Russ Butler 98a8c49f00 Add mesh interface header file
Add the mesh interface header file.
2016-04-10 23:37:23 -05:00
Russ Butler f23d6ce673 Add mirrored repos
Check in the mirrored repos
2016-04-10 23:37:22 -05:00
Christopher Haster 88ebec607e Added ESP8266Interface
- Blocking TCP/UDP
2016-04-06 13:01:08 -05:00
Christopher Haster 5b8b98a14b Updated mbed-client libs
Fixes #19
2016-04-06 12:30:49 -05:00
Christopher Haster 8a5121aaff Reverted merge of FuncPtr (#10)
Replaced FuncPtr with FunctionPointer in NSAPI
2016-04-06 11:23:42 -05:00
Christopher Haster 03475f35bb Matched changes NetworkSocketAPI
Responded to feedback from mbed-client implementation
to introduce a full feature set that should support most
of the use cases for the API.
2016-04-06 08:50:56 -05:00
Bogdan Marinescu 0c2d2b8c22 Preparing new layout - added networking deps 2016-04-05 16:40:58 +01:00
Bogdan Marinescu 1fd427fc59 Preparing new layout - moving lwip (2) 2016-04-05 16:40:57 +01:00
Bogdan Marinescu fa71088cdc Preparing new layout - moving lwip (1) 2016-04-05 16:40:57 +01:00
Bogdan Marinescu 882d3f4e48 Preparing new layout - added net/NetworkSocketAPI
Origin: https://developer.mbed.org/teams/NetworkSocketAPI/code/NetworkSocketAPI/
2016-04-05 16:40:57 +01:00