element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
RoadTests & Reviews
  • Products
  • More
RoadTests & Reviews
RoadTest Forum my mbed review
  • Blogs
  • RoadTest Forum
  • Documents
  • RoadTests
  • Reviews
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join RoadTests & Reviews to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 12 replies
  • Subscribers 2568 subscribers
  • Views 1480 views
  • Users 0 members are here
Related

my mbed review

Former Member
Former Member over 15 years ago
Technical reference
This mbed Microcontroller is based on a Cortex-M3 Core running at 96MHz, with 512KB FLASH, 64KB RAM and a load of interfaces including Ethernet, USB Device, CAN, SPI, I2C and other I/O.
 
Power consumption
- Powered by USB or 4.5v - 9.0v appiled to VIN
- <200mA (100mA with Ethernet disabled)
- Real-time clock battery backup input VB
- 1.8v - 3.3v Keeps Real-time clock running
- Requires 27uA, can be supplied by a coin cell
- 3.3v regulated output on VOUT to power peripherals
- 5.0v from USB available on VU (only available when USB is connected!)
-  Current limited to 500mA
- Digital IO pins are 3.3v, 40mA each, 400mA max total
 
Pins available
- Vin - External Power supply to the board
- 4.5v-9v, 100mA + external circuits powered through the Microcontroller
- Vb - Battery backup input for Real Time Clock 1.8v-3.3v, 30uA
- Active-low reset pin with identical functionality to the reset button.
- Pull up resistor is on the board, so it can be driven with an open collector
 
