What is mikroSDK 2.0?¶
mikroSDK is a collection of open-source software libraries with unified API and
software development tools.
It is a development platform designed to simplify and enable cross-platform development of embedded applications for a wide range of microcontrollers and development board vendors.
What are mikroSDK 2.0 goals?¶
The goal of mikroSDK 2.0 is to provide PC-like coding experience in the embedded
Write the application code once and use it on any supported HW - vendor.
The focus of mikroSDK 2.0 is to provide:¶
- support for Click boards™
- support for any host development board with a mikroBUS socket on it.
...yet mikroSDK 2.0 goes further and provides:¶
- unified easy-to-use API for MCU peripheral drivers
- complete new Graphic and GUI libraries
- modern and easy-to-use logger library, for UART terminal
- much more is in the pipeline. Find more on the roadmap.
How can mikroSDK 2.0 be used?¶
The easiest way:
From NECTO Studio, where it can be used to its fullest potential.
It is possible to integrate parts of mikroSDK 2.0 drivers with other SDKs, thanks to its modular structure.
mikroSDK 2.0 is open source¶
Full source code, apart from LibStock and integration in NECTO STUDIO, can be obtained from Mikroe GitHub and ported to / used with any other C compiler.
How is mikroSDK 2.0 made and maintained?¶
mikroSDK 2.0 is made and will be maintained by Mikroe.
It will be updated almost daily - supporting each new Click board™ Mikroe releases and have major quartal updates with new application framework libraries.
mikroSDK 2.0, as an open-source project, will welcome community feedback, improvements, and contribution.
Benefits of using mikroSDK 2.0¶
- Easy to learn and apply - Manual & tutorials.
- Portability - use the same application code from a small 8-bit MCU to a 32-bit MCU.
- Usable on any newly supported HW host board, without needing to change a single line of code.
- Open-source and pure ANSI C code - limitless ways of using it.
- Makes adding support for new boards easy.
- Makes your board work with any Click add-on board™, increasing its capabilities and value over time.
- Boards get updates and new drivers daily.
General section contains the introduction as well as information about architecture, What's new, licensing, etc.
Getting started section contains all the information you need to start with development of an mikroSDK compatible application.
A collection of code samples and tutorials are provided to help new users get started with mikroSDK development.
APIs Reference section contains detailed descriptions of functions and data types for all available modules, their purpose and how to use them.
- Drivers for microcontroller peripherals with easy to use APIs, that enable you to start writing your application without reinventing the wheel.
- Code portability1.
- mikroBUS pin-mapping definition for easy connection of Click boards™, without having to look at development board schematic and pinout.
- Graphic and GUI libraries for developing graphical applications.
- Touch Panel library for capturing user input, featuring swipe and zoom gestures.
- Layered software architecture.
- Integrated NECTO Studio support.
For the up-to-date list of supported target boards and microcontrollers, please refer to this page.
Officially supported compilers are used from NECTO Studio. NECTO Studio at the same time provides the easiest way to use mikroSDK 2.0.
More information about NECTO Studio can be found on the official page.
NECTO Studio for Windows
NECTO Studio for MacOS
NECTO Studio for Linux
Help file for NECTO Studio is available here.
Since support for new compilers is constantly being added to NECTO Studio, please refer to the official NECTO page for more information on supported compilers and up-to-date list.
Due to mikroSDK 2.0 being entirely written in pure ANSI C language, it is compatible with virtually any standard C compiler. Therefore, you are free to use it with a toolchain of your choice.
mikroSDK 2.0 source files can be found on GitHub repository.
This documentation is under development and is subject to change.
What is code portability?
- Code portability from one platform device to another means that applications developed for one platform can be re-used on another without needing to start writing a new code from scratch or make significant changes to the code base. ↩