Wired Communications Middleware for NXP Microcontrollers



Wired Communications Middleware MCUXpresso Ecosystem

Wired Communications Middleware MCUXpresso Ecosystem

MCU Minutes | CANopen and CANopen FD in the MCUXpresso SDK

MCU Minutes | CANopen and CANopen FD in the MCUXpresso SDK thumbnail

Libraries and examples provided through MCUXpresso SDK

  • NXP has developed a wide range of wired communications libraries and collaborates with select partners to offer complementary specialized stacks. Each solution is fully integrated into the MCUXpresso SDK and comes with ready-to-use software examples to help you complete an in-depth evaluation and get started with your design.

USB Applications

  • Source code provided
  • Complimentary for use on any NXP devices
  • Wide range of USB device, host, audio and OTG examples
  • Bare metal or RTOS based

CAN and CAN-FD Applications

  • CANopen and CANopen FD stacks from EmSA
  • CANopen configuration tools supplied
  • CAN and CAN-FD drivers and examples provided by NXP for use with other protocols
  • Evaluation version provided in MCUXpresso SDK

Ethernet Applications

  • Based on popular, open source LwIP TCP/IP stack
  • Source code provided
  • Several examples included, covering common use cases
  • Bare metal or RTOS based
  • Complimentary for use on NXP devices

USB Applications

NXP’s USB applications host and device libraries are provided with full source code and a wide range of examples. The MCUXpresso SDK default configurations include all of the necessary drivers and several example applications to help you take full advantage of USB features, and the MCUXpresso peripheral tools enable you to quickly and easily configure USB drivers for your application needs. Examples are provided as bare metal and RTOS-based implementations, with build options for full- and high-speed USB.

  • USB device classes/examples
    • Composite devices (CDC), including mass storage and VCOM
    • Generic human interface device (HID), including mouse and keyboard emulation plus use of suspend/resume
    • Mass storage class and RAM disk
    • Device firmware update (DFU)
    • Smart card
    • Audio generators, speakers and combined audio devices
    • Virtual network interface (NIC)
    • Weigh scale
    • Printer
    • Camera
  • USB host-side class support
    • Composite device
    • Human interface device (HID), including use of suspend/resume
    • Audio speaker
    • Mass storage device (MSD)
    • Printer (plain text)
    • Video camera
    • Personal healthcare device (PHDC)
  • USB audio 2.0 classes and examples
  • USB Type-C power delivery
Host Device
Device Family Core Power delivery**
Camera Printer,
K2x Cortex-M4
K32 L2x Cortex-M0+
K32 L3x Cortex-M4
K6x Cortex-M4
K8x Cortex-M4
LPC51U68 Cortex-M0+
LPC5411x Cortex-M4 + Cortex-M0+
LPC54S/540xx Cortex-M4
LPC54S018JxM Cortex-M4
LPC546xx Cortex-M4
LPC551x/S1x Cortex-M33
LPC552x/S2x Cortex-M33
LPC55S6x Dual Cortex-M33
i.MX RT5xx Cortex-M33 + Cadence® Tensilica® Fusion F1 DSP
i.MX RT6xx Cortex-M33 + Cadence Tensilica HiFi 4 DSP
i.MX RT101x Cortex-M7
i.MX RT102x Cortex-M7
i.MX RT105x Cortex-M7
i.MX RT106x Cortex-M7
i.MX RT1170 Cortex-M7 + M4

**Requires USB PD products from NXP

CAN and CAN-FD Applications

NXP has partnered with Embedded Systems Academy (EmSA) to offer CANopen and CANopen FD libraries based on its Micro CANopen Plus stack for our CAN / CAN-FD enabled microcontrollers. These libraries are free to use, and available through the MCUXpresso SDK with fully-functional example applications that implement CANopen and CANopen FD devices and managers. EmSA has made their CANopen Architect Software available as a complimentary download to help you go beyond the examples and generate custom configurations.

  • CANopen Device library and CANopen Manager library
  • CANopen FD Device library and CANopen FD Manager library
  • Functionality suitable for simple I/O devices and control applications that can pass the official CANopen Conformance Test (extended functionality libraries available from EmSA)
  • Object Dictionary contents can be freely configured using EmSA’s CANopen Architect Standard EDS editor
  • Compatible with CANopen monitoring, configuration or analysis tools such as CANopen Magic

EmSA’s stacks utilize NXP’s CAN and CAN-FD SDK drivers, which are provided with full source code and basic examples.

Device Family* Core CAN drivers CAN-FD drivers EmSA CANopen stack EmSA CANopen FD stack Recommended Evaluation Board(s)
[Click to access SDK]
KE Cortex-M0+/M4
K6x Cortex-M4
LPC54S/540xx Cortex-M4 LPCXpresso54018 + OM13099
LPCXpresso54S018 + OM13099
LPC54S018JxM Cortex-M4 LPCXpresso54S018M + OM13099
LPC5460x Cortex-M4 LPCXpresso54628 + OM13099
LPC5461x / 62x Cortex-M4 LPCXpresso54628 + OM13099
LPC551x / S1x Cortex-M33 LPCXpresso55S16
i.MX RT102x Cortex-M7 MIMXRT1020-EVK
i.MX RT105x Cortex-M7 MIMXRT1050-EVKB
i.MX RT106x Cortex-M7 Coming soon MIMXRT1060-EVK

*Functionality may not be available on all parts within each family listed above.

Ethernet Applications

NXP’s Ethernet driver and middleware libraries are provided with full source code - complete with driver and network interface-level applications. Examples are based on the popular, open-source LWIP TCP/IP library, and are provided as bare metal and RTOS-based implementations. In addition, full cloud-connected applications are provided for select platforms. Examples provided show use of most commonly used networking elements:

  • HTTP server with and secure HTTP server using MbedTLS and WolfSSL (evaluation version)
  • DHCP and static IP allocation
  • TCP
  • UDP
  • MQTT
Secure server
Device Family* Core
K6x Cortex-M4
LPC54S/540xx Cortex-M4
LPC54S018JxM Cortex-M4
LPC546xx Cortex-M4
i.MX RT102x Cortex-M7
i.MX RT105x Cortex-M7
i.MX RT106x Cortex-M7