Skip to content

Quickstart

This quickstart walks you through the essential steps required to bring up your first DaaS-IoT node and understand the minimal workflow needed to operate inside a DaaS-IoT overlay network.

The goal is not to cover every feature, but to help you reach a working and consistent system as quickly as possible.


1. Select Your Environment

Start by choosing the combination of Platform SDK and Language Binding that best fits your deployment.

DaaS-IoT currently supports:

  • Operating Systems: GNU/Linux, Windows, macOS, Android
  • Languages: native C++, Python, Qt/C++, Java

For a complete and up-to-date compatibility overview, refer to the
Environment Matrix.


2. Install the SDK

Each platform and language binding provides its own installation procedure.

Platform SDKs

Language Bindings

Each installation page contains platform-specific instructions, including package managers, bindings, and source-based builds where applicable.


3. Run Your First Node

Before a node can participate in a DaaS-IoT network, a minimal configuration must be defined.

A node can be started in two ways:

  • Cold start — create a new node from scratch
  • Warm start — restore a node from a previously saved configuration

Option A — Create a New Node (Cold Start)

When creating a fresh node, the following elements must be defined explicitly:

  1. SID (System Identifier)
    Defines the network domain the node belongs to.
    Nodes can discover each other, synchronize, and exchange DDOs only if they share the same SID.

  2. DIN (DaaS Identifier)
    Uniquely identifies the node within the SID.
    It is used for addressing, routing, topology mapping, and DDO delivery.

  3. Communication Drivers
    At least one driver must be enabled (e.g. INET4, Bluetooth, or any other platform-supported link layer).
    Drivers define how packets are physically exchanged between nodes.

Once these parameters are defined, the node can:

  • initialize the runtime
  • join the overlay network
  • validate connectivity through discovery
  • enter the time synchronization phase (dATS)

Option B — Restore an Existing Node (Warm Start)

If a configuration file from a previous session is available, the node can be restored directly.

In this case:

  • the stored SID, DIN, driver configuration, and timing parameters are automatically loaded
  • only initialization and join operations are required

This approach is recommended for persistent devices and stable deployments.


4. Explore the Official Examples

Each SDK includes a set of official examples covering common usage patterns, such as:

  • Overlay initialization
  • Driver configuration
  • Discovery and autonomous networking
  • Time synchronization (dATS)
  • Sending and receiving DDOs
  • Working with typesets
  • Handling frisbees

Examples are organized by platform and language:

Platform SDK Examples

Language Examples

The full examples directory is also available on GitHub:

👉 https://github.com/sebyone/daasiot-sdk/tree/main/examples


5. Next Steps

Once you are comfortable with the basics, continue with:

Core Concepts

SDK Guides

API References

DaaS-IoT is designed to be predictable, modular, and cross-platform: start small, then integrate features progressively.