------------------------------------------------------------------------------- Full Throttle Version 1.00 Copyright (c) 2003 by Christopher Phillips All Rights Reserved ------------------------------------------------------------------------------- LEGO(R) AND MINDSTORMS(TM) ARE TRADEMARKS OF THE LEGO GROUP OF COMPANIES, WHICH DOES NOT SUPPORT, AUTHORIZE, OR ENDORSE THIS SOFTWARE PACKAGE. THIS PROGRAM RELIES ON UNDOCUMENTED FEATURES OF THE LEGO MINDSTORMS HARDWARE, AND WHILE THE AUTHOR HAS TAKEN EVERY REASONABLE STEP TO ENSURE THE QUALITY OF THIS SOFTWARE, IT COULD DAMAGE YOUR TOYS OR COMPUTER EQUIPMENT. THIS SOFTWARE IS DISTRIBUTED AS-IS, AND THE AUTHOR MAKES NO WARRANTIES TO THE USEABILITY OF THIS PROGRAM. BY USING THIS PROGRAM, YOU AGREE TO ACCEPT ALL RESPONSIBILITY FOR ANY CONSEQUENCES THAT MAY RESULT. THIS PROGRAM IS PROVIDED TO YOU AT NO CHARGE FOR YOUR PERSONAL, NON-COMMERCIAL USE. YOU MAY USE THIS PROGRAM ON ONE OR MORE COMPUTERS, BUT YOU MAY NOT REDISTRIBUTE THIS PROGRAM TO ANY OTHER PARTY WITHOUT THE PRIOR WRITTEN CONSENT OF THE PROGRAM'S AUTHOR AND COPYRIGHT HOLDER. YOU WILL ALSO NEED TO ACQUIRE MARK RILEY'S LDCC REPLACEMENT RCX FIRMWARE. ------------------------------------------------------------------------------- INTRODUCTION Full Throttle is a Windows program that provides direct control over the operation of up to nine DCC-equipped locomotives when you are using Mark Riley's LDCC replacement RCX firmware as your DCC controller. You must have a LEGO MindStorms infrared communications tower connected to a COM or USB port of your computer in order for this program to work. Other than the driver for the USB tower (if applicable), this program does not depend on any other software being installed, beyond a normal Windows 95 or newer operating system. You must also have Mark Riley's LDCC firmware loaded into your RCX before it will recognize and respond to the commands in this protocol. You may need to reload the firmware after you change the batteries in the RCX. Consult the documentation on Mark's web site for the latest information about installing and configuring LDCC on your RCX. ------------------------------------------------------------------------------- INSTALLATION Installation is simple. Just unzip the contents of the distribution file, THROT100.ZIP, into any convenient location on your computer's hard drive. You may wish to create a new directory to contain these files. The new installation will contain the following files: Throttle.exe The Full Throttle program. Throttle.txt This "ReadMe" information file. You are now ready to begin using Full Throttle immediately. Simply execute the Throttle.exe program to get started. You also must have Mark Riley's LDCC replacement firmware, version 1.02 or later installed in your RCX. You can download the firmware file from Mark's web site: http://home.surewest.net/markril/lego/dcc/index.html Finally, you will need one or more train engines that have been modified to contain a DCC decoder circuit. Tom Cook has a detailed web page that covers how to install a DCC decoder in a 9V LEGO train motor: http://www.lgauge.com/trains/dcc/dcc.htm ------------------------------------------------------------------------------- USING FULL THROTTLE Before Full Throttle can command your LDCC-equipped RCX, you must tell it which port the infrared tower is connected to. On the pull-down Options menu, select the desired COM or USB port. A checkbox will appear beside the name of the port that is currently in use. The program will remember many configuration settings until you explicitly change them again. This program displays a control section for each of the nine "Loco" slots that are supported by LDCC. Each control section allows you to set the throttle, headlight state, and other special function bits for the corresponding DCC decoder assigned to that Loco slot on the RCX. The current throttle value is always displayed beneath the Loco name at the top of the control strip. Beneath this is a vertical slider control for the throttle with a set of buttons to its immediate left that increase or decrease the throttle setting. The button with the red X disables the train by stopping its motor and turning off its headlight. The button to the right of this inverts the throttle data sent to the train as one way to reverse the forward direction of a locomotive. Beneath this is a button to control the headlight as well as buttons to control the extended function bits F1 through F12. You can set any of these controls using either the mouse or the keyboard. If you right+click the throttle slider, it will reset the throttle value to zero. Most buttons have an equivalent key on the keyboard. The main area of the keyboard is organized into columns of keys for each locomotive, such that the "1", "Q", "A", and "Z" keys control Loco 1, the "2", "W", "S", and "X" keys control Loco 2, and so on. + The number keys 1-9 toggle the headlight of Loco 1-9, repectively. + Top-row: Q, W, E, R, T, Y, U, I, O increase the throttle setting of the Loco whose number key is above it. + Second-row: A, S, D, F, G, H, J, K, L decrease the throttle of the Loco. + Third-row: Z, X, C, V, B, N, M, <, > toggle the halt state "X" of the Loco. + SPACE Bar: stops all Locos and resets all throttles to zero. + ESCAPE: turns off track power. + ENTER: turns track power back on again! As if all of this weren't enough, one Loco will always have "focus", designated by a thick black border drawn around its throttle control handle. This Loco has extra keys assigned to it in addition to the ones already listed: + F1, F2, F3, ... F12: toggle the state of the special function bit. *NOTE* The F10 key gets intercepted by the system, so the "0" key should be used to toggle special function F10 instead. + UP/DOWN arrows: increase or decrease the throttle. + PAGE UP, PAGE DOWN: increase or decrease the throttle by a larger step size. + HOME: reset the throttle to zero. + INSERT: reverse the direction of the Loco. + DELETE: toggle the halt state "X" of the Loco. + LEFT/RIGHT arrows: move the keyboard focus to the next Loco. Please note that some computer keyboards do not recognize a keypress in certain circumstances when a nearby key is already being held down. This may cause some of the keys to appear unresponsive to the touch. On the Options menu, there is also a selectable option that is labelled "Always Transmit Train Info." When checked, this option instructs Full Throttle to constantly re-transmit the desired speed, direction, and headlight state of each locomotive whenever you are not actively sending new commands to the RCX. This option enables the RCX to automatically recover within a few seconds if a command is lost or if the RCX temporarily loses power. But it also can cause performance problems on slower computers, and will wear down the 9V battery in an RS-232 IR tower much faster. When you change this setting, it is remembered for the next time that you run the program. ------------------------------------------------------------------------------- TROUBLESHOOTING AND SUPPORT If this program does not seem to work, please check the following things: 1. Make sure no other program is running (including another copy of Full Throttle or Virtual Remote) that might be using the tower. 2. If you are using a USB tower, you MUST install the tower driver from the LEGO RIS 2.0 CD before you physically connect it to the computer! 3. If you are using an RS-232 tower, make sure it contains a fresh 9V battery. 4. The tower must be connected to the port that is checked on the Options menu. You should see the green LED in the tower light up when you press one or more buttons or move any lever on the Full Throttle console. 5. Make sure your RCX is turned on and within range of the IR tower. You will probably want to configure the tower for long-range power. The USB tower range can be set when you install the driver; the RS-232 tower range is set using a switch on the front of the tower. 6. Make sure the RCX has had Mark Riley's LDCC firmware loaded into it since its last battery change. The RCX will not recognize the Full Throttle commands until the LDCC firmware file has been downloaded. The LCD display on the RCX should say "LDCC" when you first turn it on. 7. Make sure that you are using a properly modified DCC train motor, and that LDCC is configured to control the train from one of its nine Loco slots. In particular, make sure that you have configured the number of throttle steps (14, 28, or 128) to match the settings in use by the DCC decoder. 8. Verify that you can control the train using the hand-held MindStorms remote. Make sure that the throttle and headlight functions work as expected. If everything is working properly, the tower should light up when you press a button, and moving a throttle control should cause that train to move. Otherwise check all settings above. If you still have problems with this program, please check for any program updates at http://www.drvegetable.com. If you still cannot resolve your problem or think that you have found a bug, you may contact the author with any comments, questions, or suggestions: Christopher Phillips P.O. Box 544 Walpole, MA 02081 chris@drvegetable.com I cannot promise to personally respond to all inquiries, but I will try to address any problems with this software that are brought to my attention. Enjoy! - Dr. Vegetable. -------------------------------------------------------------------------------