Skip to main content

Arm Mbed Enabled Categories and Technical Requirements

For a product to be validated as an official Arm® Mbed Enabled™ product, it must fall under one of the following categories, and must meet the compliance criteria and technical requirements defined for that category.

Mbed Enabled Product Categories

  • Module: Hostless module which includes a target and supports one of the connectivity protocols officially available in Mbed OS.
  • Board: A development platform including a suitable microcontroller target, programming and debugging interfaces, and optional peripherals containing a MCU
  • Interface: Hardware circuit and accompanying firmware that is used for development, debug and testing software that runs on Arm based microcontrollers. It provides access to the Arm CPU debug access port.
  • End Product: A product that utilizes Arm Mbed technology in its creation (i.e. not a developer product).

Please note that we are no longer accepting submissions for Mbed OS 2. All submissions must support Mbed OS 5. 

The compliance criteria and technical requirements below align with the latest Mbed OS release.

Compliance Criteria

All Mbed Enabled products must meet all MUST compliance criteria and are encouraged to meet all SHOULD compliance criteria.

Module

Hostless modules which include a target and support one of the connectivity protocols officially available in Mbed OS.

  • MUST implement CMSIS-CORE, Mbed HAL and Mbed drivers in the current Mbed OS major release
  • MUST implement Mbed RTOS APIs (based on CMSIS-RTOS standard)
  • MUST support all major compilers for Arm architecture – GCC Arm, Arm Compiler 5 and IAR
  • SHOULD implement entropy source support
  • MUST pass all Mbed OS validation tests for the current major release
  • MUST support one of the connectivity protocols officially available in Mbed OS
  • SHOULD support all additional connectivity protocols that are available
  • MUST pass functional test suites (specific to each connectivity type)
  • MUST pass system test suites (specific to each connectivity type)
  • MUST provide an example application which connects the device to Mbed Cloud (if IP-based connectivity is supported)
  • MUST have Mbed Enabled Interface firmware available (see compliance criteria for Interface)
  • MUST have a pinout diagram based on the Mbed pinout template
  • MUST provide product photo, description, features and other marketing collateral
  • MUST have technical documents available for download from the Mbed OS website
  • MUST have EDA consumable files available for download from the Mbed OS website
  • MUST provide a comprehensive example using all onboard Components in a meaningful way
  • MUST have a public issue tracker and feedback mechanism
  • MUST have a support engineer on the Mbed OS website to monitor community questions/feedback regarding the product and supporting software
  • MUST provide 10x units mounted on MCBs (Module Carrier Board) with for validation and regression testing
  • MUST have a license identifiable using SPDX
  • MUST have an Mbed Partner Agreement
Board

Development or evaluation boards that include a Target and an Interface.

  • MUST implement CMSIS-CORE, Mbed HAL and Mbed drivers in the current Mbed OS major release
  • MUST implement Mbed RTOS APIs (based on CMSIS-RTOS standard)
  • MUST support all major compilers for Arm architecture – GCC Arm, Arm Compiler 5 and IAR
  • SHOULD implement entropy source support, if provided by the SoC, module or board
  • MUST pass all Mbed OS validation tests for the current major release
  • MUST have an Mbed Enabled Interface circuit and firmware available (see compliance criteria for Interface)
  • MUST have a pinout diagram based on the Mbed pinout template
  • MUST provide product photo, description, features and other marketing collateral
  • MUST have technical documents available for download from the Mbed Developer website
  • MUST have EDA consumable files available for download from the Mbed Developer website
  • MUST provide a comprehensive example using all onboard Components in a meaningful way
  • SHOULD use supported Components
  • MUST have a public issue tracker and feedback mechanism
  • MUST have a support engineer on the Mbed Developer website to monitor community questions/feedback regarding the product and supporting software
  • MUST provide 10x units mounted on a PCB with for validation and regression testing
  • MUST have a license identifiable using SPDX
  • MUST have an Mbed Partner Agreement
Interface

