This proposal has been approved and the Eclipse Kanto project has been created.
Visit the project page for the latest information and development.

Eclipse Kanto

Monday, July 26, 2021 - 12:58 by Elena Gramatova
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Project
Parent Project
Proposal State
Created
Background

We are living in an era of digitization, in which companies are reshaping their operations and innovating their business models by offering next generation connected products and digital services. Machines, consumer goods and vehicles are transforming into complex connected IoT devices with advanced software features, collecting and reacting on user insights and data in real-time. New IoT edge use cases emerge driven by massive amounts of real-time data, the growing complexity of IoT devices, and machine learning’s ability to extract relevance from data. Companies are considering using certain applications at the edge to get more value from their data, handle varied connectivity and data mobility, address the need for real-time decision-making, localized computing power, security and safety. Edge computing is shifting from hardware to software focusing on intelligent devices, edge platforms, edge applications and services. New connected products continuously increase in complexity to benefit AIoT – be it built into the products or empowering the production lines. Building the products of the future such as connected vehicles and in vehicle cross-domain applications, connected appliances, smart buildings and connected manufacturing is becoming more and more complex and companies are losing time and money to build the common technologies by themselves, sometimes even lacking the right skills and expertise.

 

Eclipse Kanto aims to better solve the challenges of digital transformers on their journey to create their next generation connected products and digital services, starting from the device. Eclipse Kanto addresses the ever growing complexity at the edge with a lightweight device-centric technology incorporating the knowledge and expertise of 20+ years of experience in the field of edge and IoT. Eclipse Kanto aims to selectively bring fitting cloud-native technologies like containerization and K8s control planes at the edge with a lightweight implementation to seamlessly manage diverse software on constrained edge devices like vehicle computers, connected building gateways, connected appliance and equipment, machines and more. By adopting established open concepts for modelling IoT device features, data and state into digital twins Eclipse Kanto will further harmonize the way heterogeneous edge devices and their capabilities are represented and managed. But no one can do it alone!

 

We believe that open source is where true collaboration, technology co-development and co-innovation can happen! By bringing cohesion in the open source edge, Eclipse Kanto will enable synergies between existing embedded and cloud ecosystems to converge knowledge and technology.

We believe that technology providers, manufacturers, service providers and digital transformers can join forces and together build the common technology to address the sheer complexity of edge software and hardware, thus accelerate value creation with differentiating connected products and digital services. Furthermore, building on open technology and open standards ensures no vendor lock-in and empowers manufacturers with full control and transparency over the software that goes at the heart of their devices.

Scope

Eclipse Kanto provides a modular IoT edge software stack for AIoT, configurable and remotely manageable by an IoT cloud ecosystem of choice.

Eclipse Kanto will bring all the essential IoT enablement for edge devices

  • Cloud connectivity and digital twins in the cloud via integrations with most fit-for-purpose public IoT platforms like Eclipse IoT packages, Bosch IoT Suite or Microsoft Azure IoT
  • Comprehensive semantic representation and modelling of edge functions and state using Eclipse Vorto or alternatives that might better fit specific domains
  • Container management using open standards and open specifications like OCI and integrations with open source container management runtimes like contianerd, podman and more depending on domain and hardware requirements
  • Local messaging and communication (pub-sub) between devices and applications using MQTT and integrations with open domain-specific protocols or standards.
  • Local edge management and configuration including containers, logs, files, runtime metrics, performance monitoring, health status and more depending on the domain specifics
  • Flexible software updates for diverse software like containerized applications, device firmware, operating system, scripts, etc. via open software management standards and integrations with best-in-class device and software management public backends like Eclipse hawkBit, Bosch IoT Suite Device Management, Microsoft Azure IoT Device Management and more
  • Flexible deployment options and integration with existing Linux ecosystems like Debian, Apertis Pro and Yocto Project
  • Integrations with open source complex event processing, analytics & AI systems and frameworks to enable analytics & AI for the lightweight edge

In addition, device-side client SDKs and libraries (southbound) will be provided for Go, Python, Rust to ease development of containerized device applications and software update agents.

Description

Eclipse Kanto is a modular IoT edge software stack for devices that enables them for AIoT with all the essentials - cloud connectivity and digital twins, local messaging, container management and software updates - all configurable and remotely manageable by an IoT cloud ecosystem of choice.

