JMRI Hardware Support - Lionel TMCC

# Hardware Support: Lionel TMCC

## Getting Started with TMCC using JMRI

### TMCC Command Stations

Lionel TMCC 1 or TMCC 2 Legacy thru the serial port on the Command Base 1, Command Base 1L, or Command Base 992. Via WiFi to Command Base 992 and Command Base 3. Note: Connecting to the Command Base 1L will require an LCS SER2 serial converter. Connecting to the Command Base 992 may require the Y-cable included with the Lionel Legacy Command Set.

### Limitations

As of JMRI v 5.13.7, Lionel TMCC 1 and TMCC 2 Legacy should be fully supported up to the Lionel Legacy Command Protocol rev 1.21. If anything seems missing please make a suggestion via the JMRIusers list..

### Connecting via Cable

Connect your computer via serial port to a TMCC command station using a DB9 serial cable. This should be a "straight-through" or "modem" cable, not a "crossover" or "null-modem" cable. If your computer doesn't have a built-in serial port, use a USB port with a USB-serial adapter, but make sure you install the correct drivers if needed. Recent Mac OS distributions and Windows versions have the drivers already there for some adaptors.

### Connecting via WiFi

Follow the instructions in the Lionel Legacy Control System or Command Base 3 Manual.

### Setting Up JMRI

Configure the JMRI program for TMCC:

- Start your JMRI-based program (DecoderPro, PanelPro, etc).
- Go to the Connections tab of the Preferences pane. This opens automatically the first time a program is run, or you can select it from the "Edit" menu.
- Click the + tab and Select "TMCC (Lionel)" as the System Manufacturer.
- Under Connections, choose from Serial and Simulator.
  Enter a Prefix and Connection Name to identify this connection.
- When using Serial, pick the name of the serial port that you have connected to the TMCC system.
  If the baud rate doesn't show a fixed value, set it to 9,600 baud.
- Click "Save". You'll be asked if it's OK for the program to quit, click "Yes".
- Restart the program. You should be up and running.

## Programming ID#s and Feature Types

To Program ID#s/Addresses for Engines(ENG), Track (TR), Switches(SW) or Accessories(ACC):

- Follow the target device instructions to set it into "Program" mode.
- Start DecoderPro.
- Go to Actions/Single CV Programmer (*Actions is a tab at the top).
- Under Programming Track, select the device to be programmed.
- Set CV = 1.
- Enter the desired ID#/Address into Value.
- Select Write CV.
- Follow the device instructions to set it into "Run" mode.

To Program Engine(ENG) Feature Type:

- Follow the target device instructions to set it into "Program" mode.
- Go to Actions/Single CV Programmer in DecoderPro (*Actions is a tab at the top).
- Under Program on Main, select the device to be programmed.
- Under Program on Main, enter the target Engine ID#/Address.
- At the top, Set CV = 2.
- At the top, Enter the desired Feature Type# into Value.
- Select Write CV.
- Follow the device instructions to set it into "Run" mode.

## Engine(ENG) Operation

The functions below will take care of most Engine Controls on TMCC 1 and TMCC 2 Legacy equiped locomotives, and up to Railsounds 4 including aftermarket units such as ERR, K-Line and TAS.

### TMCC 1 and TMCC 2 Legacy (ENG) Sliding Speed Control

When using a JMRI Throttle to run a Locomotive, there is a drop-down menu at the top of the Sliding Speed Control (Control Panel) for selecting the proper speed step mode for operation. The choices are:

- 32 Speed Steps (TMCC 1 - Absolute).
- 32 Speed Steps (TMCC 2 Legacy - Absolute).
- 100 Speed Steps (TMCC 1 - Relative).
- 200 Speed Steps (TMCC 2 Legacy - Absolute).

The arrow keys on the keyboard may also be used to adjust locomotive speed (left arrow - speed increase; right arrow - speed decrease). WARNING Note: Use the arrow keys for slight adjustments only. Holding down the arrow keys queues individual speed commands faster than they can be sent to the locomotive, and it can take some time for these "sent" commands to finish processing before the locomotive will respond to other commands (including IMMEDIATE STOP).

### TMCC 1 and TMCC 2 Legacy (ENG) Standard Function Buttons

When using a JMRI Throttle to run a Locomotive, the function buttons are allocated as follows:

F0
  Headlights Toggle On / Off (Equivalent to Aux2 Option 2 Operation)
F1
  Bell
F2
  Whistle (Steam) / Horn 1 (Diesel)
F3
  Open Front Coupler
F4
  Open Rear Coupler

--------------------------------------------------------------------------
Numeric Keypad (Active in ENG mode after pressing Aux1 when using Lionel remote.)

F5
  Num 1; Volume Up
F6
  Num 2; Crew Talk
F7
  Num 3; Activate Sound Card and Play Start up Sounds
F8
  Num 4; Volume Down
F9
  Num 5; Deactivate Sound Card after Playing Shut Down Sounds
