Getting Started with NitroCortex

Setup guide for ARM Cortex-M embedded development

Prerequisites

Before you begin, ensure you have the following tools installed:

Required Tools

Optional Tools

Supported IDEs

NitroCortex integrates with Keil MDK, IAR Embedded Workbench, STM32CubeIDE, and any CMake-compatible IDE.

Installation

1Download the SDK

Contact us for early access to the NitroCortex SDK package:

# Once you have access, extract the SDK
tar -xzf nitrocortex-sdk-1.0.0.tar.gz
cd nitrocortex-sdk

2Set Environment Variables

Configure the path to the NitroCortex SDK:

# Linux/macOS
export NITROCORTEX_SDK=/path/to/nitrocortex-sdk
export PATH=$NITROCORTEX_SDK/tools:$PATH

# Windows (PowerShell)
$env:NITROCORTEX_SDK = "C:\nitrocortex-sdk"
$env:PATH += ";$env:NITROCORTEX_SDK\tools"

3Verify Installation

# Check SDK version
nitro --version
# Expected output: NitroCortex SDK v1.0.0

# List available components
nitro list
# NitroOS    v5.3.0  Real-Time Operating System
# NitroFS    v1.0.0  Embedded File System
# NitroSIM   v6.1.1  ARM Cortex-M Emulator
# NitroVISION v2.4.0 TUI Framework

Project Structure

A typical NitroCortex project follows this structure:

my-project/
├── CMakeLists.txt
├── nitro.config.json      # NitroCortex configuration
├── src/
│   ├── main.c             # Application entry point
│   └── app_tasks.c        # Application tasks
├── include/
│   └── app_config.h       # Application configuration
└── build/                 # Build output directory

Create Your First Project

Use the project generator to create a new project:

# Create a new project for STM32F4
nitro new my-project --target stm32f407vg --components nitroos,nitrofs

cd my-project

Configuration File

The nitro.config.json file defines your project settings:

{
  "target": "stm32f407vg",
  "core": "cortex-m4f",
  "components": ["nitroos", "nitrofs"],
  "nitroos": {
    "max_tasks": 16,
    "stack_size": 1024,
    "tick_rate_hz": 1000
  },
  "nitrofs": {
    "enable_fat32": true,
    "enable_encryption": false
  }
}

Build and Run

# Configure the build
cmake -B build -G Ninja

# Build the project
cmake --build build

# Flash to target (requires NitroJTAG or compatible probe)
nitro flash build/my-project.elf

# Or run in NitroSIM emulator
nitrosim --elf build/my-project.elf --target stm32f407vg
Early Access Note

NitroCortex is currently in early access. Contact us at info@nitrocortex.com for SDK access and licensing information.

Next Steps