Eclipse Kanto makes it possible to deploy intelligence on the device so companies can get more value from diverse edge assets, process and act on IoT data right on the device and manage devices from the cloud. Device manufacturers can add new revenue streams with connected products and ensure agile development for hardware and software. Using Eclipse Kanto, technology teams take advantage of configurable and reusable building blocks to connect the unconnected or build the edge applications for the next generation connected products and services. Eclipse Kanto is specifically optimized for complex IoT devices facing limited hardware resources, (near) real-time requirements, diverse device software, heterogeneous data sources and the ability to operate without connection. This makes it a perfect technology for emerging paradigms such as software-defined vehicles, connected machines and connected manufacturing, smart appliances, smart buildings and more!

 

Eclipse Kanto is based on lightweight native components, open protocols and standard containers that ensure availability on hardware, minimum integration work, reduced complexity and scalable applications

  • Lightweight – deployable on various constrained edge devices with ranging hardware capabilities to scale hardware and connect diverse edge devices and data sources
  • Containerized – develop edge applications using most fit-for-purpose languages and frameworks, manage diverse device software with cloud-native technology in uniform way 
  • Connected – connect to most-fit-for-purpose public IoT platforms, manage devices and device data from the cloud with minimum customization, and prototype quickly
  • Flexible – choose and combine reusable configurable and interoperable building blocks to bring the right IoT edge capabilities depending on the hardware and use case

„Eclipse Kanto empowers digital transformers to build connected products and digital services and benefit from

  • Accelerated value creation via reducing the sheer complexity of edge software and promoting focus on differentiating device features and rapid innovation
  • Accelerated development with „quick prototyping, „fast migration of cloud-native applications to edge devices
  • Advanced interoperability by open standards and common APIs bundled in configurable and reusable building blocks
  • Mature and robust technology incorporating knowledge and insights from edge experts with 20+ years in the field of edge and IoT

 

Eclipse Kanto's features at a glance 

  • Cloud connectivity via MQTT to the Bosch IoT Suite (powered by Eclipse Hono, Eclipse Ditto and Eclipse hawkBit)
    • Automatically and securely connect devices to the Bosch IoT Suite cloud services using MQTT
    • Auto-registration of edge devices using certificates
    • Use of digital twins in the cloud for connected edge devices and their capabilities
    • Send telemetry data and receive commands from the cloud
    • Self-reliant and autonomous operation during connectivity loss via buffering messages
  • Cloud connectivity via MQTT to Microsoft Azure IoT
    • Device provisioning via Azure Device Provisioning Service
    • Connection to Azure IoT Hub using connection string and authentication with SAS token
    • Support of device-to-cloud (telemetry) and cloud-to-device (command&control) messages
  • Comprehensive semantic representation and modelling of edge functions and state
    • Represent edge devices and their capabilities using Eclipse Vorto models and function blocks
    • Command and control devices in uniform way based on Eclipse Vorto models - locally and from the cloud
  • Local communication and messaging via MQTT and Eclipse Ditto
    • Develop loosely coupled event-driven applications that exchange messages over a local Mosquito MQTT broker
    • MQTT broker configurations and message forwarding between applications and to the cloud
    • Access and manage connected IoT devices, IoT device data and services in cloud and at the edge via Eclipse Ditto protocol
  • Lightweight and pluggable OCI-compliant container management
    • Package edge applications into OCI containers to ensure better isolation, availability, reliability and dependency management
    • Use most fit-for-purpose technology and programming frameworks for IoT applications
    • Containers lifecycle and state management, incl. restart policy support, host resources access management, networking support, secured download and installation via secured access to container registries
    • Configure, monitor and manage OCI containers and containerized applications deployed at the edge using containers digital twin representation based on Vorto models, possibility to use the models in management operations
    • Flexible integration with most fit-for-purpose container management runtimes like containerd, podman, kata containers, LXC, LXD and more
  • Advanced container management using container manifests to define container engine state
    • Ensure a configuration interface that abstracts the complexity of the underlying executable components
    • Ensure initial system state, for example initial tooling/applications provisioning
    • Perform configurations and management at a higher level (e.g. the configuration unit is a set of containers, not a single instance)
  • Lightweight Kubernates control plane to enable distributed edge applications and seamless management of diverse software running on complex edge devices
  • Flexible software management
    • Deploy and manage software artifacts at the edge using the standard software management model of Bosch IoT Suite
    • Out-of-the box support for deployment and updates of OCI containers and containerized applications at the edge, incl. enablement to use mass management operations
    • Possibility to easily add support for new types of software artifact using ready SoftwareUpdatable Go library and SoftwareUpdatable features providing extensible and configurable software download and installation flow
  • Script-based software updates
    • Software update on the device using a script that enables updates of any kind of software, predefined in your script - via the standard software management of the Bosch IoT Suite Device Management using SoftwareUpdatable
    • Monitor the install and download process and resume it on start up.
  • File upload
    • Upload files such as logs, configurations, backups to the cloud using flexible cloud storage integrations with Azure Cloud Storage and AWS S3 buckets
    • Configure the edge from the backend to send files periodically, or for the backend to explicitly trigger file upload from the device
  • Advanced edge performance monitoring, logging and tracing via OpenTelemetry integration
    • Configure and collect CPU usage, memory, IO, disk access and more metrics for the system and per edge application
    • Configure logging and tracing levels for the whole system and per edge application in real time to remotely debug and monitor the edge
    • Integrate into an ecosystem of systems and tools for visualization, analysis and application performance insights
  • Flexible deployment and availability on hardware
    • Deployable on wide range of platforms with varying hardware capabilities - Linux ARM, Linux ARM64, Linux x86_64, including ready packages and life cycle management scripts
    • Specifically optimized for constrained devices to offer compact footprint, optimal resource utilization and excellent performance
    • Integrated with Linux ecosystems like Yocto Project, Debian and Apertis Pro
    • Integrated with open hardware platforms like Raspberry Pi
  • Robust device-side client SDKs and libraries (southbound) for different languages to accelerate development of edge applications
    • Eclipse Ditto libraries for device-side applications (southbound) for integration with the local MQTT messaging using Eclipse Ditto for Go, Python and more
    • SoftwareUpdatable library for implementing software update agents in Go

 