Compared to the Arduino, that I think it's wonderful, has several advantages:
- Considerable computing power
- More memory
- 3.3V but 5V tolerant (the cake and eat it too ")
- Very contained dimensions and spacers Friendly such as 40-pin DIP package
- A bag of devices, including Ethernet,
- GPIO pin can "source" 40mA
 
Think of it as Arduino: The Next Generation. Although the mbed board costs more up front than Arduino, there are capabilities here that would otherwise require costly “shields” and strain every last byte and CPU cycle of the 8-bit ATmega328 processor: Ethernet, USB, SD cards…mbed handles these tasks without any other addons.
 
The “mbed” module highlights how hardware has become “easyware.” Just plop down the MCU and a few LEDs, and voila, instant EV board. Actually, there are a couple of extra housekeeping chips on the underside of the board starting with a separate LPC MCU devoted to handling the USB interface with the host PC. The extra MCU frees up the main LPC USB interface for your application and minimizes the intrusiveness of host PC communication. There’s also an Ethernet transceiver (aka “PHY’) from National Semiconductor (DP83848). Getting on the ’Net can be as easy as adding an RJ-45 connector, especially since the National part has a “transformerless” option that uses capacitors, instead of a transformer, for coupling.
 
There’s zero software to install because the tools are web-based. Here’s how it works. All you do is connect the mbed module to a USB port and it is recognized by your PC as a generic mass-storage device just like a typical thumb drive. Open the mbed “drive” and look in the directory to find the “mbed.html” file. Double click it and it will open with your browser just like any other web page. Voila, you’re on the air and ready to start programming with nary a byte of software installed on your PC.
Invoking the “Compiler” link takes you to a web page that acts as an extremely simplified GUI. I guess you could call it a “WUI” (i.e., “Web-based User Interface”) that pretty much boils down to basic file operations (create, open, save) and a button that says “Compile.” Click that and a moment later a link appears that allows you to download the compiled code to your mbed “drive.” Then push the Reset button on the mbed module and the LPCx flashes itself with the new code and you’re off to the races.
 
Now that you’ve compiled and downloaded your code, it’s time to get up to speed with the debugger.
That doesn’t take long because there isn’t one. Time to resurrect the old ways and use PRINTF for debugging. To that end, the mbed library includes a feature that routes serial traffic across the USB
connection to a terminal emulator running on your PC . Other handy built-in routines are cover I2C, PWM, SPI, etc...
 
The real saving grace of this setup is the libraries, both the official functions in what they call the “Handbook,” and community-contributed code in the “Cookbook.” A tremendous amount of functionality has been implemented in a concise and usually object-oriented manner. It’s almost comical sometimes, after having worked with other microcontrollers and girding for some expected coding nightmare, only to find that the corresponding library handles a task in a couple of lines (browse through the Handbook and Cookbook for examples). There’s a tendency also to follow stdlib or “UNIX-like” conventions for file access, character I/O, realtime clock access, etc., so existing systems programmers new to microcontrollers will feel right at home, no weird function names or syntaxes.
Going beyond the built-in functions, the mbed webpage has a “Cookbook” link that takes you to a bunch of addon projects and examples. Many of these show how to connect the mbed module to popular I/O devices (e.g., LCDs, sensors, motors, etc.) and there are some handy utilities (e.g., a routine to set the real-time clock).
I found some interesting dishes in the “Cookbook,” starting with a simple web server that exercises the mbed Ethernet interface. Taking advantage of the National transceiver’s “transformerless” feature mentioned earlier, I was able to jack-in simply by cutting one end off an Ethernet cable and connecting the transmit and receive wires directly to the mbed module.
 
The Bad and the Ugly
 
There are just a few minor nitpicks: the indicator LEDs on the board. Four of them, scant millimeters apart, all blue…maybe different colors would help to indicate status of debugging better. The other point, referred to open source side, the chance to develop with gcc is not so easy.
If you find the Arduino editor aggravating, the mbed editor will be the same… Like Arduino, there’s no true tab formatting; everything’s expanded to spaces, like it or not. Auto-indent cannot be disabled, and there’s seemingly no command to increase or decrease the indentation of a block of code.
 
The closed-source nature of the tools may also be off-putting to some. If one finds the Arduino editor distasteful, there are options: get in there and change the code, or simply use a different editor and link with the Arduino libraries manually…it’s all legal and encouraged. With mbed, there are no alternatives.
 
The mbed Tour page is frank about what the platform is good for, and what it’s not. mbed was intended as a quick prototyping and educational tool, and at that it excels. A lack of features such as a debugger or offline compiler keep this from being a professional-strength development platform, which is okay.
  • Sign in to reply
  • Cancel
Parents
  • awinning
    awinning over 15 years ago

    Thanks for that Riccardo. I really enjoyed reading your review. I too like the way you made the comparrison to Arduino. I usually like to ask a question of a review. I can't find an aspect in your review that may have been missed


    Thanks again

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 15 years ago in reply to awinning

    Thank you for the compliments I hope that TIpiccolo kit would arrive

    to do another special review!!! ;P

     

    Best regards

    Riccardo

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • KennyMillar
    KennyMillar over 15 years ago in reply to Former Member

    Good review thanks!

     

    I watched the mbed webinar a few weeks back, and so was aware that it was really for proof of concept and rapid prototyping, rather than building beta products or debugging.

     

    If you get a chance, maybe you could write another review, sometime, detailing the development process - and the quantity/quality of libraries etc that are available, and how easy do you think it would be to go from mbed to production? Would it require a total re-work, or can you take the code with you from concept to reality?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • tayken
    tayken over 15 years ago in reply to KennyMillar

    Good review!

     

    The only advantage that pops into my mind is about always up to date libraries. As you don't need to download them, your source code will be based on the latest libraries available but is it really worth it? I mean the down side is that you have to be connected to the net all the time as Glenn said. I sometimes enjoy working on my code at a cafe or during my train ride to my lab where I won't have internet connection mostly (or at least a free one). Oh and another advantage that I can think of: As compiler is web based, you can use it with Windows and Linux without any problems, am I right?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 15 years ago in reply to tayken
    Interesting review, though some parts of it seem slightly familiar. Is that you phil?
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 15 years ago in reply to KennyMillar

    If you want to use mbed for production I think you need to switch to pure C libraries coming from NXP

    this is for 2 reasons:

    - better control of the bug of the libraries

    - possible optimization of the code

     

    Some other aspects bring me to think to avoid the mbed fo production project:

    - programming procedure is not so suitable...you need pc, usb, etc...nowdays the best way is for sure the

    use of a bootloader to flash the microcontroller remotly...

    - the debugging almost impossibile doesn't allow an easy devolopment of the code...especially when you need

    to manage multitask code like FSM or RTOS...sometime the emulation is essential!!! Otherise the is some trick

    to debug all register throught serial port with some deamons that you can include as a mini OS but it's needed

    a lot of time to develop them...

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • romilly
    romilly over 15 years ago in reply to Former Member

    What bugs have you found in the core mbed libraries, Richard? I have found none so far. I found a minor bug in one of the cookbook examples, but that's not surprising.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 15 years ago in reply to romilly

    no i didn't want to say that mbed library contains some bugs

    I wanted to say just that i you want to use somenthing in a production

    chain, you need to be sure at 100% of your basic libraries...

     

    In my opinion I'd prefer to use this 3 opensource altenative for an ARM architecture:

     

    http://www.netduino.com/

    Good hardware bur programming in .NET sdk should be dangerous because you loose any connection with the real hw

     

    http://www.bugblat.com/products/cor.html

    http://leaflabs.com/devices/maple/

    Both architecture based on STM32 arm cortex m3...

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Former Member
    Former Member over 15 years ago in reply to romilly

    no i didn't want to say that mbed library contains some bugs

    I wanted to say just that i you want to use somenthing in a production

    chain, you need to be sure at 100% of your basic libraries...

     

    In my opinion I'd prefer to use this 3 opensource altenative for an ARM architecture:

     

    http://www.netduino.com/

    Good hardware bur programming in .NET sdk should be dangerous because you loose any connection with the real hw

     

    http://www.bugblat.com/products/cor.html

    http://leaflabs.com/devices/maple/

    Both architecture based on STM32 arm cortex m3...

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • romilly
    romilly over 15 years ago in reply to Former Member

    Thanks for explaining, Riccardo, and for the links to the other systems.

     

    It looks as if the ARM is entering the hobbyist mainstream.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube