
General purpose flash memory
XLR PRO Radio Frequency (RF) Modem User Guide
72
stored in order in the appropriate GPM memory blocks. The number of bytes that are sent in an individual GPM WRITE
frame is flexible and can be catered to the user application.
Example:
XLR PRO firmware version 1003 has an .ebin file of 1,048,576 bytes in length. Based on using a recommended packet
size of 1024 bytes, sending a packet every 30 seconds minimized network disruption. For this reason, the .ebin should
be divided and addressed as follows:
Verifying the new application
For an uploaded application to function correctly every single byte from the .ebin file must be properly transferred to
the GPM. To guarantee that this is the case GPM VERIFY functions exist to ensure that all bytes are properly in place.
The FIRMWARE_VERIFY function reports whether or not the uploaded data is valid. The
FIRMWARE_VERIFY_AND_INSTALL command will report if the uploaded data is invalid. If the data is valid it will begin
installing the application. No installation will take place on invalid data.
Installing the application
When the entire .ebin file has been uploaded to the GPM of the target node a FIRMWARE_VERIFY_AND_INSTALL
command can be issued. Once the target receives the command it will verify the .ebin file loaded in the GPM. If it is
found to be valid then the XLR PRO will install the new firmware. This installation process can take up to 8 seconds.
During the installation the XLR PRO will be unresponsive to both serial and RF communication. To complete the
installation the target XLR PRO will reset. AT parameter settings which have not been written to flash (using the WR
command) will be lost.
GPM_BLOCK_NUM
GPM_START_INDEX
GPM_NUM_BYTES
.ebin bytes
0
0
1024
0 to 1023
0
1024
1024
1024 to 2047
0
2048
1024
2048 to 3071
0
3072
1024
3072 to 4095
1
0
1024
4096 to 5119
1
1024
1024
5120 to 6143
1
2048
1024
6144 to 7167
1
3072
1024
7168 to 8191
-
-
-
-
-
-
-
-
-
-
-
-
255
0
1024
1044480 to 1045503
255
1024
1024
1045504 to 1046527
255
2048
1024
1046528 to 1047551
255
3072
1024
1047552 to 1048575