Eclipse Kanto is implemented in Go to naturally integrate with existing cloud-native technologies, frameworks and ecosystems, meet footprint and (near) real-time constraints, leverage modern development toolchains and ensure optimal learning curve for IoT and open source developers! As Eclipse Kanto is modular by nature, new components can also be implemented in other languages like Rust, C/C++ depending on the use cases and problems they solve. Whatever the language, everyone is more than welcome onboard to learn, collaborate and contribute on each and every step on the way forward!

 

Why Here?

Eclipse Kanto delivers the essential IoT enablement at the edge by bringing cloud-native technology and IoT concepts on the device.

Eclipse IoT is already the happy home for mature IoT projects like Eclipse Hono, Eclipse Ditto, Eclipse Vorto and Eclipse hawkBit that build an open ecosystem bringing collaborative knowledge and best practice on how to model, connect and manage IoT devices, their data and software. Eclipse Kanto adopts key concepts from these IoT projects on the device, like Eclipse Hono cloud connectivity message patterns, modelling edge features and state using Eclipse Vorto, managing and controlling edge devices and features using Eclipse Ditto and more. By bringing Eclipse Kanto in Eclipse IoT we will create cohesion between device and cloud, further enriching and extending the existing ecosystems.

Future Work

After open sourcing the core IoT edge technology, we plan to contribute edge features and enhancement for automotive use cases and software-defined vehicles, as part of the open technology platform and ecosystem for IoT and software-defined vehicle development we are building. These and more advanced edge features will be further developed in the open source together with additional companies and organizations in the scope of the Software-Defined Vehicle working group to be launched soon:

  • Cloud connectivity, communication and device provisioning to Microsoft Azure IoT
  • Advanced containers management using container manifests to define container engine state
  • Advanced edge performance monitoring, logging and tracing via OpenTelemetry integration
  • Lightweight Kubernates control plane to enable seamless management of distributed edge applications
  • Podman integration as container management runtime

We will be further consolidating open source edge software and integrating with existing Linux ecosystems via

  • Consolidated deployment model and integration with Yocto Project, Debian and Apertis Pro ecosystems
  • Consolidated device-side client SDKs and libraries

