Initially excited, now disappointed.

03 Mar 2013

Hi all,

I have only been using the mbed for about a week, and I feel I should make my observations known.

Firstly, I am impressed with the hardware, very nicely designed and made. I think the compiler is fairly good; no complaints, but I really miss auto-completion!

I thought that the amount of code/libraries available online was a good thing. However, I quickly realized that finding a compatible library among all the similarly named libraries etc was a bit of a nightmare. Different versions, classes with same names; organizational mess.

What prompted me to use mbed in the first place was that in my last project, an AVR 8bit/ENC28J26 sensor station/web server, I tried several different stacks; each with their own shortcomings, either slow performance or a lack of multiple packets capability. So, when I found mbed, I was excited. It looked very promising at first, nice fast 32 bit MC, built-in Ethernet, support from an online community etc. Anyway, having tried a lot of the mbed HTTPServer examples, it seems that the Ethernet is far from perfect. During all of my tests I would often get the error "Server Reset"!!! Sometimes fast, sometimes slow, sometimes no response!!! SOMETIMES. Mbed says that we should use the all new, much improved EthernetInterface library, but it is unusable without a HTTPServer. I can not understand why the mbed team does not prioritize the building of the new EthernetInterface HTTPServer. The only reason I am interested in the mbed device is the promise of a decent web server. For projects that do not require Ethernet I would probably use an 8 bit AVR or PIC anyway. Instead of prettying up the website, making new cheap entry boards (FRDM-KL25Z), please take care of the users you have and get the Ethernet library up to scratch! Please....

Steve

03 Mar 2013

Below is the just my opinion:

The small mbed team has done a great job over a short period of time

  1. Web-based compiler
  2. Easy-to-use library
  3. Web 2.0 forum
  4. mbed 2.0 (open source hardware and software, etc., etc.)

These are provided with a small cost $59. I think it is quite reasonable.

With the open-source of mbed libraries, I believe the core library will be improved over a shorter period of time.

I did not come across any microcontroller manufacturer provides robust and yet open-source library for people to use. Most of the libraries are provided just to prove a concept or show a feature and tied to a particular series or model of MCU. The current mbed implementation could be easily ported to several cortex M-series MCU easily.

If auto-completion is of high priority, then I recommend to use sublime text 2. I myself edit source code using editor in my computer, and then cut-and-paste into the online IDE. I find the online IDE editor is too small and does not support multi-windows and multi-views.

03 Mar 2013

Thanks for your thoughts, HM Yoong. I CAN live without the auto-complete :) Ethernet, on the other hand, is the killer.

03 Mar 2013

after all this time, still no robust IP protocol suite to include TCP, UDP, broadcast, DHCP, ARP, etc? I suppose this means that to get such, one has to hire the work done and get NXP to pay for it?

Is LWIP just too buggy or is the mbed port/adaptation buggy, or is LWIP just fine and users don't know how to employ it?

03 Mar 2013

Steve Childress, do not get confused by Steve Spence post.

Steve Spence did not find any problem in the official Ethernet library, he is complaining about the lack of an official HTTP Server.

Our official Socket API had few shortcomings regarding Multicasting and Broadcasting, but we addressed them the past Friday: http://mbed.org/handbook/Socket

We are already using the latest Ethernet driver from NXP.

We did not yet do extensive reliability testing, but we had reports of instabilities after more than 6 hours of continuous operation. We will investigate it further.

Cheers, Emilio

05 Mar 2013

None of the TCP/IP protocols, or service APIs, will be officially developed by the mbed team. Unfortunately, we do not have the resources to do that. Moreover, given the constrained resources, very likely it will not be possible to have an HTTP Server satisfying everyone requirements. More likely there will be multiple HTTP Servers addressing different use cases.

Thanks to Takuya Urakawa, there is a first simple HTTP Server based on the official TCP/IP libraries.

A full list of applications is here: TCP IP protocols and APIs.

Cheers, Emilio

05 Mar 2013

My initial ideas:

  1. Port over a small footprint asynchronous Ethernet driver from Linux or BSD (is there any?)
  2. Define the requirement for HTTP server (e.g., serve only static pages, or with PHP support, etc.)

Only then seek volunteers to work on it.

