MicroEJ Developer
  • Discover MicroEJ
  • Features
  • VEE
  • SDK
  • Supported Hardware
Get Started
  • Glossary
  • Overview
    • MicroEJ Editions
      • Introduction
      • Determine the MicroEJ Studio/SDK Version
    • Licenses
      • Overview
      • License Manager
      • Evaluation Licenses
        • Get your Machine UID
        • Request your Activation Key
        • Install the License Key
        • Troubleshooting
      • Production Licenses
        • Request your Activation Key
        • Activate your USB Dongle
        • Check Activation on MicroEJ SDK
        • Troubleshooting
    • MicroEJ Runtime
      • Language
      • Scheduler
      • Garbage Collector
      • Foundation Libraries
        • Embedded Device Configuration (EDC)
        • Beyond Profile (BON)
    • MicroEJ Libraries
    • MicroEJ Central Repository
    • Embedded Specification Requests
    • MicroEJ Firmware
      • Bootable Binary with Core Services
      • Specification
    • Introducing MicroEJ SDK
    • Introducing MicroEJ Studio and Virtual Devices
    • Perform Online Getting Started
    • GitHub Repositories
    • System Requirements
  • Application Developer Guide
    • Introduction
    • Local Workspaces and Repositories
    • Standalone Application
      • MicroEJ Platform Import
        • Source Platform Import
        • Binary Platform Import
      • Build and Run an Application
        • Create a MicroEJ Standalone Application
        • Run on the Simulator
        • Run on the Hardware Device
      • Build Output Files
        • The SOAR Map File
        • The SOAR Information File
      • MicroEJ Launch
        • Main Tab
        • Execution Tab
        • Configuration Tab
        • JRE Tab
        • Other Tabs
      • Application Options
        • Introduction
        • Defining an Option
        • Category: Runtime
        • Category: Simulator
        • Category: Libraries
        • Category: Device
        • Category: Feature
      • SOAR
    • Sandboxed Application
      • Sandboxed Application Structure
        • Application Skeleton Creation
        • Sources Folder
        • META-INF Folder
        • module.ivy File
      • Application Publication
        • Build the WPK
        • Publish on a MicroEJ Forge Instance
      • Shared Interfaces
        • Principle
        • Shared Interface Creation
    • Virtual Device
      • Using a Virtual Device for Simulation
      • Runtime Environment
    • MicroEJ Module Manager
      • Introduction
      • Specification
      • Module Project Skeleton
      • Module Description File
        • Enable MMM Semantic
        • Module Dependency
        • Automatic Update Before Resolution
        • Build Options
      • MicroEJ Module Manager Configuration
        • Preferences Page
        • Settings File
        • Options
      • Build Kit
      • Former MicroEJ SDK Versions
        • New MicroEJ Module Project
        • Preferences Pages
    • Module Natures
      • Module Repository
        • Create a Repository Project
        • Configure Resolver for Input Modules
        • Include Modules
        • Build the Repository
        • Use the Offline Repository
    • MicroEJ Classpath
      • Application Classpath
      • Classpath Load Model
      • Classpath Elements
        • Application Entry Points
        • Types
        • Raw Resources
        • Immutable Objects
        • System Properties
        • Constants
    • Application Resources
      • Images
        • Overview
      • Fonts
        • Overview
        • Font Range
        • Custom Range
        • Known Range
        • Transparency
      • Native Language Support
    • Development Tools
      • Testsuite with JUnit
        • Principle
        • JUnit Compliance
        • Setup a Platform for Tests
        • Setup a Project with a JUnit Test Case
        • Build and Run a JUnit Testsuite
        • Testsuite Reports
        • Advanced Configurations
      • Stack Trace Reader
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
      • Code Coverage Analyzer
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
      • Heap Dumper & Heap Analyzer
        • Introduction
        • Heap Dumper
        • Heap Viewer
        • Progressive Heap Usage
        • Compare Heap Dumps
      • ELF to Map File Generator
        • Principle
        • Functional Description
        • Installation
        • Use
      • Serial to Socket Transmitter
        • Principle
        • Installation
        • Use
      • Memory Map Analyzer
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
      • Event Tracing
        • Description
        • Java API Usage
        • Platform Implementation
    • Advanced Tools
      • MicroEJ Linker
        • Overview
        • ELF Overview
        • Linking Process
        • Linker Specific Configuration File Specification
        • Auto-generated Sections
        • Execution
        • Error Messages
        • Map File Interpretor
      • Testsuite Engine
      • MicroEJ Testsuite Engine
        • Introduction
        • Using the MicroEJ Testsuite Ant Tasks
        • Using the Trace Analyzer
        • Appendix
    • Graphical User Interface
      • MicroUI
        • Introduction
        • Images
        • Fonts
        • Font Designer
        • Application Options
        • Debug Traces
        • Error Messages
      • MWT (Micro Widget Toolkit)
        • Introduction
        • Concepts
        • How to Create a Widget
        • How to Create a Container
        • How to Animate a Widget
        • How to Define an Outline or Border
        • How to Define a Background
        • How to Create a Desktop Event Dispatcher
        • How to Define an Extra Style Field
      • Widgets and Examples
        • Widget library
        • Widget demo
        • MWT examples
    • Limitations
  • Platform Developer Guide
    • Introduction
      • Scope
      • Intended Audience
      • MicroEJ Architecture Modules Overview
    • MicroEJ Platform
      • Process Overview
      • Concepts
        • MicroEJ Platform
        • MicroEJ Platform Configuration
        • Modules
        • Low Level API Pattern
      • MicroEJ Platform Creation
        • MicroEJ Architecture Import
        • MicroEJ Platform Configuration
        • Groups / Modules Selection
        • Modules Customization
        • Platform Customization
        • BSP Connection
        • MicroEJ Platform Build
      • Platform Qualification
        • Introduction
        • Platform Testsuite
    • MicroEJ Core Engine
      • Functional Description
      • Architecture
      • Capabilities
      • Implementation
        • Initialization
        • Scheduling
        • Idle Mode
        • Time
        • Example
        • Debugging
      • Generic Output
      • Link
      • Dependencies
      • Installation
      • Use
    • Multi-Sandbox
      • Principle
      • Functional Description
      • Firmware Linker
      • Memory Considerations
      • Dependencies
      • Installation
      • Use
    • Tiny application
      • Principle
      • Installation
      • Limitations
    • Native Interface Mechanisms
      • Simple Native Interface (SNI)
        • Principle
        • Functional Description
        • Example
        • Synchronization
        • Dependencies
        • Installation
        • Use
      • Shielded Plug (SP)
        • Principle
        • Functional Description
        • Shielded Plug Compiler
        • Example
        • Dependencies
        • Installation
        • Use
      • MicroEJ Java H
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
    • External Resources Loader
      • Principle
      • Functional Description
      • Implementations
        • Open a Resource
        • Resource Identifier
        • Resource Offset
        • Resource Inside the CPU Address Space Range
      • External Resources Folder
      • Dependencies
      • Installation
      • Use
    • Serial Communications
      • ECOM
        • Principle
        • Functional Description
        • Device Management API
        • Dependencies
        • Installation
        • Use
      • ECOM Comm
        • Principle
        • Functional Description
        • Component Architecture
        • Comm Port Identifier
        • Dynamic Connections
        • Java API
        • Driver API
        • BSP File
        • XML File
        • ECOM Comm Mock
        • Dependencies
        • Installation
        • Use
    • Graphical User Interface
      • Principle
      • MicroUI
        • Principle
        • Architecture
        • Thread
        • Native Calls
        • Transparency
        • Installation
        • Use
      • Static Initialization
        • Principle
        • Functional Description
        • XML File
        • XML File Example
        • Dependencies
        • Installation
        • Use
      • Low Level API
        • Principle
        • Embedded Platform
        • Simulator
      • LED
        • Principle
        • Functional Description
        • Low Level API
        • Dependencies
        • Installation
        • Use
      • Input
        • Principle
        • Functional Description
        • Driver Listener
        • Static Initialization
        • Standard Event Generators
        • Generic Event Generators
        • Low Level API
        • Dependencies
        • Installation
        • Use
      • Display
        • Principle
        • Functional Description
        • Display Configurations
        • Buffer Modes
        • Partial Buffer
        • Byte Layout
        • Memory Layout
        • Pixel Structure
        • Low Level API
        • Drawing Native
        • Display Synchronization
        • GPU Synchronization
        • Antialiasing
        • CLUT
        • Image Pixel Conversion
        • Library ej.api.Drawing
        • Dependencies
        • Installation
        • Use
      • Images
        • Overview
        • Image Format
        • Image Generator
        • Image Loader
        • Image Renderer
      • Fonts
        • Overview
        • Font Characteristics
        • Font Generator
        • Font Renderer
      • Simulation
        • Principle
        • Module Dependencies
        • Widget Display
        • Inputs Extensions
        • Heap Simulation
        • Image Decoders
        • Dependencies
        • Installation
        • Use
    • Networking
      • Principle
      • Network Core Engine
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
      • SSL
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
    • File System
      • Principle
      • Functional Description
      • Dependencies
      • Installation
      • Use
    • Hardware Abstraction Layer
      • Principle
      • Functional Description
      • Identifier
        • Basic Rule
        • Generic Rules
      • Configuration
      • Dependencies
      • Installation
      • Use
    • Device Information
      • Principle
      • Dependencies
      • Installation
      • Use
    • Simulation
      • Principle
      • Functional Description
      • Dependencies
      • Installation
      • Use
      • Mock
        • Principle
        • Functional Description
        • Example
        • Mocks Design Support
        • Dependencies
        • Installation
        • Use
      • Shielded Plug Mock
        • General Architecture
        • Configuration
      • Front Panel Mock
        • Principle
        • Functional Description
        • The Front Panel Project
        • Module Dependencies
        • Front Panel File
        • Widget
        • Installation
        • Use
      • Bluetooth LE Mock
        • Overview
        • Requirements
        • Usage
        • Troubleshooting
    • Appendices
      • Appendix A: Low Level API
        • LLMJVM: MicroEJ Core Engine
        • LLKERNEL: Multi-Sandbox
        • LLSP: Shielded Plug
        • LLEXT_RES: External Resources Loader
        • LLCOMM: Serial Communications
        • LLUI_INPUT: Input
        • LLUI_DISPLAY: Display
        • LLUI_LED: LEDs
        • LLNET: Network
        • LLNET_SSL: SSL
        • LLFS: File System
        • LLHAL: Hardware Abstraction Layer
        • LLDEVICE: Device Information
      • Appendix B: MicroEJ Foundation Libraries
        • EDC
        • SNI
        • KF
        • ECOM
        • ECOM Comm
        • FS
        • Net
        • SSL
      • Appendix C: Tools Options and Error Codes
        • SOAR
        • Immutable Files Related Error Messages
        • SNI
        • SP Compiler
        • NLS Immutables Creator
        • MicroUI Static Initializer
        • Front Panel
        • HIL Engine
        • Heap Dumping
      • Appendix D: Architectures MCU / Compiler
        • Principle
        • Supported MicroEJ Core Engine Capabilities by Architecture Matrix
        • ARM Cortex-M0
        • ARM Cortex-M4
        • ARM Cortex-M7
        • ESP32
        • IAR Linker Specific Options
  • Kernel Developer Guide
    • Overview
      • Introduction
      • Terms and Definitions
      • Overall Architecture
        • Firmware Implementation Libraries
      • Firmware Build Flow
      • Virtual Device Build Flow
    • Kernel & Features Specification
    • Getting Started
      • Online Getting Started
      • Create an Empty Firmware from Scratch
        • Create a new Firmware Project
        • Setup a Platform
        • Build the Firmware
      • MicroEJ Demo VEE Flavors
        • What is a MicroEJ Demo Runtime Environment?
        • What is a MicroEJ Demo Flavor?
    • Build Firmware
      • Workspace Build
      • Headless Build
      • Runtime Environment
        • Specify the Runtime Environment of the Firmware
      • Resident Applications
      • Advanced
        • MicroEJ Firmware module.ivy
        • Change the set of Properties used to Build a Firmware
        • Change the Platform used to Build the Firmware and the Virtual Device
        • Build only a Firmware
        • Build only a Virtual Device
        • Build only a Virtual Device with a pre-existing Firmware
    • Writing Kernel APIs
      • Default Kernel APIs Derivation
      • Build a Kernel API Module
      • Kernel API Generator
        • Category: Kernel API Generator
    • Communication between Features
      • Kernel Type Converters
    • API Documentation
    • Multi-Sandbox Enabled Libraries
      • MicroUI
        • Physical Display Ownership
        • Automatically Reclaimed Resources
      • ECOM
      • ECOM-COMM
      • FS
      • NET
      • SSL
    • Setup a KF Testsuite
      • Enable the Testsuite
      • Add a KF Test
      • KF Testsuite Options
  • Tutorials
    • Understand How to Build a MicroEJ Firmware and its Dependencies
      • The Components
        • MicroEJ Architecture (.xpf, .xpfp)
        • MicroEJ Platform Source (.zip)
        • MicroEJ Application
        • C Toolchain (GCC, KEIL, IAR, …)
        • Module Repository
        • Dependencies Between Components
      • How to Build
        • Build a MicroEJ Platform
        • Build a MicroEJ Firmware
        • Dependencies Between Processes
      • Get Support
    • Create a MicroEJ Platform for a Custom Device
      • Introduction
      • A MicroEJ Platform Project is already available for the same MCU/RTOS/C Compiler
        • Platform
        • BSP
        • Simulator
      • A MicroEJ Platform Project is not available for the same MCU/RTOS/C Compiler
        • MCU
        • RTOS
        • C Compiler
      • Platform Validation
      • Further Assistance Needed
    • Create a MicroEJ Firmware From Scratch
      • Intended Audience
      • Introduction
      • Prerequisites
      • Overview
      • Setup the Development Environment
      • Get Running BSP
      • FreeRTOS Hello World
      • Create a MicroEJ Platform
        • Import the MicroEJ Architecture
        • Install an Evaluation License
        • Create the MicroEJ Platform
        • Setup the MicroEJ Platform
      • Create MicroEJ Application HelloWorld
      • Configure BSP Connection in MicroEJ Application
      • MicroEJ and FreeRTOS Integration
        • Minimal Low Level APIs
        • Invoke MicroEJ Core Engine
        • Build and Link the Firmware with the MicroEJ Runtime and MicroEJ Application
    • Setup an Automated Build using Jenkins and Artifactory
      • Intended Audience
      • Introduction
      • Prerequisites
      • Overview
      • Install the Build Tools
      • Get a Module Repository
      • Setup Artifactory
        • Install and Start Artifactory
        • Configure Artifactory
        • Configure Repositories
        • Import MicroEJ Repositories
      • Setup Jenkins
        • Install Jenkins
        • Configure Jenkins
        • Create a Job Template
      • Build a new Module using Jenkins
        • Create a new MicroEJ Module
        • Create a New Jenkins Job
        • Build the “Hello World” Application
      • Appendix
        • Customize Jenkins
        • Add a Self-Signed Certificate
        • Customize target~ path
    • Improve the Quality of Java Code
      • Intended Audience
      • Readable Code
        • Naming Convention
        • Visibility
        • Javadoc
        • Code Style and Formatting
      • Best Practices
        • Common Pitfalls
        • Simplify Maintenance
        • Basic Optimizations
        • Local Extraction
        • Equals and Hashcode
      • Related Tools
        • Unit Testing
        • Code Analysis with SonarQube™
    • Optimize the Memory Footprint of an Application
      • Intended Audience
      • Introduction
      • How to Analyze the Footprint of an Application
        • How to Analyze the Files Generated by the MicroEJ Linker
        • How to Analyze a Map File Generated by a Third-Party Linker
      • How to Reduce the Image Size of an Application
        • Application Resources
        • Application Code
        • MicroEJ Platform Configuration
        • Application Configuration
        • Stripping Class Names from an Application
      • How to Reduce the Runtime Size of an Application
        • Application Code
        • MicroEJ Platform Configuration
        • Application Configuration
    • Explore Data Serialization Formats
      • Intended Audience
      • XML
        • XML Parser Use In MicroEJ SDK
        • Example Of Use
      • JSON
        • JSON Parser Use In MicroEJ SDK
        • Example Of Use
    • Instrument Java Code for Logging
      • Intended Audience
      • Introduction
      • Overview
      • Log with the Trace Library
      • Log with the Message Library
      • Log with the Logging Library
      • Remove Logging Related Code
        • Wrap with a Constant If Statement
        • Shrink Code Using ProGuard
  • About MicroEJ
