Alpha : Visual Tour    Operating Mode 1 Developer Mode  

Page 1

Let's edit BL.ini to set OperatingMode=1, for developers and engineers at the factory.

Then, let's connect our device, into which we have already programmed the bootloader, BLPro_2550.hex.

Then, let's run the PC program, BLPro.exe.

  Click on the image for page view.

Page 2

In Developer Mode, BLPro.exe shows a main window that contains 3 tabbed pages.

The first page, labeled "About...", displays the logo file that you placed in the same directory as BLPro.exe.  Notice also that the blue title bar across the top of the main window contains the contents of the FormCaption string we placed in the [General] section of configuration file BL.ini.

Click on the Results tab to see what's on that page.

  Click on the image for page view.

Page 3

The Results page shows the results of operations in the program, and commands that are sent to the bootloader in the device.  It also contains buttons that allow you to print the results, save them to a file for later use, or to clear the Results box.

The contents shown in this screen shot show the devices that are currently connected to this computer, and the version, location, and size of the bootloader in the device.

  Click on the image for page view.

Page 4

The File menu contains items to open a new hex file to program into the device, or to save firmware that has been read from the device into a hex file.

IMPORTANT NOTE: Your end user will not have the ability to use these menu items, so he will not be able to read the firmware in your device and save it to a file.

  Click on the image for page view.

Page 5

The topmost item on the Program menu, Program, allows you to program your device in a single click, depending on the settings in the Options menu. (We'll look at the Options menu on the next page.) 

Other menu items are:

Verify - after programming your device, read the device and verify that the firmware exactly matches the code that we intended to program into the device.

Read - Read the code that is currently in the device, and display it in hex.

Blank Check - Determine if the device is blank.

Erase - If device is not blank, then erase it.

Get Target Information - Read the Device ID of the processor that is in the device, and see if it matches the Target ID in BL.ini.

Get Bootloader Version - Read and display bootloader version, location, and size.

Run Program - Disabled in this screen shot because we haven't programmed the device yet, but when we have done so, this starts the new firmware running in the device.

  Click on the image for page view.

Page 6

This screen shot shows the default values of the BLPro.exe options:

Erase Before Programming - Automatically erase the device before just before it is programmed with the Program | Program menu item. (Equivalent to clicking Program | Erase and then clicking Program | Program.)

Blank Check Before Programming - Automatically blank check the device just before it is programmed with the Program | Program menu item. (Equivalent to clicking  Program | Blank Check and then clicking Program | Program.)

Verify After Programming - Automatically verify the code immediately after it is programmed with the Program | Program menu item. (Equivalent to clicking Program | Program and then clicking Program | Verify.) 

Auto Run After Programming - After successfully programming the new firmware into the device with the Program | Program menu item, automatically starts the new firmware. (Equivalent to clicking Program | Program and then clicking Program | Run Program.)

Display All Program Memory - When Program | Read is clicked, displays all of program memory (except the part that is occupied by the bootloader itself) on the Program Memory page.  

  Click on the image for page view.

Page 7

This screen shot shows the default memory ranges in the device that will be programmed by USB Bootloader Pro.  If a particular memory range is  not checked, then even if the hex file contains data to be programmed into that memory range, BLPro.exe will not send that data to the device, so that part of the device's memory will not be changed.

Program memory - This is the part of the PIC processor's Flash program memory space where programs are stored. 

ID memory - this is a small, separate address range in the PIC processor that is often used to hold serial numbers.

Configuration Memory : Caution! -- Caution! -- Caution! -- Caution! -- Caution!
This range controls things like oscillator settings, that apply to the bootloader as well as to the firmware being programmed by the bootloader.  Changing the oscillator settings can render your bootloader inoperative.  Use extreme caution when enabling this memory range, or you may have to reprogram your device with a device programmer.

EEPROM memory - this is a small memory range that is usually used to hold device settings, and is often programmed by the firmware program itself.  Enable this range to intialize this memory with useful values and data structures. 


  Click on the image for page view.

Page 8

The Help menu for this Alpha version of USB Bootloader Pro is currently disabled.

In a future version, we will provide two kinds of help file, which correspond to the different Operating Modes of BLPro.exe:

0 - Help for end users

1 - Help for developers

  Click on the image for page view.

Text Author: Dr. Bob Miller   Copyright Notice and Author Information