F10
  Num 6; Steam Release (Steam) / Air Horn and RPM Decrease (Diesel)
F11
  Num 7; Tower Comm
F12
  Num 8; Smoke and Firebox OFF on Steam / Auxilliary Lighting OFF on Diesel
F13
  Num 9; Smoke and Firebox ON on Steam) / Auxilliary Lighting ON on Diesel
F14
  Num 0; Reset

--------------------------------------------------------------------------

F15
  Aux 1 (Does not toggle buttons on remote in JMRI. This is a stand-alone code sent to the Engine.)
F16
  Let Off Sound
F17
  Boost
F18
  Brake
F19
  Momentum Low
F20
  Momentum Medium
F21
  Momentum High
F22
  Set
F23
  Horn 2
F24
  RR Speed 5mph
F25
  RR Speed 20mph
F26
  RR Speed 35mph
F27
  RR Speed 50mph
F28
  RR Speed 70mph
F29
  RR Speed Full

Any Accessory/Other component that uses the TMCC Engine(ENG) ID#/Address format should also work with the above function buttons; however, the function buttons above may not allign with the expected functions of the target device. Consult the manual that came with the Accessory ( Crane Car, etc. ) to determine how the above button layout aligns.

Also note there are specified decoder files for the various TMCC rolling stock ( Crane Car, Boxcar, Acela Train, etc. ) with associated FnKey layouts specific to each. These can be found through the Add New Loco process. After the new decoder/rolling stock item is added, go to the Labels and Media button (bottom right), open this and then select the X (upper right) to close. This will prompt you to Save (which you should do) and then the custom FnKey layout will appear when you open the throttle.

Per the RR Speeds: The speed values set are guesses at this point. As you work with these, please provide feedback via the JMRIusers list. as to any adjustments that need to be made.

### TMCC 1 and TMCC 2 Legacy Extended Functions

With JMRI, we've tried to simplify access to TMCC Extended Functions. Rather than the combination of button presses needed when using a TMCC remote, most extended functons within JMRI are set up under single FnKeys.

### TMCC 1 Extended Functions

F30
  Set ERR 100 Speed Steps
F31
  Set ERR 32 Speed Steps

### TMCC 2 Legacy Extended Functions

F30
  Mars Light On
F31
  Mars Light Off
F32
  Ground Light On
F33
  Ground Light Off
F34
  Ground Light Auto
F35
  Dog House Light On
F36
  Dog House Light Off
F37
  Tender Marker On
F38
  Tender Marker Off
F39
  Rule 17 On
F40
  Rule 17 Off
F41
  Rule 17 Auto
Etc.

As with other rolling stock, there are specified decoder files for the various TMCC 1 and TMCC 2 Legacy locomotives. These all have associated FnKey layouts specific to each. These can be found through the Add New Loco process, and after the new decoder/rolling stock item is added, go to the Labels and Media button (bottom right), open this and then select the X (upper right) to close. This will prompt you to Save (which you should do) and then the custom FnKey layout will appear when you open the throttle.

If you have suggestions for changes to the FnKey layout, or additional function keys, please post these via the JMRIusers list.

.

## Track(TR) Operation

With TMCC, "Track" relates to devices that control power to the track (PowerMasters and Transformers). Some of these allow programming of ID#s and remote control. To operate Track(TR) using JMRI:

- Start DecoderPro.
- Go to Actions/Single CV Programmer (*Actions is a tab at the top).
- Follow the directions above to set the ID#s for the Track(TR) componenents.
*Reference the user manual for the Track(TR) device for any specific details related to setting up the ID#.
- Follow the process to Add New Loco and select the appropriate Track(TR) device.
- To utilize the pre-set FnKey definitions, open Labels and Media (button, bottom right) and use the X (upper right) to close this window.
*This will prompt you to Save (which you should do) and then the custom FnKey layout will appear when you open the throttle.
- You are now ready to use the throttle to control the Track(TR) device.

If you have questions about using Track(TR) please post these via the JMRIusers list.

.

## Train(TR) Operation

With TMCC, "Train" relates to lash-ups or consists. These are managed in JMRI through DecoderPro and the TMCC Consisting Tool (a variation of the JRMI Consisting Tool). The proceedures using the JRMI TMCC Consisting Tool are streamlined relative to how a lash-up is constructed using a TMCC remote. There is no need for the TR button, et.al. To manage consists using the TMCC Consisting Tool:

