Thin-edge.io 2.0.0 Release available!

I’m very happy to announce that 2.0.0 of thin-edge is available!

The thin-edge team decided to make a major version switch as this release also introduces something totally new to thin-edge.

While 1.x was focused on further enhancing the device management & connectivity capabilities, which is crucial for securely connecting equipment, 2.x will focus on expanding the capabilities of thin-edge in regards to industrial data operations.

One key achievement of this is tedge flows.

Everything is in the flow with 2.0.0!

The star of this release is tedge flows — a lightweight JavaScript-based runtime that lets you write custom IoT data logic directly on your device. Think of flows as small, self-contained pieces of logic that run inside thin-edge.io’s mappers, triggered by input sources like MQTT messages, files, or process output.

They can be managed fully remotely, leveraging Cumulocity Device Management capabilities like Software, Configuration & Service Management.

Perfect Use Cases for tedge flows:

  • :bar_chart: Data remapping — Convert proprietary sensor payloads into thin-edge.io measurement format
  • :magnifying_glass_tilted_left: Filtering — Drop or suppress unwanted messages before they reach the cloud
  • :high_voltage: Local analytics — Trigger alarms based on threshold checks or aggregated sensor data
  • :floppy_disk: Bandwidth reduction — Aggregate high-frequency readings before forwarding to the cloud
  • :chart_increasing: Rate monitoring — Detect and alert on unexpected cloud message rates

Why flows are game-changing:

Compared to writing standalone applications, flows require:

  • No service configuration (no systemd units needed!)
  • No MQTT client boilerplate code
  • Sandboxed environment with bounded CPU and memory usage
  • Simple deployment as gzip tarballs
  • Hot-reload capability without restarting services

Flows are written in JavaScript (ES2020) and can be deployed to any mapper — including custom ones you create!

:backhand_index_pointing_right: Check out the flows documentation for a complete walkthrough and reference.

There are also already a lot of useful examples available here: GitHub - thin-edge/tedge-flows-examples: Experimental repository to exchange examples which use the upcoming generic tedge-mapper feature · GitHub

Configurable Bridges: Connect to Any MQTT-Based Cloud

thin-edge.io is no longer limited to built-in cloud connectors! The new configurable bridge feature lets you define MQTT routing rules and connect to any MQTT-based cloud or broker without writing a single line of code.

Connect seamlessly to:

  • Cumulocity MQTT Service
  • HiveMQ
  • ThingsBoard
  • Azure EventHub
  • Any custom MQTT broker

Combined with tedge flows, you can build fully-featured mappers with minimal effort — handling protocol translation, data transformation, and cloud connectivity all in one place.

:backhand_index_pointing_right: Learn more about configurable bridges

Configuration Enhancements

Extensible Configuration Management with Plugins

Configuration management is now extensible with a new plugin API! You can now:

  • Write custom configuration plugins to handle any file type or software component
  • Automatically restart services after configuration updates, ensuring changes take effect immediately

:backhand_index_pointing_right: Explore configuration plugins documentation

Improved Configuration Structure

Mapper-specific settings (e.g., c8y.url) have been moved from tedge.toml to dedicated mapper configuration files under /etc/tedge/mappers/<name>/mapper.toml. This makes it easier to:

  • Manage mapper settings independently
  • Create Linux packages for new mappers
  • Maintain cleaner configuration organization

The transition happens automatically during upgrade — you shouldn’t notice any behavior changes (unless you were reading configuration files directly).

Built-in Bridge Now Default

After over a year of successful testing in production, the built-in bridge (mqtt.bridge.built_in) is now enabled by default! This means:

  • Greater freedom and control over cloud connections
  • Simplified service dependencies (mosquitto only handles local MQTT)
  • Easier connection management (stop the mapper to stop cloud connection)

Note: The service name has changed from mosquitto-c8y-bridge to tedge-mapper-bridge-c8y, so update your monitoring configurations accordingly.

Additional Highlights

  • HSM improvements: tedge cert create now uses HSM configuration with better logging
  • Enhanced troubleshooting: Improved diagnostic collection with OS CA trust store info
  • Workflow templates: New templates for built-in workflows
  • Better testing: tedge connect --test now supports custom mappers
  • CLI improvements: File/folder tab completion and QoS 1 default for MQTT pub

:warning: Breaking Changes & Migration

Important: Removed tedge/ Topic Support

The deprecated tedge/ MQTT topics (deprecated since November 2023) are no longer supported. Use the newer thin-edge.io topics instead.

Migration Path from 1.x

The upgrade path is straightforward:

# upgrade to 1.7.1
wget -O - thin-edge.io/install.sh | sh -s -- 1.7.1

# then to 2.x
wget -O - thin-edge.io/install.sh | sh -s

:light_bulb: Pro tip: If you have components still using tedge/# topics, check out the tedge-compat flow that maps old topics to new ones using the flows feature!

Bug Fixes & Improvements

This release includes numerous bug fixes and improvements:

  • Better retry logic for file downloads
  • Security updates (quinn-proto bump to fix RUSTSEC-2026-0037)
  • Fixed measurement parsing for values larger than u32
  • Improved MQTT connection handling and error messages
  • Prevention of deadlocks and resource exhaustion issues

Full Release Notes

For a complete list of changes, features, and bug fixes, visit the full release notes on GitHub.


Ready to try thin-edge.io 2.0.0? Get started today and experience the power of tedge flows!

:speech_balloon: Questions? Just comment here or create a new topic with the tag thin-edge-io

4 Likes

Very nice feature to simply add some flow logic without a lot of coding but with full flexibility.
Also we should use C8Y dark theme way more often :star_struck:.

1 Like