JACK is a powerful and unique mechanism of ST-ONE bootloader. These are firmware utilities that significantly extend the functionality of the device and allow you to perform various service tasks, such as: updating the bootloader, the correct reset of MCU protection with maintaining of survivability, get dumps, where it is allowed, and many more.
You can freely download open system utilities for ST-ONE. These are BIN-files that are executable and immediately ready to use. In order to use the JACK-utility you need to connect the board to the computer via USB and transfer the bootloader to the service mode. This can be done by applying a logical 1 (Vcc) onto PIN2 of the ST-ONE board (PC0) or by running the "label SRV" command from the command line while on disk.
After entering the jump command into service mode, the firmware disk will be disabled, and on its place will be a service disk with system label ST-ONE BOOT and a standard icon.
The board indicator will stop blinking and will illuminate constantly. This means the system «stop» and successful transition into «service mode». The system is in standby mode and is ready for service tasks.
The service disk contains only two files:
|bootldr.bin||32768||Binary code of bootloader|
|jack.bin||8192||Blank for loading of JACK utility (reserved space). File is filled with 0x00|
You can copy the current bootloader to store it in case of a disaster recovery of system, because the bootloader is personalized and cannot be used on another device (and from another device), with a different hardware UniqueID. This is necessary for implementation of internal protection and control mechanisms.
The blank file for JACK is empty and serves to reserve a space in the file system of the service disk. Do not delete this file. When copying the necessary JACK-utilities use strictly a replace operation, not a delete one and subsequent copy of the files. Otherwise, the computer's operating system may make incorrect changes to the file table of the service disk. One service utility can be executed at a time.
JACK starts up automatically. After the utility has been copied to the service disk, the «service mode» command (PC0) must be issued again. There will be an exit to the normal mode. The loader will see that the task was loaded and immediately pass a control to it. Thus, the code contained in the downloaded utility will be executed.
Attention! In case of protection of the board with option FW_PROTECT the execution of JACK-utilities will be limited. For security reasons only the bootloader update utility is allowed to work, as the system memory will be forcibly erased before starting JACK. Thus, it is impossible to merge the firmware, closed in the crystal by means of a «pirate» JACK-file. After such operation it will be necessary to reiterate the installation of the firmware if you need a critical update of the bootloader.
For example, let us consider the operation of controller loader update. To do this, you will need the bootloader file itself and the JACK utility to update it.
Connect the board to the computer and changeover to «service mode». The service disc will open. Replace bootldr.bin and jack.bin files with new ones and give the command of exit the service mode (PC0). The loader will determine that there are tasks to perform and passes the control to JACK.
Attention! If the board was protected by option FW_PROTECT before, will happen the firmware destruction, a correct removal of the protection, a full crystal erasing and then the restoration of the boot loader in automatic mode. At the same time it is obligatory necessary to install BOOT0 and BOOT1 in the state of logical 1 (Vcc). Otherwise the operation will not complete correctly and the data will be corrupted. To restore the functionality of the device you will need a programmator. If all went well, upon completion of the work of JACK, you need BOOT0 and BOOT1 to return to the state of logical zero (GND) and restart the device.
In case of a regular update, without the need to remove the protection, the operation will be fully automatic and does not require the interference. The indicator will show all phases of the process: formatting of the loader area, recording of the loader body, data verification. Do not interrupt the operation cycle until it is complete, otherwise the data may be corrupted and the device may be broken.
Upon completion of JACK operation the controller indicator will blink in a non-standard mode: smoothly lit-smoothly extinguished. This means that JACK is «asleep» and all work is completed. The device is ready for use.