A hardware circuit and accompanying firmware that is used for development, debug and testing software that runs on Arm based microcontrollers. It provides access to the Arm CPU debug access port.

  • MUST support a Mbed htrun plug-in. For compatibility requirements see htrun porting guide
  • MUST be identifiable by Mbed-ls. For compatibility requirements see Mbed-ls porting guide
  • MUST implement the following firmware behaviors as a USB Composite Device
    • USB MSC -- Mass Storage Device Class
      • SHOULD support programming hex files
      • MUST contain a read-only HTML-5 compliant htm file
      • SHOULD be named mbed.htm
      • MUST have a method for reading the contents of target flash
      • MUST have a details file containing board ID and circuit ID
      • MUST indicate failure status of programming operation
      • MUST support programming binary files
      • SHOULD redirect to the mbed.com product specific page
    • USB CDC -- Communication Device Class
      • MUST support at all standard baudrates 9600 thru 115200
      • MUST Support ACM ‘SendBreak’ resulting in target reset sequence
      • SHOULD support all standard baudrates 2400 thru 921600
    • USB HID -- Human Interface Device or similar
      • MUST support a channel used for debugging
      • SHOULD be CMSIS-DAP
  • MUST have technical support documents available for download from Mbed.com
  • MUST have EDA consumable files available for download from Mbed.com
  • MUST have a public issue tracker and feedback mechanism
  • MUST have an Mbed Partner Agreement
End Product

A product that utilize Arm mbed technology in its creation (i.e. not a developer product).

  • MUST be based on Arm Mbed technology
  • MUST complete a questionnaire about the end product to be reviewed by the Mbed Enabled review committee
  • SHOULD complete a technical review of end products implementation (NDA available if required)

Technical Requirements

All Mbed Enabled products must pass the test defined by these technical requirements.

Module 

Hostless modules which include a target and support one of the connectivity protocols officially available in Mbed OS.

  • Target port merged mainline in https://github.com/ARMmbed/mbed-os/ according to Mbed OS 5 porting and contributor guidelines
  • Passing tests suite and all test plans for ('mbed test -t <arm, iar, gcc_arm> -m <target name>')
    • u-test framework
    • CMSIS-CORE
    • Mbed HAL
    • Mbed RTOS
  • Mbed HAL requirements:
    • Timing resource capable of 1us interval
    • Low power timing resource capable of 1ms interval
    • Dynamic GPIO configuration
    • Sleep able to enter WFI
  • Mbed RTOS requirements:
    • RTOS must be enabled and capable of 1 thread minimum (i.e. main thread)
Board 

Development or evaluation boards that include both a Target and an Interface.

  • Target port merged mainline in https://github.com/ARMmbed/mbed-os/ according to Mbed OS 5 porting and contributor guidelines
  • Passing tests suite and all test plans for ('mbed test -t <arm, iar, gcc_arm> -m <target name>')
    • u-test framework
    • CMSIS-CORE
    • Mbed HAL
    • Mbed RTOS
  • Mbed HAL requirements:
    • Timing resource capable of 1us interval
    • Low power timing resource capable of 1ms interval
    • Dynamic GPIO configuration
    • Sleep able to enter WFI
  • Mbed RTOS requirements:
    • RTOS must be enabled and capable of 1 thread minimum (i.e. main thread)
Interface 

Hardware circuit and accompanying firmware that is used for development, debug and testing software that runs on Arm based microcontrollers. It provides access to the Arm CPU debug access port.

  • Compatible with and supported by Mbed host test (https://github.com/ARMmbed/htrun)
  • Compatible with and supported by Mbed-ls (https://github.com/ARMmbed/mbed-ls)
  • Have product specification document publicly available (e.g. http://mbed.com/daplink)
  • Have a schematic publicly available (e.g. https://os.mbed.com/teams/mbed/code/mbed-HDK)
  • Have a public issue tracker and feedback mechanism (e.g. https://github.com/ARMmbed/DAPLink/issues)
  • Implement the following firmware behaviors as a USB Composite Device and be compatible with all actively supported versions of Windows, Mac and Linux operating systems
    • USB Filesystem -- A disk drive with product information. Drag-and-drop action programs the target MCU memory.
    • USB Serial Port -- A virtual comport that has exposes connections for UART transmit and receive pin. The 'Send Break' command results in a reset sequence.
    • USB Debug -- A connection that allows programming and debugging from the host PC.
End Product

A product that utilizes Arm Mbed technology in its creation (i.e. not a developer product).

  • Completed questionnaire and technical review with end product review team

Apply

Ready to apply? Before applying review the technical requirements and ensure your product meets all requirements before submitting your application using the Mbed Enabled for Mbed OS 5 application form.

Trademark Guidelines

The Arm Mbed Trademark Guidelines are available to partners from the Partner Portal. Please note that you must be logged in to view this content. 

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.