MicroEJ supports several NXP development boards

Get Started: Application Development on NXP OM13098: LPCXpresso54628 Development Board

Develop multi-languages (C, Java, etc.) applications on NXP OM13098: LPCXpresso54628 Development Board with MicroEJ Software Development Kit.

Follow the steps below to get your first app running on both a virtual device, and a real device (final hardware). In case you are not familiar with MicroEJ, please visit Discover MicroEJ to understand the principles of our technology.

1 – Download MICROEJ SDK

MICROEJ SDK is an IDE built on Eclipse for creating feature-rich applications for MicroEJ Virtual Execution Environment (VEE).


Supported Operating System

MICROEJ SDK runs on all popular desktops operating systems: Windows (7, 8, 8.1, 10), Linux, macOS.

A Java™ Runtime Environment 8 is needed on your host computer for running MICROEJ SDK. Download Java™ Runtime Environments


Download MICROEJ SDK

Click the below button to download the installer package corresponding to your host computer OS (about MICROEJ SDK download).

 

Download MicroEJ SDK Dist. 21.11

2 – Install MICROEJ SDK

  • Unzip the downloaded installer package, if needed.
  • Run the unzipped executable file.
  • On Windows, accept the administrator privileges elevation.
  • Follow the installer steps.
  • Proceed to the next step.

3 – Download And Use Your Virtual Device

  • Start MICROEJ SDK.
  • Select the workspace where to put your applications. If you are not familiar with Eclipse workspaces, select the default one and press Launch.
  • Select the repository where to put your Virtual Device. If you are not familiar with MicroEJ repositories, select the default one and press OK.
  • Select the Window > Preferences > MicroEJ > Virtual Device menu.
  • Download the Virtual Device (See release notes)
  • Press the Import... button and select the Virtual Device file previously downloaded (all virtual devices have the .vde extension).
  • Accept the license terms and press Finish. The MicroEJ Virtual Device is successfully installed.
  • Download your first application examples
  • Inside MICROEJ SDK.
  • Select File > Import... > General > Existing Projects into Workspace > Select archive file and select the downloaded archive.
  • Import everything to your workspace.
  • Your first applications are loaded, ready to execute:
    • com.microej.demo.hello.
    • com.microej.example.iot.ssl.rest.headless.

4 – Run the Examples on the Virtual Device

Running the UI Example

  • Right-click the MicroEJ project com.microej.demo.hello.
  • Then Run As > MicroEJ Application.
  • Select the VDE-BLUE-OM13098-PQ9Y4.
  • It should launch the simulation displaying the Front Panel (simulated device on PC).
  • The demo is displaying a simple UI on the Front Panel.


Running the REST Client Example

  • Right-click the MicroEJ project com.microej.example.iot.ssl.rest.headless.
  • Then Run As > MicroEJ Application.
  • Select the VDE-BLUE-OM13098-PQ9Y4.
  • It should launch the simulation displaying the Front Panel (simulated device on PC).
  • In the Eclipse Console you should have a similar trace printed:
=============== [ Initialization Stage ] ===============

=============== [ Converting fonts ] ===============

=============== [ Converting images ] ===============

=============== [ Launching on Simulator ] ===============

https example INFO: {"headers":{"user-agent":"Resty/0.1 (Java)","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","x-forwarded-port":"443"},"args":{},"url":"https://postman-echo.com/get"}

https example INFO: user-agent: Resty/0.1 (Java)

host: postman-echo.com

https example INFO: =========== POST REQUEST ===========

https example INFO: {"form":{},"headers":{"user-agent":"Resty/0.1 (Java)","content-length":"20","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","content-type":"text/plain; charset=UTF-8","x-forwarded-port":"443"},"files":{},"json":null,"data":"My POST request data","args":{},"url":"https://postman-echo.com/post"}

https example INFO: Data sent for POST request: My POST request data

https example INFO: =========== PUT REQUEST ===========

AbstractPage.renderContent()

AbstractPage.renderContent()

https example INFO: {"form":{},"headers":{"user-agent":"Resty/0.1 (Java)","content-length":"19","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","content-type":"text/plain; charset=UTF-8","x-forwarded-port":"443"},"files":{},"json":null,"data":"My PUT request data","args":{},"url":"https://postman-echo.com/put"}

https example INFO: Data sent for PUT request: My PUT request data

https example INFO: =========== DELETE REQUEST ===========

https example INFO: {"form":{},"headers":{"user-agent":"Resty/0.1 (Java)","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","x-forwarded-port":"443"},"files":{},"json":null,"data":{},"args":{},"url":"https://postman-echo.com/delete"}
  • It confirms HTTPS communication between the Virtual Device and the postman-echo.com server.

5 – Run the Examples on Your Board

Prerequisites

Hardware

Software

Hardware Configuration

  • All tests of this getting started have been done on the NXP OM13098 Development Board.
  • Plug the SD card in the NXP OM13098 Development Board.
  • Connect the board through the Ethernet port to a network providing a DHCP server and DNS via DHCP.
  • Plug the USB cable to power on the board.
  • Standard output traces can be read through a UART link (through USB). Configuration of the UART is: 115200 bps, 8N1, no handshake

Flashing the MicroEJ BLUE VEE

