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
{
"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.