Programming Tool

From LORIX One - Wiki

Revision as of 12:25, 23 April 2019 by LORIX One (talk | contribs) (About)

Jump to: navigation, search

Minimal configuration

Operation System

  • Windows 7 and later (32 or 64 bits)
  • Linux (64 bits)
    • Ubuntu 12.04 and later
    • Fedora 21 and later
    • Debian 8 and later

The programming tool is not available on mac OS.


  • Intel Pentium 4 processor
  • 512 MB of RAM



You can find the latest versions of the programming tool here :



You have the choice of either the Setup version who will install the application or the Portable version.

During the setup, you can either install the application for all user or for yourself only. If installing for all users, you need administrative privileges.


The downloaded .AppImage file is an executable application. You may be asked to install the software automatically on some systems.

You may need to set the application as executable before you can start it.

Programming-Tool Executable.png

Or run the following in a Terminal:

sudo chmod +x /path/to/programming-tool/lorix-programming-tool-1.0.3.AppImage

The application must be run with elevated privileges to access the USB peripherals. If not, you will get a permanent warning at the top of the application. To start the application with administrative privileges, open a Terminal and run:

sudo /path/to/programming-tool/lorix-programming-tool-1.0.3.AppImage


The program will automatically check for newer versions at start. You can manually check for updates in the 'about' menu.

Device programming


The programming tool has two main sections:

  • The first, called "Archive" allows you to load the archive of the image you want to program on the device and check the content of this archive.
  • The second, called "Devices programming" allows you to see devices available for programming and program them with the loaded archive.

Programming-Tool Overview.png

Load an archive

To load an archive, you can either drop the image into the dotted blue zone or chose on with the "Choose archive" button.

Programming-Tool Load-archive.png

The Programming Tool will then extract the images from the archive, read the included metadata and validate that the images are valid regarding the metadata description.

The archive will be extracted in the operating system temp folders. In Windows, the path is : %TMP%\wifx\lorix\programming-tool\archives.

Once loaded, you can check the archive content with the "Check" step. It will show you three section :

  • Archive information
  • List of supported products of this archive
  • Partitions details

Programming-Tool Archive-Check.png
If the archive has anything wrong, you will get informed with a warning message.

You may check that the loaded image supported the product you want to program by expanding the "Supported products" section:

Programming-Tool Archive-Check-Products.png

If everything is fine, you can go on with connecting your device.

The Programming Tool will not check that the image supports the product you try to program. Please be sure you use a correct archive otherwise the device will not be functioning.

Connect your device

To program the device, you need to connect it to your computer with the USB cable and power the device with the PoE (Ethernet) cable.

Once the device connected, you need to put it into programming mode.

Entering programming mode

To enter programming mode, you have to press shortly 3 times on the reset button and keep pressed the third time for at least 3 seconds (until the LED status flashes):

programmation mode image.png

Your device will then be listed in the list of available devices to program:

Programming-Tool Devices-Single.png

If you cannot enter programming mode, please read the Programming Mode page for additional details.

Program the device

You can connect multiple device if you want to program them simultaneously. In the device list, check only the devices you want to program.

By default, the programming tool is configured to verify the written partition. We recommend to always keep this option turned on. Verification takes about 40% of the total programming time.

When programming the device with the Programming Tool, all existent data and configuration will be erase and overwritten with the new image. This mean that all your current data and configuration will be definitely lost.

When ready, press the "Program" button. The device(s) programming will start:

Programming-Tool Devices-Programming.png

The devices list will show you an approximate progression of the programming for each device through the progression bar and the numeric percentage in the "Status" column".

When programming of a device is finished, the status column of the device will be updated with a check mark:

Programming-Tool Devices-Programmed.png

If you want to keep the log, please export it manually before disconnecting or reseting the device.

You can safely disconnect the device or reset it. Congratulation, your device is now ready with the new firmware! 

Programming log

To see the details of the programming process, you can expand the "Programming logs" panel. You'll find a tab for each device of the list with his respective log:

Programming-Tool Devices-Programming-Log.png
Programming-Tool Devices-Programmed-Log.png

This log is particularly useful to diagnose programming errors. You can find a typical successful programming log here : Log.txt.

Programming error

In case of failure, you will get an error message poping from the bottom of the application and the corresponding device status will show an error icon. To diagnose the error, please refer to the device programming log.

Programming-Tool Devices Programming Error.png

Auto programming

If you need to program a large number of devices, you may be interested in enabling the "Auto program" feature. When enabled, all new connected devices detected will be automatically programmed with the loaded archive without asking confirmation to the user.


Programming-Tool Settings.png



When checking for updates, the Programming Tool will use the configured channel.

  • Stable : update with the latest stable release. These releases have been officially tested and validated.
  • Next : update with the bleeding edge release. These releases may have additional features that have not yet been tested. You may experience usage difficulties and you should not expect theses version to work without problems.
If asked by Wifx support, you may also specify other update channels directly in the settings.yml file. If you do so, please do not change settings within the application otherwise it will be overridden.

Check on start

When enabled, the program will check for updates online when started.

Settings storage location

Your personal settings are stored on your personal folder of your computer:

  • Windows: %APPDATA%\lorix-programming-tool\settings.yml
  • Linux: TBD


The about dialog can be opened with the top right (i) button of the toolbar:

Programming-Tool Toolbar.png

Here is what the "About" window looks like:

Programming-Tool About.png


You can manually check for update using the "Check for update" button.

Under the hood

The Programming Tool has been built with Electron and Angular frameworks.

ATMEL SAM-BA Command Line Tool is used by the Programming Tool. The SAM-BA application is delivered within the Programming Tool and is part of the application resources. It should be possible to replace the SAM-BA version of the resources with another one if the CLI API is respected. The resources are located in the Programming Tool installation directory.