|Description||This document is intended to provide fundamental information on how to update the program on a Diablo16 Flash from a micro-SD. This application note consists of two programs. One program will be doing the update while the other program will serve as the new program to be installed.|
This document is intended to provide fundamental information on how to update the program on a Diabl016 Flash from a micro-SD. This application note consists of two programs. One program will be doing the update while the other program will serve as the new program to be installed.
Before going further, a very important reminder is to be considered. When running programs in Flashbanks other than the primary flash bank, FLASHBANK_0, requires that no global variable are used.
Before getting started, the following are required:
- The target module can also be a Diablo16 display
Visit www.4dsystems.com.au/products to see the latest display module products that use the Diablo16 processor. The display module used in this application note is the uLCD-32PTU, which is a Picaso display. This application note is applicable to Diablo16 display modules as well.
for non-gen4 displays(uLCD-xxx)
for gen4 displays (gen4-uLCD-xxx)
When downloading an application note, a list of recommended application notes is shown. It is assumed that the user has read or has a working knowledge of the topics presented in these recommended application notes.
The figure below is a representation of how the process of updating the Diablo16 Flash program is done. The new program to be transferred to flash is saved on a micro SD and then loaded to the target Diablo16 Flashbank memory. The micro-SD should also contain all relevant files needed by the update projects such as GCI, DAT and 4XE files.
For instructions on how to launch Workshop 4, how to open a ViSi project, and how to change the target display, kindly refer to the section “Setup Procedure” of the application note
For instructions on how to create a new ViSi project, please refer to the section “Create a New Project” of the application note
Updating the content of the Diablo16 Flashbank memory is fairly easy. During compilation Workshop IDE creates several files which include the *.GCI, *.DAT, *.CFG, and *.4XE. For this application note we will be using the GCI, DAT and 4XE. The program to be downloaded to the Flashbank memory must have this files copied to the micro-SD.
Check for the presence of the target program’s 4XE, DAT and GCI in the micro-SD. The following statements checks the content of the micro-SD and notifies the user through printed string messages. File checking starts when, the user presses the ‘update’ button.
When the files are located the process of uploading the ‘Update.4XE’ will follow next. The updating process is preceded by an erase function. This makes sure that there are no available flash programs inside the Flashbank. Also, by removing all the contents of the Flashbank ensures the copying process.
If the upload of the new program is successful, the end result should be a working ‘update.4XE’. At this point, users are again reminded that the content of the target program being downloaded to the Diablo16 graphics processor should not have any global variables. Using global variable on Flashbanks other than the primary will yield to an “error” message.
On the other hand, in case that errors are experienced, i.e. no files present, the program will return to the main page of the update program and will prompt the user to load the micro-SD with the correct files.
Running the update program will copy the ‘Update.4XE’ on Flashbank 1. Since the DAT and GCI files are needed for the project, these should still be present in the micro-SD card.
** Regarding the DAT and GCI files, it is not possible to save these information/data into the Flashbanks and then be accessed similar to files saved on the micro-SD cards. If the user is wanting to save this into a different medium, then an external serial flash memory will be needed.
The program to be loaded into Flashbank 1 is a basic project that contains a set of Userimages that will run into a loop if the upload done in the previous section was made successful.
This txt file can be used to monitor the version of the project currently installed or to identify the program that is currently uploaded into the Flash memory. It can also be used to store pre-set values that is needed by the update program.
Notice that the Read-and-Write access of the file is not discussed in this application note. Information about reading-and-writing information on a flash bank memory is discussed in the application note link shown below.
For instructions on how to save a ViSi project, how to connect the target display to the PC, how to select the program destination, and how to compile and download a program, please refer to the section “Run the Program” of the application note