Flash the SEGGER Firmware

  • First, make sure a jumper is set on the JP5 connector on the board.
  • Power the board by connecting the board to the PC using a micro USB to USB cable on connector J8 (USB Debug Link).
  • Launch the Program LPC-Link2 with Segger J-Link script. With a default installation, it’s located here: C:\NXP\LPCScrypt\scripts\program_JLINK.cmd.
  • On the command invite, press the spacebar to flash the J-Link firmware. Once it is done, unplug power from the board and quit the script.
  • Remove the jumper from the JP5 connector.
  • Power the board. We can now use J-Link software to flash it.

Program the MicroEJ VEE

  • Download the following archive (See release notes)
  • Unzip the archive in a folder of your choice.
  • Start J-Flash Lite.
  • Confirm the notice.
  • Choose the device selection (three dots button next to the unspecified field). Choose NXP in the drop-down menu.
  • Select the device LPC54628J512, click OK, and keep the other setups at their default value (Interface: SWD and Speed: 1000).
  • Press OK to expand the programming window.
  • Program the external flash by selecting the FMW-BLUE-OM13098-PQ9Y4-2.0.2-0x10000000-EXTERNAL.hex in the unzipped folder.
  • Accept terms of use and wait until programming complete (this may take a while).
  • Then program the internal flash by selecting FMW-BLUE-OM13098-PQ9Y4-2.0.2-0x00000000-INTERNAL.hex in the unzipped folder.
  • Accept terms of use and wait until programming complete (this may take a while).
  • Unplug the USB cable, exit SEGGER J-Flash Lite program.

Running the UI Example

  • Right-click the MicroEJ project com.microej.demo.hello.
  • Then Run As > MicroEJ Application.
  • Select the VDE-BLUE-OM13098-PQ9Y4.
  • It will instanciate a Run Configuration, you can stop the Virtual Device.
  • Edit the new Run Configuration.
  • Then configure the Execution mode to Execute on Device, Core Engine Default and Settings Local Deployment (Socket)
  • In the Configuration tab in Local Deployment (Socket) insert the IP of the NXP OM13098 in the Host parameter. You should have the IP displayed on the screen of the NXP OM13098 in the About application (leave the other parameters unchanged).
  • Click on Run button.
  • The demo is displaying a simple UI on display of the NXP OM13098.

Running the REST Client Example

  • Right-click the MicroEJ project com.microej.example.iot.ssl.rest.headless.
  • Then Run As > MicroEJ Application.
  • Select the VDE-BLUE-OM13098-PQ9Y4 Virtual Device.
  • It will instanciate a Run Configuration, you can stop the Virtual Device.
  • Edit the new Run Configuration.
  • Then configure the Execution mode to Execute on Device, Core Engine Default and Settings Local Deployment (Socket)
  • In the Configuration tab in Local Deployment (Socket) insert the IP of the NXP OM13098 in the Host parameter. You should have the IP displayed on the screen of the NXP OM13098 in the About application (leave the other parameters unchanged).
  • Click on Run button.
  • In the board’s UART link you should have a similar trace printed:
=============== [ Initialization Stage ] ===============

=============== [ Converting fonts ] ===============

=============== [ Converting images ] ===============

=============== [ Launching on Simulator ] ===============

https example INFO: {"headers":{"user-agent":"Resty/0.1 (Java)","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","x-forwarded-port":"443"},"args":{},"url":"https://postman-echo.com/get"}

https example INFO: user-agent: Resty/0.1

https example INFO: =========== POST REQUEST ===========

https example INFO: {"form":{},"headers":{"user-agent":"Resty/0.1 (Java)","content-length":"20","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","content-type":"text/plain; charset=UTF-8","x-forwarded-port":"443"},"files":{},"json":null,"data":"My POST request data","args":{},"url":"https://postman-echo.com/post"}

https example INFO: Data sent for POST request: My POST request data

https example INFO: =========== PUT REQUEST ===========

AbstractPage.renderContent()

AbstractPage.renderContent()

https example INFO: {"form":{},"headers":{"user-agent":"Resty/0.1 (Java)","content-length":"19","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","content-type":"text/plain; charset=UTF-8","x-forwarded-port":"443"},"files":{},"json":null,"data":"My PUT request data","args":{},"url":"https://postman-echo.com/put"}

https example INFO: Data sent for PUT request: My PUT request data

https example INFO: =========== DELETE REQUEST ===========

https example INFO: {"form":{},"headers":{"user-agent":"Resty/0.1 (Java)","accept":"application/json","host":"postman-echo.com","x-forwarded-proto":"https","x-forwarded-port":"443"},"files":{},"json":null,"data":{},"args":{},"url":"https://postman-echo.com/delete"}
  • It confirms HTTPS communication between the board and the postman-echo.com server.
GOING FURTHER

Test specifically-tailored IoT examples

Extend your application with communication, in this suite of examples that explores the following subjects:

  • Connectivity detection.
  • JSON processing.
  • REST server setup.
  • REST client use.
  • Interaction with a MQTT server.
  • SSL security.
  • WebSocket client use.
SEE MORE
GOING FURTHER

Widget Demo

This demo illustrates the Widget library (ej.widget, ej.style, ej.animation, ej.color) based on MicroUI 2 and MWT 2.

 

SEE MORE
NEXT STEP

Build a VEE For Your Device

Learn how to create and extend your MICROEJ VEE in order to start prototyping your embedded device. You may also access more resources and examples on Embedded GUI and IoT Connectivity on the dedicated pages.

Build Your VEE

MicroEJ Developer Forum

Need Help?

Developer forum

Tips and tricks, insights and discussions…
MicroEJ community helps you solve your challenges!

Go to Forum