To further enable developers and contributors in the open source we will continuously invest in extending the CI/CD pipelines, testing environments and user documentation

  • Comprehensive integration test environments including virtualization as well as test
  • Comprehensive fully-fledged user documentation including more advanced developer guides and tutorials
  • Continuous building and deployment of additional deployable artifacts like Debian packages and Yocto metalayers
  • Comprehensive integration test environments and continuous integration testing with real hardware
Project Scheduling

After a successful project review in October 2021, we aim for having the initial contribution cleared and approved by November 2021.

Until end of 2021, we plan to make available and further develop in the open source the edge technology extensions and enhancements for automotive use cases and software-defined vehicles like cloud connectivity to Microsoft Azure IoT, state-driven container management using container manifests to define container engine state, podman integration, advanced edge performance monitoring via OpenTelemetry, edge logs management and more!

A first release is expected to be available end of 2021.

Committers
Ivo Karabashev (This committer does not have an Eclipse Account)
Stoyan Zoubev (This committer does not have an Eclipse Account)
Mentors
Interested Parties

Bosch

CarMedialab

Collabora

Initial Contribution

The initial contribution will bring the essential IoT features for edge devices in the open source to enable them for AIoT 

  • Cloud connectivity via MQTT and digital twins in the Bosch IoT Suite
  • Comprehensive semantic representation and modelling of edge functions and state using Eclipse Vorto
  • Local messaging over MQTT using Eclipse Ditto protocol
  • Lightweight and pluggable OCI-compliant containers management
  • Flexible software management via SoftwareUpdatable Vorto model
  • Script-based software updates at the edge
  • File upload with flexible cloud storage integrations with Azure Cloud Storage and AWS S3 buckets
  • Flexible deployment and availability on open hardware - Linux ARM, Linux ARM64, Linux x86_64

 

With the initial contribution we will open source the essential elements of the software engineering system to help developers and users onboard, adopt and contribute

  • Essential user documentation with getting started guides to facilitate new developers on-boarding and community involvement in further developing the code base 
  • Essential CI/CD pipelines to support development and enforce software quality standards via running unit tests, code coverage and static code analysis
  • Comprehensive contribution policies to promote best practice and guide through new developers and contributors

 

The code ownership is with Bosch.IO GmbH but we use third party dependencies copyrighted as listed below

 

