Installation

Prerequisites

  • JRE 11 or above.

  • A Gradle-based MicroEJ Application project.

  • SEGGER SystemView and the J-Link software installed on the host.

  • The embedded target connected via J-Link (for a live capture; see SystemView).

Plugin Installation

The tool ships as the com.microej.gradle.activity-profiler Gradle plugin. Apply it in the target project’s build.gradle.kts:

plugins {
    id("com.microej.gradle.activity-profiler") version "1.0.0"
}

Applying the plugin registers the capture and conversion tasks. They work in the build/profiling/input/ and build/profiling/output/ directories, which each task creates under the project’s build folder when it runs.

Configuration

Add a profiling { } block to your project’s build.gradle.kts. This is where all capture and conversion settings are declared. Only device is required; every other property has a default:

profiling {
    device = "MIMXRT595S_M33"           // required: target name passed to J-Link
    // jLinkLibraryPath auto-detected; override only if needed:
    // jLinkLibraryPath = "C:/Program Files/SEGGER/JLink_V836/JLink_x64.dll"
    // `interface` = "SWD"             // optional, default: "SWD" ("SWD" or "JTAG")
    // speed = 4000                    // optional, default: 4000 kHz
    // channel = 1                     // optional, default: 1
    // duration = 15.0                 // optional, default: 15.0 s
    // format = "devtools"             // optional, default: "devtools" ("devtools" or "perfetto")
}

Note

interface is a reserved keyword in Kotlin and must be surrounded by backticks.