MicroEJ Documentation
  • HOME  /
  • Platform Developer Guide  /
  • MicroEJ Platform

MicroEJ Platform

  • Process Overview
  • Concepts
    • MicroEJ Platform
    • MicroEJ Platform Configuration
    • Modules
    • Low Level API Pattern
  • MicroEJ Platform Creation
    • MicroEJ Architecture Import
    • MicroEJ Platform Configuration
    • Groups / Modules Selection
    • Modules Customization
    • Platform Customization
    • BSP Connection
    • MicroEJ Platform Build
  • Platform Qualification
    • Introduction
    • Platform Testsuite
Next Previous

© Copyright 2008-2020, MicroEJ Corp. Content in this space is free for read and redistribute. Except if otherwise stated, modification is subject to MicroEJ Corp prior approval. MicroEJ is a trademark of MicroEJ Corp. All other trademarks and copyrights are the property of their respective owners. Revision de6e4a95.

Read the Docs v: latest
Versions
20201009
latest
revert-139-feature-m0078ddg-355_improve_mmm_doc
rename_to_api_dd
release-m0228j-105_microjs-0.4.0
mock-installation-typo-fix
mock-clarify-install-procedure
m0078ddg-26-fix_limitation_chapter
javascript-0.4.0
javascript-0.1.0
gjadi-serial-to-socket-add-label
gjadi-request_activation_key_anchor
gjadi-platform-fs-add-label
gjadi-platform-editor
gjadi-platform-concept-add-label
gjadi-mock-unsatisfiedlinkerror
gjadi-mej-patch-1
gjadi-fix-mmm-link
fix_platformoverview_ordered_list
fix-mmm-code-block
fix-build-warnings
feature-menu_issue
feature-m0228j-91_cli-release-0.1.0
feature-m0228j-87_change_js_main_folder
feature-m0228j-74_clean-doc
feature-m0228j-65_switch_limitations
feature-m0228j-43_microjs
feature-m0228j-41_microjs_testsuite
feature-m0228j-20
feature-m0137w-498_sdk-overview
feature-m0127cc-641_review_tutorialplatformfromscratch
feature-m0127cc-628_move_license_usage_tutorial
feature-m0127cc-628_add_dongle_picture
feature-m0127cc-611_xml_article
feature-m0127cc-611_json_article
feature-m0127cc-611_github_article
feature-m0127cc-611_data_formats_tutorial
feature-m0127cc-568_tutorialbuildmicroejfirmware
feature-m0090ide-3476_cli-init-command
feature-m0078ddg-370_ui_tools
feature-m0078ddg-361_add_about_page
feature-m0078ddg-360_add_videos
feature-m0078ddg-355_improve_mmm_doc
feature-m0078ddg-354_protobuf_tutorial
feature-m0078ddg-352_document_platform_step3
feature-m0078ddg-348_data_formats_tutorial
feature-m0078ddg-342_move_target_folder
feature-m0078ddg-341_add-nls-chapter
feature-m0078ddg-333_sync_how_to_get_platforms_section
feature-m0078ddg-331_footprint
feature-m0078ddg-331_coding_rules
feature-m0078ddg-330_scale_platformdevguide_images
feature-m0078ddg-308_tutorial_debug_ui_freeze
feature-m0078ddg-282_mwt_merge
feature-m0078ddg-282_mwt
feature-m0078ddg-281_systemview_backup_friviere
feature-m0078ddg-281_systemview
feature-m0078ddg-278_toolbox_margin
feature-m0078ddg-277_ui3
feature-m0078ddg-270_fix_typo
feature-m0078ddg-270_add_tutorial_log_trace_in_application
feature-m0078ddg-266_ej_api_trace
feature-m0078ddg-264
feature-m0018pqt-144_run_test_suite
feature-m0018pqt-144_rework_testsuite_engine_doc
feature-m0018pqt-144_document_test_suite_report
feature-m0018pqt-144_doc_microej_licenses_folder_for_pca
feature-m0018pqt-144_add_platform_qualification_page
feature-j0190uil-1144_partial_buffer
bugfix-m0090ide-3495_remove_default_conf
bugfix-m0078ddg-372_ui2_snippets
bugfix-m0078ddg-290_add_mock_in_summary_table_fix_bullet_list
bugfix-m0018pqt-144_pull_up_testsuite_report_section_level
bugfix-m0018pqt-144_fix_remaining_legacy_ddg_launch_options
Downloads
pdf
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.
  • docs Docs
  • Resources
  • Forum