W2DRZ Controller Support Web

Welcome | Overview | Controller | Encoders | DrzTrack | Products | Download

About Boot Loading
Starting with version 5 DrzTrack and the version 5 firmware contains capabilities for boot loading.  What this means is that firmware upgrades can be applied right from the DrzTrack program by sending the hex file data over the RS-232 serial line.  This allows anyone to upgrade the firmware on the CT-2 controller board.  (Controllers running firmware earlier than 5.00 cannot be boot loaded.)

See Note 1, below for information on programming the processor using a programming device instead of using the boot loader.

When you use the install file, from the Download page, to install DrzTrack on your computer it creates a subfolder under C:\W2DRZ\ that is named like "DrzTrack_511".  DrzTrack.exe and supporting files are installed there.  Also included are 4 versions of the "hex" file that contain the firmware that can be uploaded to the controller.  The four files are named with the firmware version number, the last four digits of the processor they are coded for, and the clock rate of the processor, as shown here:

In this example the hex files are for firmware version 5.01.  The processor is either a PIC18F4580 or a PIC18F4680, and the clock speed is either 20 or 40 MHz.  It is essential that the correct file be used for the processor and clock speed that you are using.  In the majority of cases that will be the first hex file shown here - for the 4580 processor running at 20 MHz.

When starting a boot load session all four files are presented for selection but the boot loader will not allow you to install the wrong file.


Preparing for Boot Loading
When getting ready to begin Boot Loading it is necessary to decide which version of DrzTrack you will use to do the boot loading.  Usually it is best to use the new DrzTrack that matches the firmware version you are going to upload.  However under certain conditions it is necessary to use the previous version that matches the firmware you are currently running.  This is the case if you happen to be running version 5.00 of the firmware.  Very few people have version 5.00 so this should not be an issue for most.  If this condition ever comes up again, there will be a note in the install process warning and telling you what to do.

When you start the newer version of DrzTrack but still have the older firmware loaded it is likely that some things will not work.  But the only thing that needs to work is boot loading.  Do not try to use the new version for any thing other than boot loading until after boot loading has completed.  The only requirement is that the controller be connected and powered up, and set for 9600 Baud (see switch settings).  The boot loader will only work at 9600 baud so if you were using some other baud rate it is necessary to change the switches to 9600 (switch 1 and 2 both up) and then reset the controller before beginning the boot load process.  Of course DrzTrack must be set for 9600 baud also (Program Options under Setup menu).  When you start the new version of DrzTrack, before boot loading, the only other requirement is that the proper communications port is selected and open.  If the status message in the main dialog shows "Lost Com Port" or "Invalid Com Port" then the port you have selected does not exist or is not working properly and that must be fixed before you can proceed.  If the status message says "Controller Responding to Commands:, or "Controller not Connected", the Com port is open and you may proceed with boot loading.


The boot load Session
To begin a boot load session, click 'Setup' on the menu in DrzTrack, then select the Boot Load tab in the setup dialog.  (Note: For DrzTrack versions below 5.11, the boot loader is accessed from a sub menu on the 'Setup' menu item.)

The first thing that must be done is to start the boot loader program that resides in the controller.  This is done by clicking the "Start Loader" button.  After a few seconds the panel below the file selections should populate with a message that the boot loader is ready.  It will also show the processor name and the clock speed that the connected controller is using, as shown below:

As you can see, the connected controller uses a PIC18F4680 processor running at 20 MHz.



In the event that the boot loader fails to start you will get an error message suggesting to try resetting the controller and trying again.  See Note 1, below, for more information about what to do if the boot loader will not start.

When the loader has started, select the matching file by clicking on it and then click the "Upload" button.  Then both the start and the upload buttons will be disabled and the progress bar at the bottom will start to advance.

When the progress bar reaches the right side edge uploading is complete and you will get a status message to that effect.  When you dismiss the status message the boot loader dialog will be removed and you will be back in the main dialog of DrzTrack.  There will be a short time delay while the controller reboots and then normal communication with the controller will resume.

Once boot loading has started it is best to allow it to finish.  However it is possible to abort boot loading with the Cancel button. If cancel is clicked you will get a warning message and if you select to cancel anyway the boot loader will stop and you will exit to the main DrzTrack dialog.  But then the controller will be inoperative.  See Note 2, below, for information about how to proceed if this happens.



Note 1
Note: The hex files included with the DrzTrack installation file are designed for boot loading only. If you have a programming device and wish to upload new firmware with it, then go to the download page and click on the link and click on the link labeled "DrzPlusLoader_nnn Hex files", where nnn is the firmware version you are needing. You will download a zip file containing the necessary hex files. Select the correct file for your processor and clock speed and program it normally with your PIC programmer device.
Note 2
 As mentioned above, if boot loading has been interrupted, or if it fails somehow while it is loading, the controller may become unresponsive.  One way this can happen is if you exit the Boot Load dialog after starting the loader, but before starting the upload.  In this case normal operation can be restored by manually rebooting (power cycling) the controller.

If boot loading fails or is interrupted it is unlikely that rebooting will help.  (An exception is when you were loading the exact same version of the firmware that was already in the controller.  In that case rebooting will get the controller running even if the boot loading process was interrupted in the middle.) 

If you are faced with an unresponsive controller due to loader interruption, it is still likely that you will be able to get the boot loader to work again.  This must be done manually.  On some CT-2 boards there is a push button switch, labeled S2, on the front edge.  If you remove power from the controller and then hold that switch down while power is reconnected, the CT-2 controller will be reset.  Now you can connect to the controller and it will be using the previous firmware version, from before you attempted to do the boot load.

The location of the switch is shown below.  Some of the CT-2 controller boards that we have sold do not have that switch, but the connections for the switch are there.  If you have one of those boards, you could connect wires to the switch connection points and use the wires to simulate closing and opening the switch (or connect a real switch to the wires).  Another possibility is to contact us for a free switch to solder onto your board.  (Until we developed boot loading there was no use for the switch and so we left it off some boards.)

If the controller still will not boot load then there is a problem with the serial connection, or the controller board is damaged in some way.  Return the board to us for repair.

REMEMBER:  You cannot boot load if your firmware version is below 5.0