Skip to content
This repository has been archived by the owner on Aug 26, 2021. It is now read-only.

mbeddr Getting Started

44balazs edited this page May 11, 2016 · 59 revisions

Introduction to mbeddr

About mbeddr

From mbeddr.com:

mbeddr is a set of integrated and extensible languages for embedded software engineering, plus an IDE. It supports implementation, testing, verification and process aspects. It integrates with command-line build tools and integration servers, as well as file-based version control systems.

mbeddr's features:

  • Cleaned Up C99 [Link]
  • Reporting and Logging [Link]
  • Testing [Link]
  • Physical Units [Link]
  • State Machines [Link]
  • Interfaces and Components [Link]
  • Requirements, Tracing and Docs [Link]
  • Product Line Variability [Link]
  • Formal Verification [Link]
  • Execution and Debugging [Link]
  • IDE Support [Link]
  • Decision Tables [Link]
  • Version Control [Link]

mbeddr download page: http://mbeddr.com/download.html

Prerequisites

http://mbeddr.com/download.html#RequiredToolsAndVersions

Used versions

I used these old versions because of compatibility issues.

JetBrains MPS

Version 3.2.3: https://confluence.jetbrains.com/display/MPS/JetBrains+MPS+3.2+Download+Page

mbeddr

Version 1.0 RC1: https://github.com/mbeddr/mbeddr.core/releases/tag/1.0-RC1

Operating system

Ubuntu 15.10: http://releases.ubuntu.com/15.10/

Step-by-step

Create your first project

Create a New Project by File → New Project... then select Solution Project and add a name to your project and your solution name too.

New Project

Add a new model to the solution by right clicking on the solution name and choose New → Model.

New Model

Add a name to your model:

Model Name

After that on the Used Languages tab add the com.mbeddr.core devkit.

Add DevKit

Finally generate a simple Hello World by Code → Wizards → Create Hello World.

Hello World

How to use decision table

Draft about external modules

Manual Library Import

Right click on a module name you are working with, then click New → com.mbeddr.core.modules → external. In this newly created External Module add the referenced artifact to resources. In case of Mosquitto, insert header: <mosquitto.h>. Finally, add the created external module to imports.

Mosquitto specific settings:

Add the -lmosquitto option to your compiler options under the BuildConfiguration of the solution. Other linked libraries should be added here as well in a similar manner.

mbeddr does not generate the compiler command in the right order, so you need to compile your project by hand in a terminal.

Clone this wiki locally