Any comment?

Further to the initial post, I just found

  1. FNET Network Stack for LPC176x
06 Mar 2013

Emilio Monti wrote:

Steve Childress, do not get confused by Steve Spence post.

Steve Spence did not find any problem in the official Ethernet library, he is complaining about the lack of an official HTTP Server.

Our official Socket API had few shortcomings regarding Multicasting and Broadcasting, but we addressed them the past Friday: http://mbed.org/handbook/Socket

We are already using the latest Ethernet driver from NXP.

We did not yet do extensive reliability testing, but we had reports of instabilities after more than 6 hours of continuous operation. We will investigate it further.

Cheers, Emilio

Please clarify: The http://mbed.org/handbook/Socket code is or is not what we should use going forward? Yes, it doesn't have the application functions such as clients or servers for SMTP or HTTP, but code for those, using sockets, exists widely. The question is: if the socket code and IP itself is stable for mbed, why is there talk of abandoning it and moving to an entirely new baseline? Moreover, what's wrong with LWIP for mbed? Maybe nothing is wrong?

06 Mar 2013

HM Yoong wrote:

Port over a small footprint asynchronous Ethernet driver from Linux or BSD (is there any?)

Independently of the underlying implementation (lwIP), this is our TCP/IP Socket API: http://mbed.org/handbook/Socket

HM Yoong wrote:

Define the requirement for HTTP server (e.g., serve only static pages, or with PHP support, etc.)

Given the constrained resources of a microcontroller, very likely it will not be possible to have a single HTTP Server satisfying everyone requirements. More likely there will be multiple HTTP Servers addressing different use cases.

steve childress wrote:

Please clarify: The http://mbed.org/handbook/Socket code is or is not what we should use going forward?

Yes, it is the official supported socket API that the we will maintain.

steve childress wrote:

clients or servers for SMTP or HTTP, but code for those, using sockets, exists widely.

Exactly.

steve childress wrote:

The question is: if the socket code and IP itself is stable for mbed, why is there talk of abandoning it and moving to an entirely new baseline? Moreover, what's wrong with LWIP for mbed? Maybe nothing is wrong?

There is no talk of abandoning lwIP for mbed on our side. We are just working on improving it.

Cheers, Emilio

13 Mar 2013

Hi all, Is the normal ethernet Library also okay to use with the new FRDM-KL25Z?

whilst the FRDM-KL25Z looks like a fantastic update at a price thats also really good, the lack of ethernet is a reasonable problem personally, and the quicker we can have some good info on either an I2C,SPI or RS232 - ethernet module the better.

Also as the FRDM-KL25Z has USB Host does this mean a decent USB Wifi solution could be found?

Mark

14 Mar 2013

Mark Bauer wrote:

Hi all, Is the normal ethernet Library also okay to use with the new FRDM-KL25Z?

whilst the FRDM-KL25Z looks like a fantastic update at a price thats also really good, the lack of ethernet is a reasonable problem personally, and the quicker we can have some good info on either an I2C,SPI or RS232 - ethernet module the better.

Also as the FRDM-KL25Z has USB Host does this mean a decent USB Wifi solution could be found?

Mark

If you want Arduino+Ethernet+mbed Simplecortex might be a possibility. Though it is not officially mbed ready it is based on the LPC1769, that is just a faster LPC1768 as used in mbed. http://www.brc-electronics.nl/

14 Mar 2013

Geert Hospers wrote:

Mark Bauer wrote:

Hi all, Is the normal ethernet Library also okay to use with the new FRDM-KL25Z?

whilst the FRDM-KL25Z looks like a fantastic update at a price thats also really good, the lack of ethernet is a reasonable problem personally, and the quicker we can have some good info on either an I2C,SPI or RS232 - ethernet module the better.

Also as the FRDM-KL25Z has USB Host does this mean a decent USB Wifi solution could be found?

Mark

If you want Arduino+Ethernet+mbed Simplecortex might be a possibility. Though it is not officially mbed ready it is based on the LPC1769, that is just a faster LPC1768 as used in mbed. http://www.brc-electronics.nl/

Looks like an okay device - cheaper than the older mbed device but the KL25Z hits the right price point for the project we're starting to work on.