golang/go, 1.16.6 (https://github.com/golang/go)

Copyright (c) 2009 The Go Authors. All rights reserved.

Licensed under the BSD 3-Clause "New" or "Revised" License

Jeffail/gabs, 2.6.0 (https://github.com/Jeffail/gabs)

Copyright (c) 2019 Ashley Jeffs

Licensed under the MIT License

ThreeDotsLabs/watermill, 1.1.1 (https://github.com/ThreeDotsLabs/watermill)

Copyright (c) 2019 Three Dots Labs

Licensed under the MIT License

cenkalti/backoff, 3.0.0 (https://github.com/cenkalti/backoff)

Copyright (c) 2014 Cenk Altı

Licensed under the MIT License

eclipse/ditto-clients-golang, 0.0.0 (https://github.com/eclipse/ditto-clients-golang)

Copyright (c) 2020, Eclipse Foundation, Inc. and its licensors

Licensed under Eclipse Public License v2.0

eclipse/paho.mqtt.golang, 1.3.5 (https://github.com/eclipse/paho.mqtt.golang)

Copyright (c) 2007, Eclipse Foundation, Inc. and its licensors

Licensed under Eclipse Distribution License v1.0

fsnotify/fsnotify, 1.4.9 (https://github.com/fsnotify/fsnotify)

Copyright (c) 2012 The Go Authors. All rights reserved.

Copyright (c) 2012-2019 fsnotify Authors. All rights reserved.

Licensed under the BSD 3-Clause "New" or "Revised" License

google/uuid, 1.1.1 (https://github.com/google/uuid)

Copyright (c) 2009,2014 Google Inc. All rights reserved.

Licensed under the BSD 3-Clause "New" or "Revised" License

gorilla/websocket, 1.4.2 (https://github.com/gorilla/websocket)

Copyright (c) 2013 The Gorilla WebSocket Authors

Licensed under the BSD 2-Clause "Simplified" License

hashicorp/go-multierror, 1.0.0 (https://github.com/hashicorp/go-multierror)

Copyright (c) 2014-2018 HashiCorp, Inc.

Licensed under the Mozilla Public License 2.0

hashicorp/errwrap, 1.0.0 (https://github.com/hashicorp/errwrap)

Copyright (c) 2014 HashiCorp, Inc.

Licensed under the Mozilla Public License 2.0

lithammer/shortuuid, 3.0.4 (https://github.com/lithammer/shortuuid)

Copyright (c) 2018 Peter Lithammer

Licensed under the The MIT License

oklog/ulid, 1.3.1 (https://github.com/oklog/ulid)

Copyright (c) 2016 The Oklog Authors

Licensed under the Apache License 2.0

pkg/errors, 0.9.1 (https://github.com/pkg/errors)

Copyright (c) 2015, Dave Cheney. All rights reserved.

Licensed under the BSD 2-Clause "Simplified" License

etcd-io/bbolt, 1.3.5 (https://github.com/etcd-io/bbolt)

Copyright (c) 2013 Ben Johnson

Licensed under the MIT License

natefinch/lumberjack, 2.0.0 (https://github.com/natefinch/lumberjack)

Copyright (c) 2014 Nate Finch

Licensed under the MIT License

google/go-tpm, 0.3.2 (https://github.com/google/go-tpm)

Copyright (c) 2018, Google LLC

Licensed under the Apache License 2.0

golang/net, 0.0.0-20200425230154-ff2c4b7c35a0 (https://github.com/golang/net)

Copyright (c) 2009 The Go Authors. All rights reserved.

Licensed under the BSD 3-Clause "New" or "Revised" License

golang/sys, 0.0.0-20201207223542-d4d67f95c62d (https://github.com/golang/sys)

Copyright (c) 2009 The Go Authors. All rights reserved.

Licensed under the BSD 3-Clause "New" or "Revised" License

alibaba/pouch, 1.3.0 (https://github.com/alibaba/pouch)

Copyright The PouchContainer Authors

Licensed under the Apache License 2.0

armon/go-metrics, 0.0.0-20180917152333-f0300d1749da (https://github.com/armon/go-metrics)

Copyright (c) 2013 Armon Dadgar

Licensed under the MIT License

armon/go-radix, 1.0.0 (https://github.com/armon/go-radix)

Copyright (c) 2014 Armon Dadgar

Licensed under the MIT License

boltdb/bolt, 1.3.1 (https://github.com/boltdb/bolt)

Copyright (c) 2013 Ben Johnson

Licensed under the MIT License

BurntSushi/toml, 0.3.1 (https://github.com/BurntSushi/toml)

Copyright (c) 2013 TOML authors

Licensed under the MIT License

containerd/containerd, 1.3.4 (https://github.com/containerd/containerd)

Copyright (c) The containerd Authors

Licensed under the Apache License 2.0

containerd/continuity, 0.0.0-20190426062206-aaeac12a7ffc (https://github.com/containerd/continuity)

Copyright (c) The containerd Authors

Licensed under the Apache License 2.0

containerd/fifo, 0.0.0-20190226154929-a9fb20d87448 (https://github.com/containerd/fifo)

Copyright (c) The containerd Authors

Licensed under the Apache License 2.0

containerd/ttrpc, 0.0.0-20190828154514-0e0f228740de (https://github.com/containerd/ttrpc)

Copyright (c) The containerd Authors

Licensed under the Apache License 2.0

containerd/typeurl, 0.0.0-20180627222232-a93fcdb778cd (https://github.com/containerd/typeurl)

Copyright (c) The containerd Authors

Licensed under the Apache License 2.0

etcd-io/etcd, 3.3.18+incompatible (https://github.com/etcd-io/etcd)

Copyright (c) 2015 The etcd Authors

Licensed under the Apache License 2.0

coreos/go-semver, 0.3.0 (https://github.com/coreos/go-semver)

Copyright (c) 2013-2015 CoreOS, Inc.

Licensed under the Apache License 2.0

deckarep/golang-set, 1.7.1 (https://github.com/deckarep/golang-set)

Copyright (c) 2013 Ralph Caraveo (deckarep@gmail.com)

Licensed under the MIT License

distribution/distribution, 0.0.0-20200319173657-742aab907b54 (https://github.com/distribution/distribution)

Licensed under the Apache License 2.0

moby/moby, 1.4.2-0.20200330121334-7f8b4b621b5d (https://github.com/moby/moby)

Copyright 2013-2018 Docker, Inc.

Licensed under the Apache License 2.0

moby/libnetwork, 0.8.0-dev.2.0.20200318182600-ef149a924dfd (https://github.com/moby/libnetwork)

Copyright 2015 Docker, Inc.

Licensed under the Apache License 2.0

docker/go-connections, 0.4.0 (https://godoc.org/github.com/docker/go-connections)

Copyright 2015 Docker, Inc.

Licensed under the Apache License 2.0

docker/go-events, 0.0.0-20190806004212-e31b211e4f1c (https://github.com/docker/go-events)

Copyright (c) 2016 Docker, Inc.

Licensed under the Apache License 2.0

docker/libkv, 0.2.1 (https://github.com/docker/libkv)

Copyright 2014-2016 Docker, Inc.

Licensed under the Apache License 2.0

eclipse/paho.mqtt.golang, 1.2.0 (https://github.com/eclipse/paho.mqtt.golang)

Copyright (c) 2007 Eclipse Foundation, Inc. and its licensors

Licensed under Eclipse Distribution License 1.0

fatih/color, 1.9.0 (https://github.com/fatih/color)

Copyright (c) 2013 Fatih Arslan

Licensed under the MIT License

fsnotify/fsnotify, v1.4.9 (https://github.com/fsnotify/fsnotify)

Copyright (c) 2012 The Go Authors, 2012-2019 fsnotify Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

godbus/dbus, 5.0.3 (https://github.com/godbus/dbus)

Copyright (c) 2013 Georg Reinke (<guelfey at gmail dot com>), Google

Licensed under the BSD 2-Clause "Simplified" License

gogo/googleapis, 1.3.2 (https://github.com/gogo/googleapis)

Copyright (c) 2015 Google Inc, 2018 GoGo Authors

Licensed under the Apache License 2.0

gogo/protobuf, v1.3.1 (https://github.com/gogo/protobuf)

Copyright (c) 2010 The Go Authors, 2013 The GoGo Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

google/btree, 1.0.0 (https://github.com/google/btree)

Copyright (c) 2014 Google Inc.

Licensed under the Apache License 2.0

google/uuid, 1.1.1 (https://github.com/google/uuid)

Copyright (c) 2009,2014 Google Inc.

Licensed under the BSD 3-Clause "New" or "Revised" License

hashicorp/consul/api, 1.4.0 (https://github.com/hashicorp/consul/tree/main/api)

Copyright (c) 2014-2018 HashiCorp, Inc.

Licensed under the Mozilla Public License 2.0

hashicorp/errwrap, 1.0.0 (https://github.com/hashicorp/errwrap)

Licensed under the Mozilla Public License 2.0

hashicorp/go-cleanhttp, 0.5.1 (https://github.com/hashicorp/go-cleanhttp)

Licensed under the Mozilla Public License 2.0

hashicorp/go-hclog, 0.12.0 (https://github.com/hashicorp/go-hclog)

Copyright (c) 2017 HashiCorp

Licensed under the MIT License

hashicorp/go-immutable-radix, 1.0.0 (https://github.com/hashicorp/go-immutable-radix)

Licensed under the Mozilla Public License 2.0

hashicorp/golang-lru, 0.5.1 (https://github.com/hashicorp/golang-lru)

Licensed under the Mozilla Public License 2.0

hashicorp/go-msgpack, 0.5.3 (https://github.com/hashicorp/go-msgpack)

Copyright (c) 2012, 2013 Ugorji Nwoke

Licensed under the BSD 3-Clause "New" or "Revised" License

hashicorp/go-multierror, 1.0.0 (https://github.com/hashicorp/go-multierror)

Licensed under the Mozilla Public License 2.0

hashicorp/go-rootcerts, 1.0.2 (https://github.com/hashicorp/go-rootcerts)

Licensed under the Mozilla Public License 2.0

hashicorp/go-sockaddr, 1.0.0 (https://github.com/hashicorp/go-sockaddr)

Licensed under the Mozilla Public License 2.0

hashicorp/memberlist, 0.2.0 (https://github.com/hashicorp/memberlist)

Licensed under the Mozilla Public License 2.0

hashicorp/serf, 0.9.0 (https://github.com/hashicorp/serf)

Copyright 2013 Hashicorp

Licensed under the Mozilla Public License 2.0

ishidawataru/sctp, 0.0.0-20191218070446-00ab2ac2db07 (https://github.com/ishidawataru/sctp)

Copyright 2019 Wataru Ishida

Licensed under the Apache License 2.0

json-iterator/go, 1.1.9 (https://github.com/json-iterator/go)

Copyright (c) 2016 json-iterator

Licensed under the MIT License

mattn/go-colorable, 0.1.4 (https://github.com/mattn/go-colorable)

Copyright (c) 2016 Yasuhiro Matsumoto

Licensed under the MIT License

mattn/go-isatty, 0.0.12 (https://github.com/mattn/go-isatty)

Copyright (c) Yasuhiro MATSUMOTO <mattn.jp@gmail.com>

Licensed under the MIT License

miekg/dns, 1.1.27 (https://github.com/miekg/dns)

Copyright (c) 2009 The Go Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

mitchellh/mapstructure, 1.1.2 (https://github.com/mitchellh/mapstructure)

Copyright (c) 2013 Mitchell Hashimoto

Licensed under the MIT License

moby/ipvs, 1.0.0 (https://github.com/moby/ipvs)

Copyright 2015 Docker, Inc

Licensed under the Apache License 2.0

modern-go/concurrent, 0.0.0-20180306012644-bacd9c7ef1dd (https://github.com/modern-go/concurrent)

Licensed under the Apache License 2.0

modern-go/reflect2, 1.0.1 (https://github.com/modern-go/reflect2)

Licensed under the Apache License 2.0

opencontainers/go-digest, 1.0.0-rc1 (https://github.com/opencontainers/go-digest)

Copyright (c) 2016 Docker, Inc.

Licensed under the Apache License 2.0

opencontainers/image-spec, 1.0.1 (https://github.com/opencontainers/image-spec)

Copyright 2016 The Linux Foundation

Licensed under the Apache License 2.0

opencontainers/runc, 1.0.0-rc10 (https://github.com/opencontainers/runc)

Copyright 2014 Docker, Inc.

Licensed under the Apache License 2.0

opencontainers/runtime-spec, 1.0.1 (https://github.com/opencontainers/runtime-spec)

Copyright 2015 The Linux Foundation

Licensed under the Apache License 2.0

pkg/errors, 0.9.1 (https://github.com/pkg/errors)

Copyright (c) 2015, Dave Cheney <dave@cheney.net>

Licensed under the BSD 2-Clause "Simplified" License

samuel/go-zookeeper, 0.0.0-20190923202752-2cc03de413da (https://github.com/samuel/go-zookeeper)

Copyright (c) 2013, Samuel Stauffer <samuel@descolada.com>

Licensed under the BSD 3-Clause "New" or "Revised" License

sean-/seed, 0.0.0-20170313163322-e2103e2c3529 (https://github.com/sean-/seed)

Copyright (c) 2017 Sean Chittenden, 2016 Alex Dadgar, 2009 The Go Authors. All rights reserved.

Licensed under the MIT and the BSD 3-Clause "New" or "Revised" Licenses

sirupsen/logrus, 1.4.2 (https://github.com/sirupsen/logrus)

Copyright (c) 2014 Simon Eskildsen

Licensed under the MIT License

spf13/cobra, 0.0.6 (https://github.com/spf13/cobra)

Copyright © 2015 Steve Francia <spf@spf13.com>.

Licensed under the Apache License 2.0

spf13/pflag, 1.0.5 (https://github.com/spf13/pflag)

Copyright (c) 2012 Alex Ogier, 2012 The Go Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

syndtr/gocapability, 0.0.0-20170704070218-db04d3cc01c8 (https://github.com/syndtr/gocapability)

Copyright (c) 2013 Suryandaru Triandana <syndtr@gmail.com>. All rights reserved.

Licensed under the BSD 2-Clause "Simplified" License

vishvananda/netlink, 1.1.0 (https://github.com/vishvananda/netlink)

Copyright 2014 Vishvananda Ishaya, 2014 Docker, Inc.

Licensed under the Apache License 2.0

vishvananda/netns, 0.0.0-20191106174202-0a2b9b5464df (https://github.com/vishvananda/netns)

Copyright (c) 2014 Vishvananda Ishaya, 2014 Docker, Inc.

Licensed under the Apache License 2.0

golang/crypto, 0.0.0-20200311171314-f7b00557c8c4 (https://github.com/golang/crypto)

Copyright (c) 2009 The Go Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

golang/net, 0.0.0-20200301022130-244492dfa37a (https://github.com/golang/net)

Copyright (c) 2009 The Go Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

golang/sync, 0.0.0-20190911185100-cd5d95a43a6e (https://github.com/golang/sync)

Copyright (c) 2009 The Go Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

golang/sys, 0.0.0-20200515095857-1151b9dac4a9 (https://github.com/golang/sys)

Copyright (c) 2009 The Go Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

golang/text, 0.3.2 (https://github.com/golang/text)

Copyright (c) 2009 The Go Authors. All rights reserved

Licensed under the BSD 3-Clause "New" or "Revised" License

googleapis/go-genproto, 0.0.0-20200313141609-30c55424f95d (https://github.com/googleapis/go-genproto)

Copyright 2019 Google LLC

Licensed under the Apache License 2.0

grpc/grpc-go, 1.28.0 (https://github.com/grpc/grpc-go)

Copyright 2017 gRPC authors

Licensed under the Apache License 2.0

golang/protobuf, 1.3.5 (https://github.com/golang/protobuf)

Copyright 2010 The Go Authors

Licensed under the BSD 3-Clause "New" or "Revised" License

gorilla/websocket, 1.4.2 (https://github.com/gorilla/websocket)

Copyright (c) 2013 The Gorilla WebSocket Authors. All rights reserved.

Licensed under the BSD 2-Clause "Simplified" License

natefinch/lumberjack, 2.0.0 (https://gopkg.in/natefinch/lumberjack)

Copyright (c) 2014 Nate Finch

Licensed under the MIT License (LICENSE.natefinch_lumberjack.v2-2.0.0)

golang.org/x/net, 0.0.0-20200707034311-ab3426394381 (https://pkg.go.dev/golang.org/x/net)

Copyright (c) 2009 The Go Authors. All rights reserved.

Licensed under the BSD 3-Clause "New" or "Revised" License

golang.org/x/sys, 0.0.0-20200323222414-85ca7c5b95cd (https://pkg.go.dev/golang.org/x/sys)

Copyright (c) 2009 The Go Authors. All rights reserved.

Licensed under the BSD 3-Clause "New" or "Revised" License

aws/aws-sdk-go-v2, 1.5.0 (https://github.com/aws/aws-sdk-go-v2)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/config, 1.2.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/config)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/credentials, 1.2.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/credentials)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/feature/ec2/imds, 1.1.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/feature/ec2/imds)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/feature/s3/manager, 1.2.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/feature/s3/manager)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/service/internal/accept-encoding, 1.1.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/service/internal/accept-encoding)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/service/internal/presigned-url, 1.1.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/service/internal/presigned-url)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/service/internal/s3shared, 1.3.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/service/internal/s3shared)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/service/s3, 1.7.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/service/s3)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/service/sso, 1.2.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/service/sso)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/aws-sdk-go-v2/service/sts, 1.4.0 (https://github.com/aws/aws-sdk-go-v2/tree/main/service/sts)

Copyright 2015 Amazon.com, Inc. and its licensors

Licensed under Apache License v2.0

aws/smithy-go, v1.4.0 (https://github.com/aws/smithy-go)

Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.

Licensed under Apache License v2.0

jmespath/go-jmespath, v0.4.0 (https://github.com/jmespath/go-jmespath)

Copyright 2015 James Saryerwinnie

Licensed under Apache License v2.0

natefinch/lumberjack, 2.0.0 (https://gopkg.in/natefinch/lumberjack)

Copyright (c) 2014 Nate Finch

Licensed under the MIT License

Source Repository Type

Hi,

in the description of the initial contribution it says that it provides "Cloud connectivity via MQTT and digital twins in the Bosch IoT Suite".

Does this mean that it only works witth the Bosch IoT Suite or does it also work with e.g. Eclipse Hono and Ditto only?