element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products and Partners
    Products and Partners
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Community Hub
Community Hub
Member and Staff Blogs How to configure a DAM (AI agent) in DOBI
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Leaderboard
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Community Hub to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: dobi_terminal
  • Date Created: 5 Oct 2026 6:00 PM Date Created
  • Views 17 views
  • Likes 2 likes
  • Comments 0 comments
Related
Recommended

How to configure a DAM (AI agent) in DOBI

dobi_terminal
dobi_terminal
5 Oct 2026
How to configure a DAM (AI agent) in DOBI

A DAM (Decentralized Autonomous Manager) is the AI agent that watches a cluster of devices, evaluates alarm rules every few seconds, and acts autonomously. In this project you create one with the 5-step wizard, define its behavior and alarm rules, pick the model it thinks with, and decide whether to turn on optional x402 pay-per-use.

This is a beginner build: it takes about 15 minutes and involves no soldering and no firmware flashing. You work entirely in the DOBI dashboard. Before you start, make sure you have a DOBI account and you are signed in, at least one device already registered (see the ESP32 guide if you have none), and a clear idea of which metric thresholds matter for your cluster, for example temperature, power, or stock.

You also need a provisioning key if you plan to link devices to the DAM later. After the DAM exists, open its detail page to link devices, watch the activity log, and read the decision traces as the agent runs its sensing and thinking cycles.

Read the original guide at https://dobi.guru/guides/configure-dam.

Supplies

  • A DOBI account
  • At least one registered device
  • A provisioning key (to link devices later)

    Step 1: Open the DAM wizard

    You start in the dashboard because the wizard is the only place where identity, behavior, and model selection are assembled into a consistent agent definition. If you skip a field here you cannot patch it from the device side later, so take the full pass now.

    From the dashboard, go to the DAMs section and click "Create a new DAM". The wizard has 5 steps: Identity, Behavior, Agent, Monetize and Review. You can go back at any time without losing what you typed, so there is no penalty for experimenting with a type or prompt and returning later.

    The usual failure mode is closing the browser tab or navigating away mid-wizard: any step that had not been submitted is lost, and you have to start the wizard over.

    image

    Step 2: Identity: name and type

    Naming and typing first matters because the type preselection drives the rest of the wizard. Give the DAM a name, an optional description, and pick the asset class it manages.

    The type preselects a sensible system prompt and alarm rules for that domain: Fleet, Commerce, Energy, Industrial, Smart building or Custom. Choosing the closest domain saves you from rewriting defaults, while Custom is the correct choice when your cluster does not fit any of the others.

    The usual failure here is picking a domain type for a cluster it does not describe. The prefilled prompt and thresholds will then reference metrics your devices never report, and the agent will spend its cycles deciding nothing useful.

    Step 3: Behavior: system prompt and alarm rules

    Behavior is where the agent gets its job description. The system prompt tells the AI what it is managing and how to reason; it is shown to the LLM on every cycle, so be explicit about the metrics you care about and the actions you permit.

    Alarm rules fire when a device metric crosses a threshold. They are evaluated every 10 seconds, with no LLM required, so they keep working even when the model is slow or unavailable. Define them as data with the metric name, the comparison, and the threshold, matching the shape below.

    Example alarm rules · json

    [
      { "metric": "temperature", "operator": ">", "value": 60, "severity": "warning", "message": "High charger temperature" },
      { "metric": "power_kw", "operator": ">", "value": 130, "severity": "critical", "message": "Power overload" }
    ]

    The usual failure is writing a threshold that never matches a real reading, for example a unit mismatch or a metric name that the device does not publish. Watch the activity log after creation: no alarms with devices clearly out of range means the rule never matches.

    Step 4: Agent: pick the AI model

    Here you choose the model the agent will use for its "thinking" cycles. You can leave it at the default; the provider is resolved server-side from the LLM_PROVIDER env var, so the choice on this screen is the model, not the vendor wiring.

    When no LLM is configured, the DAM falls back to deterministic rule-based decisions. That is a deliberate degradation, not an error: alarm rules still evaluate every 10 seconds and the agent still acts on them, it just does not reason beyond the rules.

    The usual failure is assuming you need a model configured before the DAM does anything. If you intentionally want a rule-only agent, leaving the LLM unconfigured is a valid setup.

    Step 5: Monetize (optional): x402 pay-per-use

    This step is optional. If you enable x402, the DAM charges a small fee per managed action, settled on-chain. Enabling it makes each action an economically accounted event; if you leave it off, the DAM simply runs without charging.

    You can change this later, so there is no lock-in at creation time. Pick based on whether the agent is meant to meter its work for third parties or just manage your own cluster.

    If you enable x402, be aware that settlement happens on-chain and actions become chargeable. Test with a small, non-critical action first so you understand the fee behavior before it touches production devices.

    The usual failure is turning x402 on for an exploratory agent you are still tuning, then being surprised that tuning actions are billed.

    Step 6: Review and create

    Before creating, read the summary end to end: name, type, model, number of alarm rules and monetization. This is your last chance to catch a wrong domain type or a missing rule, since the agent starts behaving the moment it exists.

    When everything matches what you intended, click "Create DAM". The platform also creates a shadow asset record so the DAM fits into the x402 flow automatically, which is why you do not need to wire anything extra for monetization to be recognized.

    The usual failure here is skipping the review and creating a DAM whose type prefilled rules you never inspected. If the shadow asset appears unexpectedly, that is the platform's automatic record, not a duplicate you created.

    Step 7: Create a DAM via API

    If you would rather automate provisioning, you can create a DAM through the API instead of the wizard. All five fields are supplied in the request body, so the same identity, behavior, agent and monetize decisions apply.

    Copy and paste this whole block into your environment. Replace the credentials with your own. Keep the endpoint exactly as written, since it targets the DOBI API rather than the dashboard.

    Create a DAM via API · bash

    curl -X POST https://dobi.guru/api/dams \
      -H "Authorization: Bearer $DOBI_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{
        "id_dam": "my-fleet-dam",
        "name": "Nairobi charger cluster",
        "description": "EV charging fleet with load monitoring",
        "dam_type": "fleet",
        "ai_model": "gpt-4o-mini",
        "ai_behavior_rules": {
          "system_prompt": "You manage an EV charging fleet. Optimize utilization, balance load across stations, and flag maintenance needs.",
          "alarm_rules": [
            { "metric": "temperature", "operator": ">", "value": 60, "severity": "warning", "message": "High charger temperature" },
            { "metric": "power_kw", "operator": ">", "value": 130, "severity": "critical", "message": "Power overload" }
          ]
        }
      }'

    The usual failure is running the block with the placeholder credentials: the request returns an authentication error, or worse, a partially applied configuration if only some fields were replaced. Check each credential before you send it.

  • Sign in to reply
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube