4.1. Abilis firmware

As per now, the whole Abilis firmware can be stored within 6 megabytes of mass memory. It is made up of a large number of modules which can however be enabled or disabled, according to actual needs.

The Abilis firmware is just one executable file which is loaded at every bootstrap along with the configuration data (drivers.cfg) and several other items (mainly firmware which is to be downloaded into programmable chips present in the Abilis HW adapters).

Abilis can load the operating system and configuration from:

The same mass memory may contain several versions of the Abilis Firmware. The choice of which version is to be loaded can be done using an appropriate command.

[Tip]Tip

Interesting chapters:

4.1.1. Firmware versioning numbering

Abilis firmware versioning scheme is composed by 2 parts:

  • build number

  • release number

Every Abilis version has a build number, while only the official releases have a release number. “Build” versions are special or not yet official versionswhich can be released to provide solutions to urgent needs.

There is also a different version for videosurveillance applications that is recognizable from /VID suffix after the release number.

For example below is an example of a released version:

COM

Abilis CPX - Ver. 8.0.2/STD - Build 3961.6 - Branch 8.0 - Abilis-ID 800733
Wednesday 20/05/2015 09:01:10 (UTC+2.00)
Logged as SUPERUSER

[09:01:10] ABILIS_CPX:

Below is instead an example of a “build” version:

COM

Abilis CPX - Build 3978/STD - Abilis-ID 1400187
Wednesday 20/05/2015 09:35:15 (UTC+2.00)
Logged as SUPERUSER

[09:35:15] ABILIS_CPX:

Released versions are identified by a “3 numbers code”:

major version.minor version.patch version

  • major version : radical changes in comparison to previous versions;

  • minor version : not so radical changes in comparison to previous minor versions;

  • patch version : small changes or bug fixes in comparison to previous versions.

For example: Version 8.0.2

4.1.2. Configuration files

The drivers.cfg file contains all the settings for Abilis functioning.

The drivers.bck is loaded in the event that drivers.cfg can't be loaded for some reason.This measure enhances the system's reliability.

  • drivers.cfg: the current configuration (in case of changes, not yet loaded);

  • drivers.bck: the last saved backup (hopefully a working one!).

The drivers.cfg and drivers.bck files can be updated with save conf and save conf backup commands.

The scheme below describes how Abilis uses drivers.bck.

Figure 4.1. Abilis reliability using drivers.bck

Abilis reliability using drivers.bck

4.1.3. Compatibility of drivers.cfg files

Drivers.cfg files of different releases are compatible, only if the firmware releases have the same major and minor version numbers.

For example, drivers.cfg files of the releases 7.9.15 and 8.0.1 aren't compatible because the first number code is different; instead, drivers.cfg files of the release 8.0.1 and 8.0.3 are compatible because the first two numbers code are the same.

Every Abilis firmware release has a corresponding config.exe utility that creates and reads drivers.cfg files compatible with the releases having the same major and minor version numbers.

Every release also provides a Configuration converter (convcfg.exe or convcfgw.exe files) that allows to update the file format of previous versions to the current one.

[Tip]Tip

If the major and minor version numbers are the same, it is better to use the config.exe utility of a more recent patch version. In some very rare cases, you could find a new parameter, that was previously hidden in an older patch version.