firmdl3(1) | brickOS Utility | firmdl3(1) |
firmdl3 - A firmware downloader for the RCX. Version 3.0.
firmdl3 [options] srecfile
This manual page documents the firmdl3 kernel download command.
firmdl3 is a program which is used to download the brickOS kernel (firmware). firmdl3 Supports single and quad rate downloading (quad-rate is default).
Quad-rate downloading is a feature that significantly reduces firmware download times. It is implemented on top of a fast serial protocol that has a 2x baud rate with no complements or parity bits. The fast protocol is enabled by a short firmware stub that reconfigures some control registers and tweaks some ROM program state. Once the firmware stub is downloaded and executed, the ROM responds to the fast serial protocol, which the downloader then uses to transfer the actual firmware file. Because the initial firmware stub is small, all but the most trivial programs see a download time improvement when using quad-speed downloading.
The caveat to using quad-speed downloading is its sensitivity to lighting conditions. Getting quad-speed downloading to work right might require some trial and error. In addition to avoiding harsh lighting conditions, it is important to place the RCX around 4-12 inches from the IR tower.
This program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). The options supported by firmdl3 are:
NOTE: The environment variable RCXTTY may be used in place of -tty
firmdl3 will respond to the environment variable RCXTTY. This should be set to the serial device to which the IR tower is connected. Use of RCXTTY is equivalent the using the -tty command-line option.
firmdl3 is a simple command to use. The following examples show most of the uses.
Ex1: download the brickOS kernal to ttyS0.
$ firmdl3 -tty=/dev/ttyS0 /usr/lib/brickos/brickOS.srec Transferring "Fast Download Image" to RCX... 100% Transferring "/usr/lib/brickos/brickOS.srec" to RCX... 100% $
Ex2: download the brickOS kernal to ttyS1 (set env var 1st).
$ export RCXTTY=/dev/ttyS1 $ firmdl3 /usr/lib/brickos/brickOS.srec Transferring "Fast Download Image" to RCX... 100% Transferring "/usr/lib/brickos/brickOS.srec" to RCX... 100% $
Ex3: download the brickOS kernal using slow protocol (assumes RCXTTY is already set).
$ firmdl3 --slow /usr/lib/brickos/brickOS.srec Transferring "/usr/lib/brickos/brickOS.srec" to RCX... 100% $
NOTE: the missing indication of the "Fast Download Image" being sent.
We'll leave the experiment of running firmdl3 with --debug set as an exercise for you our reader... (You really interested in seeing all the bytes fly by? ;-)
(excerpt from brickOS HOWTO)
If firmdl3 gives you repeated problems, you may want to try using the --slow argument, which will make your download much slower but can correct for certain errors caused by ambient light.
dll(1)
Laurent Demailly, Allen Martin, Markus Noga, Gavin Smyth, and Luis Villa all contributed something to some version of firmdl3.
firmdl3 was written by: Kekoa Proudfoot
<kekoa@graphics.stanford.edu> - 10/13/99
This manual page was written by Stephen M Moraco <stephen@debian.org>, for the Debian GNU/Linux system (but may be used by others).
January 6, 2001 | brickOS |