Edge AI · Benchmarks
Luviner's Vivi engines, tested on standard datasets with documented splits. Every result is reproducible.
| Result | Value | Conditions |
|---|---|---|
| Bearing faults (CWRU) | -- | Cross-load split: trained at 0-1 HP, tested at 2-3 HP. 99.8% over 5 runs, 10 KB Flash, 65 bytes RAM. |
| Lightest model | -- | Bearings: 6.3 KB on Cortex-M0+, 7.3 KB on RISC-V. Runs on a 12-cent chip. |
| Specialised engines | 13 | From vibration to audio: each tuned for one signal type. |
One model stays on the device. Switching job means loading 128 bytes, no reflash.
UCI HAR: 561 features, 7352 training and 2947 test samples. Two jobs on the same data, labels agree only 36% of the time. 25 epochs each.
Under 1% accuracy lost. Optional, off by default.
UCI HAR, five seeds, measured on the compiled C. Results depend on the model: this holds for this benchmark.
| Benchmark | Luviner | Reference | Verdict |
|---|---|---|---|
| CWRU Bearing Fault | 99.6% | CNN 99.8% · TCN 98.9% | Competitive |
| Classification (4 sklearn datasets) | 96% average | — | Competitive |
| C-MAPSS RUL (NASA) | RMSE 19.3 | Beats BiLSTM | Competitive |
| TSAD | F1 0.56–0.80 | SOTA 0.90+ | Room to improve |
| DCASE 2020 | AUC 0.75 | SOTA 0.90 | Room to improve |
| HAR | 86% | SOTA 95%+ | Room to improve |
All in under 140 KB of Flash. We optimise for microcontrollers, not unlimited compute: the gap on the heaviest benchmarks is expected.
Built from the latest run. Best per column in red.
Loading results...
Measured on the compiled binary, not estimated.
| Target MCU | Flash | RAM | Compatible Engines | Chip Cost |
|---|---|---|---|---|
| CH32V003 (RISC-V) | 16 KB | 2 KB | -- | ~from €0,12 |
| STM32C0 (Cortex-M0+) | 32 KB | 6 KB | -- | ~from €0,45 |
| ARM Cortex-M0 | 32 KB | 4 KB | -- | ~from €1 |
| ARM Cortex-M4 | 256 KB | 64 KB | -- | ~from €3 |
| ESP32 | 4 MB | 520 KB | -- | ~from €2 |
| ESP32-S3 | 8 MB | 512 KB | -- | ~from €3 |
Every decision traceable. The engine flags on its own when it needs retraining.
| Traceable decisions | 100% | Every attribution recorded |
| Footprint | <11 KB | All on the device |
| Cloud dependency | 0 | None |
| Automated tests | 50 | Every module + C export |
| Diagnostic modules | 10 | Tracing, self-healing, state map |
Several sensors, one model. It tells you which sensor caused the anomaly.
| Fault detection | 100% | Bearing + overcurrent, 3-sensor industrial demo |
| False alarms | 2% | On normal operation data |
| Multi-sensor overhead | <2 KB | Added to the model |
| Complexity | O(n) | Scales to any number of sensors |
| Compatible engines | 13 | Every Vivi engine |
Bearing noise, cavitation, airflow: classified as the sound arrives.
| Flash footprint | <60 KB | Feature extraction included |
| Synthetic benchmark (Vivi 4 / Focus 4) | 100% | Controlled test, clean audio |
| DCASE 2020 fan anomaly (AUC) | 0.749 | Public benchmark |
| Mode | Real-time | Streaming |
| Cloud dependency | 0 | All on the device |
Activities and gestures from a 6-axis IMU. Wearables, robotics, gesture control.
| UCI HAR accuracy | 95.0% | 6 activities, 30 volunteers, official split |
| Features extracted | 51 | Accelerometer + gyroscope |
| Flash footprint | <20 KB | Complete model, pure C |
| Input axes | 6 | 3 accelerometer + 3 gyroscope |
| Inference | Real-time | One result per sample |
Devices learn together. Raw data never leaves them.
| Raw data shared | 0 | Only model updates are exchanged |
| Convergence, similar data (IID) | Fast | |
| Convergence, mixed data (non-IID) | Stable | |
| Privacy | Differential | Configurable epsilon |
| Faulty or malicious nodes | Excluded | Automatically |
Cross-load splits where it applies. No data leakage. System info attached to every run.
| Dataset | Source |
|---|---|
| CWRU | Case Western Reserve University |
| C-MAPSS | NASA |
| UCI HAR | UCI Machine Learning Repository |
| TSAD | MSL / SMAP / SMD |
| DCASE 2020 | DCASE Challenge |
| sklearn | Iris / Wine / Cancer / Digits |