Skip to content

Releases

TinySHM — Two Code Versions for Different Needs

The TinySHM framework evolves in two tracks. Choose based on whether you need runtime orchestration.


Version Overview

The CODE/ folder contains two complete ESP-IDF projects, both sharing the same hardware drivers and core middleware. The difference is in the orchestration layer.

  • AIoTNode-TinySHM


    Core framework — all signal processing, system identification, and damage assessment modules.

    Middleware: TinyToolbox · TinyMath · TinyDSP · TinyAI · TinyMeasurement · TinySysid · TinyDamage

    Best for: Standalone edge nodes performing data acquisition, on-device modal analysis, and damage detection.

  • AIoTNode-TinySHM-Bench-Orch


    Full framework — everything in the core version, plus TinyBench and TinyOrch for runtime orchestration.

    Middleware: Core + TinyBench · TinyOrch

    Best for: Multi-agent systems, remote workflow orchestration via MQTT, and environments where runtime data/tool discovery is required.


Architecture Comparison

Layer TinySHM TinySHM-Bench-Orch
APPLICATION measurement, sysid, damage TinyOrch + TinyBench + measurement, sysid, damage
MIDDLEWARE TinyToolbox, TinyMath, TinyDSP, TinyAI TinyToolbox, TinyMath, TinyDSP, TinyAI, TinyBench, TinyOrch
DRIVERS WiFi, MQTT, ADXL355/367, RTC, SD, SPI, I2C, LED, RGB, ESP-NOW, Timer, RNG, Exit Identical
HARDWARE ESP32-S3 (LiftNode) Identical

Module Checklist

Module TinySHM TinySHM-Bench-Orch Description
TinyToolbox Platform adaptation & utilities (TIME)
TinyMath Vector, matrix, decomp, eigenvalues
TinyDSP Conv, corr, FFT, FIR, IIR, DWT, ICA
TinyAI On-device training & inference
TinyMeasurement Online/offline/RT sensing
TinySysid PP, FDD, EFDD, ITD, ERA, SSI
TinyDamage Detection, localization, severity
TinyBench Runtime named data & tool registry
TinyOrch Processing pipeline orchestration

When to Use Which

  • Dedicated data logger

    TinySHM — acquisition, sysid, and damage on a single node. No orchestration needed.

  • Multi-node monitoring system

    TinySHM-Bench-Orch — TinyBench enables runtime data/tool discovery across the network; TinyOrch lets you define and update processing pipelines remotely.

  • Memory-constrained edge node

    TinySHM — saves the RAM/code footprint of Bench (~2 KB) and Orch (~4 KB).

  • Agent-driven autonomous operation

    TinySHM-Bench-Orch — agents use BENCH,DATA / BENCH,TOOLS / ORCH,CREATE MQTT commands to discover and orchestrate workflows at runtime.


Quick Start

cd CODE/AIoTNode-TinySHM-Bench-Orch
get_idf6
idf.py set-target esp32s3
idf.py menuconfig
idf.py build flash monitor
cd CODE/AIoTNode-TinySHM
get_idf6
idf.py set-target esp32s3
idf.py build flash monitor

Changelog Highlights

Bench-Orch (Latest)

  • New: tiny_bench — runtime named registry for data slots and tools
  • New: tiny_orch — step-based processing pipeline orchestration
  • New: MQTT commands BENCH,TOOLS, BENCH,DATA, ORCH,CREATE, ORCH,GO
  • New: tiny_bench_example.c — demonstration of put/register/list/info
  • Updated: AIoTNode.cpp — integrates Bench + Orch into the main event loop
  • Baseline: All features from TinySHM core

TinySHM Core (Stable)

  • All existing modules: Toolbox, Math, DSP, AI, Measurement, Sysid, Damage
  • Proven on ESP32-S3 with ADXL355 accelerometer
  • Supports MQTT remote command & control
  • Three acquisition modes: online, offline, real-time processing
  • Six OMA methods: PP, FDD, EFDD, ITD, ERA, SSI