Skip to main content

Configure your first device with BB-Eco

This guide takes you from a discovered device to a configuration you can read, change, save as a file, and push to another device — the foundation of config as code with BB-Eco.

Before you start

Read a device's configuration

Click the device card to open its detail panel. The Info tab shows the device's identity, network settings, and configuration status in one place:

BB-Eco detail panel Info tab for an ED-549 showing identity fields (model, MAC, IP address, firmware version), network configuration, and the quick-action buttons at the bottom

The same view from the CLI is one command, using the same keys you'll meet later in template files:

bb-eco config 192.168.0.63
identity.mac              : 00:0A:4F:06:4A:EE
identity.model : ED-549
identity.firmwareVersion : 8.25
network.dhcp : false
network.gateway : 192.168.0.254
device.name : ED-549
device.location : jim
io.protocol : ASCII
...

Change a setting

For a one-off change, two routes:

  • Desktop app — the Web Config tab renders the device's own embedded web UI inline, so anything the device can configure, you can change without leaving BB-Eco.
  • CLI — write any key the read view displays:
bb-eco config 192.168.0.63 device.location Panel-A
Set 'device.location' = 'Panel-A' on 192.168.0.63.
Name and location limits

Device name, location, and IO line names are limited to 10 characters by the device firmware. BB-Eco rejects longer values before they reach the device.

Save the configuration as a template

A template is a JSON file holding a device's configurable settings. On the Info tab, scroll to Configuration Status and click Download Template — BB-Eco saves the device's current configuration as a .json file. The CLI equivalent:

bb-eco template export 192.168.0.63 ed-549-baseline.json
Template exported to ed-549-baseline.json

Commit that file to Git. It is now the documented, reviewable record of how this device is configured — and the input for drift detection.

Passwords and security settings are excluded from exports unless you explicitly opt in — see the template export reference.

Make the template reusable

An exported template describes one device. To turn it into a standard for many:

  1. Delete the identity section — it's a read-only snapshot of the source device and is never applied.
  2. Set anything you don't want to manage to null — a null field or missing section means don't touch, so the template only governs what you care about.
  3. Leave staticIp as null — IPs are device-specific.

Every available key, its factory default, and the range the firmware accepts is documented in the downloadable reference templates:

Check your edited template before using it — validation is offline and CI-friendly:

bb-eco template validate ed-549-baseline.json
Family: ED
Model: ED-549
Template is valid.

Apply the template to a device

In the app: Info tab → Apply Template → choose the file. A preview lists every change before anything is written to the device.

From the CLI, preview first with --dry-run, then apply:

bb-eco template apply 192.168.0.91 ed-549-baseline.json --dry-run
bb-eco template apply 192.168.0.91 ed-549-baseline.json

Templates are family-locked — an ED template refuses to apply to an ES device — and network settings are written last so an IP change can't strand the rest of the apply. The full section-by-section behaviour is in the template format reference.

To push one template across many devices, loop the CLI over your device list — the pattern (and its drift-audit counterpart) is in Detect configuration drift across your fleet.

Next step

Your template is now the single source of truth for this device. Next, let BB-Eco tell you when reality diverges from it.

More resources