You are viewing an older revision! See the latest version
Networking
Networking
New networking stack
Note that this page refers to the new officially supported networking stack, which is designed to supercede the previous networking stack.
Most networking examples on mbed still rely on the old stack, but all new stack development will take place on this version.
Introduction¶
The mbed microcontroller is quite capable of connecting to the internet, and functioning as client or server for a variety of protocols. To achieve this, the LwIP TCP/IP stack has been ported to mbed.
Getting started¶
Step one, physical connection¶
On the RJ45 page you will find wiring diagrams for popular RJ45 sockets. You can skip this step if you have a baseboard with RJ45 socket. (see list of baseboards on the cookbook homepage)
Step two, set up the networking stack¶
On the Ethernet Interface page you will find everything you need to set an IP address, and bring up the stack.
Next steps¶
Afterwards, you should hopefully have TCP/IP up and running over Ethernet.
Where to look next:
- Details of support for protocols such as HTTP can be found at: TCP IP protocols and APIs
- The raw socket API is at Socket.
About this networking stack¶
Introduction¶
On February 2012 we finally added an mbed RTOS among the officially supported mbed libraries. This allowed us to finally add an officially supported networking stack providing the familiar Berkeley sockets programming interface.
The previously community supported stacks, because of the lack of an operating system, could only support a "polling" paradigm. Besides, providing a more familiar programming interface, this new networking stack provides an impressive performance improvement: benchmark.
System overview¶
Let's analyse the above layers from top down:
- Your networking applications will very likely rely on a specific protocol (HTTP, NTP, FTP, etc), or API (Twitter, Cosm, Evrythng, etc). You can see a list of the protocol and API libraries developed by the mbed community on this page: TCP/IP Protocols and APIs
- The EthernetInterface library is wrapping all the other libraries with a specific configuration for the Ethernet transport. In particular, its subcomponents are:
Interface drivers¶
The networking stack is currently supporting two different transports:
RTOS and threading model¶
Where to get help¶
If you have questions on the usage of this stack, the best place to ask is in the Forum.