E-Sharp Helpcenter
Breadcrumbs

The boot.config file

This document describes the details around the boot.config file.

Introduction

Sometimes, a default boot-up configuration is necessary. This can be used for example when a static IP address should be configured, or a alias file to load automatically. For this purpose, a boot.config file exists to tell the system what to do when booting up.

File structure

JSON
{
  "Enabled": true,
  "Author": "system",
  "Created": "2025-11-03T04:23:29.7742193Z",
  "Modified": "2025-11-03T04:23:29.774345Z",
  "Description": "My favorite boot configuration file.",
  "IpConfigurations": [
    {
      "Enabled": true,
      "StaticIP": "169.254.36.222/16",
      "Interface": "eth0"
    }
  ],
  "AliasFiles": [
    {
      "Enabled": false,
      "Order": 0,
      "Path": "myaliasfile.csv"
    }
  ],
  "Wifi": {
    "Enabled": false,
    "Ssid": "your_ssid",
    "Password": "your_password"
  },
  "Modules": [
    {
      "Name": "MyModule",
      "Enabled": false,
      "ClassName": "MyNamespace.MyModuleClass",
      "AssemblyPath": "modules/mymodule.dll",
      "Namespace": "MyNamespace",
      "ImageName": "",
      "InitialData": {},
      "SerializableVersion": 1
    }
  ]
}

General fields:

Field

Example

Description

Enabled

true

Sets if any of the following boot configurations should be run. Note that if this flag is false, nothing will be configured.

Author

system

The author of the boot.config file

Created

<datetime>

Date when the file was created

LastModified

<datetime>

Date when the file was last modified

Description

<description>

A description of the config file

The file is structured into the following sections:

IpConfigurations

This section can be used to configure static IP addresses.

DHCP will always be enabled on the system. The reason for why it is not allowed to turn off dynamically allocated IP address is that this might render the system unreachable if a faulty configuration is entered.

You can always reach the system using the host name (I.e. the serial number in axxxxxx format) even if static IP is configured. (Assumes that there’s a DNS controller on the network)

An IP configuration have four fields:

Field

Example

Description

Enabled

true

Sets if this IP configuration will be applied

StaticIP

169.254.36.222/16

A CIDR notation static IP address. Note the ending /16, which in this case means netmask 255.255.0.0. The netmask MUST match the network configuration on the host PC! If the CIDR ending /xx is missing, the CIDR /24 will be inferred.

Interface

eth0

The network interface to apply the static IP on. Typically “eth0”

  "IpConfigurations": [
    {
      "Enabled": true,
      "StaticIP": "169.254.36.222/16",
      "Interface": "eth0"
    }
  ],

It is allowed to have multiple IP configurations, even on the same interface.

You can add as many IP configurations as you like and the system will respond on each one

Before an IP configuration is applied, the configured IP is pinged. If there is a response on that IP, the configuration will be skipped to prevent IP address conflicts on the network.

AliasFiles

This section can be used to configure alias files.

  "AliasFiles": [
    {
      "Enabled": false,
      "Order": 0,
      "Path": "myaliasfile.csv"
    }
  ],


Field

Example

Description

Enabled

true

Sets if this alias file will be applied

Order

0

The order of the files being applied, from lowest number first.

Path

myaliasfile.csv

The file name of the alias file to load

The alias file must be installed on the system, either by using the file browser or the “Upload Alias” button.

Wifi

This section can be used to configure WIFI on the system.

  "Wifi": {
    "Enabled": false,
    "Ssid": "your_ssid",
    "Password": "your_password"
  },


Field

Example

Description

Enabled

true

Sets if wifi should be enabled

Ssid

“your_ssid”

The SSID of the network to attach to

Password

“your_password”

The password to the network to attach to

Even is WIFI is enabled in this file, it still requires that the hardware configuration on the target system is set to allow WIFI. This depends on what configuration that is agreed upon purchase of your Accordion system.

The password is visible to anyone that attaches to this system via Accordion Pilot! Do not store sensitive passwords in this file!

Contact E# support if you want a configuration of WIFI ssid/password where users can’t see the password.

Modules

This section can be used to auto-load software modules upon boot.

  "Modules": [
    {
      "Name": "MyModule",
      "Enabled": false,
      "ClassName": "MyNamespace.MyModuleClass",
      "AssemblyPath": "modules/mymodule.dll",
      "Namespace": "MyNamespace",
      "ImageName": "",
      "InitialData": {},
      "SerializableVersion": 1
    }
  ],


Field

Example

Description

Name

MyModule

The name of the installed module to load

Enabled

true

Sets if loading this module is enabled

ClassName

MyNamespace.MyModuleClass

The class name of the module

AssemblyPath

module/mymodule.dll

The path to the module dll

Namespace

MyNamespace

The namespace of the module

ImageName


Not used

InitialData

{}

Any initial data (key/value pairs) that should be used to configure the software module.

SerializableVersion

1

Internal version. Do not change

Make sure that the configuration of the module is correct before enabling it. Test to load the software module manually first to ensure that the module loads without warnings and errors. Faulty configuration will prevent the accordion process to boot.

Configuration order

The configuration will happen in a defined order, which also affect what is possible to do. The sequence is as follows:

  • WIFI Configuration

  • IP Configurations

  • Load software modules

  • Apply alias files in ascending order

Loading software modules and applying alias files will be done at each reset, not only during boot!

How to edit boot.config

Open Accordion Pilot, go to the configuration tab.

Then, attach with the file browser, go to hw/config/boot.config and download the file to the local PC.

Edit the file, for example, set static IP to:

"IpConfigurations": [
{
"Enabled": true,
"StaticIP": "192.168.0.222/24",
"Interface": "eth0"
}

Also note the CIDR format (ending in for example /24). Providing CIDR is optional (it reverts to /24), but is REQUIRED if the netmask differs as this tells the system how to set the netmask/broadcast.

After editing, upload the file at the same location, overwriting the existing file. Then reboot the AGENT.

If a faulty configuration is entered, the accordion process will not boot correctly. You can judge from the heartbeat LED on the back of the system; if it pulses blue/green, the process started normally, otherwise the LED will be stale or even black.

If the accordion process didn’t boot successfully, you can still attach the system using the configuration tab. Delete the file and reboot. Now, an empty (and disabled) file will be re-created for you.