User Tools

Site Tools


manual:net_demo

This is an old revision of the document!


Firmware updates using the TCP/IP communication interface

Bootloader configuration

In order to perform firmware updates with the OpenBLT through a TCP/IP network, double-check that the network communication interface is configured in “blt_conf.h”. The following macro should have a value of 1. If this macro did not yet have a value of 1, the bootloader should be rebuild after making the change.

#define BOOT_COM_NET_ENABLE            (1)

Preparing Microboot

The Microboot utility needs to be configured to connect to the correct IP address and port:

  • Start Microboot by double-clicking “\Host\MicroBoot.exe”.
  • Click the “Settings”-button and select “OpenBLT using TCP/IP” from the dropdown box.
  • Click the “Options”-button to configure the communication parameters.
  • Set the hostname of your microcontroller system on the network. This is its IP-address, which is typically specified by the macro's BOOT_COM_NET_IPADDR in “blt_conf.h”. The default is 169.254.19.63 and will work if you have the system directly connected to your PC's ethernet port.
  • Set the port on which the bootloader listens for firmware update connection requests. This is specified by the macro BOOT_COM_NET_PORT in “blt_conf.h”. Typically, this is 1000 for the demo programs.

Once you saved the settings by clicking the “OK”-button twice, Microboot is now ready for action!

Downloading the user program

After building your user program, its S-record formatted firmware file can be downloaded to the remaining flash memory using the bootloader. In Microboot click the “Browse”-button and select your user program's firmware file. For the demo programs, this one is located in the “.\Prog\bin\” directory. Once the firmware file was selected, the download should automatically start.

Once the download completed, the newly programmed software will be started by the bootloader. For the demo program's you can verify this by checking that the LED blinks. Congratulations! That's all there is to using the bootloader.

Notes

Depending on the configuration of the bootloader, there might be a delay between a system reset and the actual start of the user program. This is needed by design for the bootloader's backdoor functionality. Check configurable BACKDOOR_ENTRY_TIMEOUT_MS in “blt_conf.h” for the exact delay time. Note that this delay is configured relatively long (several seconds) for the TCP/IP demo programs. This is because it can take quite some time after the bootloader got re-activated for the system to become responsive on the network. Feel free to fine-tune this value to your needs. Basically, reset your system and measure how much time is needed for it to respond to PING-requests.

manual/net_demo.1476266509.txt.gz · Last modified: 2019/09/24 22:11 (external edit)