- Start DecoderPro.
- Go to Actions/Consisting Tool (*Actions is a tab at the top).
- Select the type of consist (TMCC1 or TMCC2) in the top line next to Consist.
- Enter an ID# for the consist (This is the TR ID# in TMCC).
*TR ID#s 1-15 are currently supported.
- In Line 2, enter the number of the loco to be added to the consist or use the drop-down to select a loco from the roster.
*TMCC1 and TMCC2 locos should not be mixed in a consist unless TMCC2 locos are set to TMCC1 format.
- Select the Add button.
*Locos are added to the consist in order starting with Head, then Rear, then Mid (multiple mid locos can be added).
The Head loco is not given a Direction option. It will always be set to Forward. Direction can be set for Rear and Mid locos.
- Continue to select locos and Add them until the desired consist is complete.
- If needed, use the Delete button next to a loco to remove it from the consist.
*Locos only store one consist ID#. When locos are added to the consist, the consist ID is automatically assigned to the loco.
When locos are removed from the consist the assigned consist ID# is automatically cleard from the loco. Likewise, if the entire consist
is deleted, the assigned consist ID is cleared from all locos in the consist list.
This only works if the locos are on the track and powered (see TMCC User Manuals for how to build a lash-up).
As an added precaution against residual consist IDs in locos, the TMCC Consisting Tool automatically clears consist IDs from locos
when they are added to a consist.
- Once the consist build is complete, select Throttle at the bottom of the Consisting Tool.
- A TMCC throttle will open with the Consist ID# at the top.
*If you want a consist throttle to load with pre-set FnKeys, use the Add New Loco feature and build a loco profile that matches the train type to be set (i.e. diesel/steam) and set the target Consist ID# as the ID# of this new loco build. Be sure and set the pre-defined FnKyes by highlighting/selecting this new loco and pressing the Labels and Media button (bottom right). Once open, select the X (upper right) to close. This will prompt you to Save (which you should do) and then the custom FnKey layout will appear when you open the throttle associated with the consist build.
- Use the SpeedStep drop-down in the throttle to select the appropriate TR speed profile for the consist.
- You can now control the consist.

Go here to learn more about the JMRI: Consisting Tool.

If you have questions about using the TMCC Consisting Tool please post these via the JMRIusers list.

.

## Switch(SW) and Accessory(ACC) Operation

TMCC Switch(SW) and Accessory(ACC) functions are handeld through the JMRI Turnout tool. Follow the instructions below for setting up TMCC Switch(SW) and Accessory(ACC) elements in JMRI. Note: Before using the JRMI Turnout tool, be sure to program TMCC Switch(SW) and Accessory(ACC) ID#s/Addresses found in the Programming Mode section above.

### TMCC Switch(SW)

- Start DecoderPro.
- Go to Actions/Turnout Control (*Actions is a tab at the top).
- Enter the target Switch(SW) ID#/Address (TMCC Switch(SW) ID#s should be between 0-99).
- Select Thrown to set the switch to Out.
- Select Closed to set the switch to Through.
- If actual switch position does not match the selected Thrown/Closed position above, consider that your switch may be wired in reverse polarity.

### TMCC Accessory(ACC)

- Start DecoderPro.
- Go to Actions/Turnout Control (*Actions is a tab at the top).
- Enter the target Accessory(ACC) ID#/Address (TMCC Accessory(ACC) ID#s should be between 0-9). Note: For operating TMCC Accessories(ACC) with JMRI Turnout Control, translate Accessory(ACC) ID#s into 100-109 for Aux1 connected accessories and into 110-119 for Aux2 connected accessories.
- Select Thrown to turn ON the Accessory(ACC).
- Select Closed to turn OFF the Accessory(ACC).
- If actual accessory On/Off behavior does not match the selected Thrown/Closed position above, consider that your accessory may be wired in reverse polarity.

Learn more about using JMRI Turnouts here: JMRI: Turnouts Documentation..

Questions about using Switch(SW) or Accessory(ACC)? Please post these via the JMRIusers list..

## Route(RTE) and Group(GR) Operation

In TMCC terminology, Route(RTE) is for triggering multiple switches with one command and Group(GR) is for triggering multiple accessories with one command. In JMRI, both TMCC Route(RTE) and Group(GR) functions are handeld through the JMRI Route tool. Follow the instructions below to set up TMCC Route(RTE) and Group(GR) elements.

### TMCC Route(RTE)/TMCC Group(GR)

- Start PanelPro.
- Go to Tools/Tables/Turnouts (*Tools is a tab at the top).
- Add each TMCC Switch and Accessory to this table (*The Add button is at the bottom toward the left).
- While in the Table tool, select Route (from the list on the left).
- Build the Route by selecting a combination of switches (TMCC Route(RTE)) or accessories (TMCC Group(GR)), or both (see JMRI LRoutes).
- Note: When you are adding switches/accessories you must use Set State to set them as Set Thrown, Set Closed or Set Toggle. BE SURE to use Set TOGGLE if you want the Set button (see below) to trigger both states of your selected devices.

- Select the Set button of the target Route to trigger all devices set up in that Route.

Learn more about using JMRI Routes here: JMRI: Routes Documentation..

For more fun, explore JMRI LRoutes here: JMRI: LRoute Documentation..

If you find anything missing, have suggestions or comments, please send these along via the JMRIusers list.

.