SDK Products
With the Ekkono SDK you can bring intelligence into your IoT devices. We currently have 4 different products in our portfolio. This is a short product overview of our SDK.
Ekkono Primer
Ekkono Primer is the main software library that encompasses Edge and Crystal.
It also has all of Ekkono’s classes for datasets and other data types that are useful during model development. Learn more
Ekkono Edge
Ekkono Edge is the main software library for model inference and incremental training. Learn more
Ekkono Crystal
Ekkono Crystal is a software library for microcontrollers with a subset of the functionality of Edge. Learn more
Ekkono Spectral
Ekkono Spectral is a software library that contains tools for signal processing. Learn more
Ekkono Primer (C++) Overview
Ekkono Primer is the main software library that encompasses Edge and Crystal.
Hello World Example
Creating, training and evaluating a model using the Python API.
Main Features
-
Model factory – for creating new models
-
Model training – for training models in an offline setting (Edge and Crystal support incremental training)
-
Model tester – for evaluating model performance
-
Model conversion – for converting models to Crystal format (models are per default Edge format)
It also has all of Ekkono’s classes for datasets and other data types that are useful during model development.
​
Requirements
Python >=3.7 (to use Python bindings).
​
Intended Use
This library is primarily for use on desktop when models are being developed. I is delivered as a compiled application. Everything required for model inference or incremental training is included in Edge or Crystal.
Ekkono Edge (C++) Overview
​​Ekkono Edge is the main software library for model inference and incremental training.
Hello World Example
Loading a model and incrementally training the model while predicting one instance.
Main Features
-
Variety of model types that are adapted for the edge machine learning environment
-
Predictive modeling
-
Linear Regression
-
Multilayer Perceptron
-
Random Forest
-
Decision Trees
-
-
Unsupervised learning
-
Change detection
-
Anomaly detection
-
-
-
Preprocessing pipeline for streaming data
-
Saved and loaded with the model. No setup required in the implementation code.
-
Automatically buffers observations for signal lags, differencing and moving averages.
-
-
Model decorators for continous error estimation or concept drift detection.
-
Conformal prediction framework for regression models.
-
Model what-if simulations
-
Supports hot swapping of models
​
All predictive models except the decision trees support incremental learning.
​
Requirements
Compiler compatible with C++14.​
​
Intended Use
Edge, as the name suggests, is made to be implemented and run on edge devices. This includes
communication gateways, human-machine interfaces (HMIs), programmable logic controllers (PLCs), industrial computers and generally anything with a processor & a few megabytes of memory. The library is delivered as source code which you can compile for your target platform.
Ekkono Crystal (C) Overview
Ekkono Crystal is a software library for microcontrollers with a subset of the functionality of Edge:
Hello World Example
Loading a model and predicting once.
Main Features
-
Variety of model types that are adapted for the edge machine learning environmentPredictive modeling
-
Linear Regression
-
Multilayer Perceptron
-
Unsupervised learning
-
Change detector
-
Preprocessing pipeline for streaming data
-
Saved and loaded with the model. No setup required in the implementation code.
-
Automatically buffers observations for signal lags, differencing and moving averages.
-
Model decorators for continous error estimation or concept drift detection.​
Only multilayer perceptron models support incremental learning.
​
Requirements
Compiler compatible with C99.​
​
Intended Use
Crystal is intended for platforms that are too small to support Edge, often smaller microcontrollers. The library is delivered as source code which you can compile for your target platform.
Ekkono Spectral (C) Overview
Ekkono Spectral is a software library that contains tools for signal processing.
Hello World Example
Creating an incremental discrete Fourier transform and looping through a signal.
Main Features
-
Fast Fourier Transform
-
Incremental Discrete Fourier Transform
-
Incremental Discrete Wavelet Transform
-
Incremental Autocorrelation estimation
-
Incremental signal to noise ratio estimation
​These features are primarily for time series feature engineering for, e.g., change detector models.
​
Requirements
Compiler compatible with C99.​
​
Intended Use
Spectral is an independent, supporting library that is useful for, e.g., vibration monitoring.