<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="../XSLT/decoder.xsl"?>
<!DOCTYPE decoder-config SYSTEM "../DTD/decoder-config.dtd">

<!-- Copyright (C) JMRI 2004 All rights reserved -->
<!-- $Id: Haber_u_Koenig.xml,v 1.5 2007/11/05 03:08:14 jacobsen Exp $ -->
<!--                                                                        -->
<!-- JMRI is free software; you can redistribute it and/or modify it under  -->
<!-- the terms of version 2 of the GNU General Public License as published  -->
<!-- by the Free Software Foundation. See the "COPYING" file for a copy     -->
<!-- of this license.                                                       -->
<!--                                                                        -->
<!-- JMRI is distributed in the hope that it will be useful, but WITHOUT    -->
<!-- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or  -->
<!-- FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License  -->
<!-- for more details.                                                      -->

<decoder-config showEmptyPanes="no">

		<version author="peter.brandenburg@t-online.de"
			version="1" lastUpdated="2006/11/09" />

		<!-- version 1 - converted from Tran_DCX_new - Peter -->

<decoder>
	<family name="NFA_HFA_DCC" mfg="Haber and Koenig Electronics GmbH">
		<model model="NFA" numOuts="8" numFns="10"
		maxMotorCurrent="0.8 A" maxTotalCurrent="1.2 A" 
		comment="NFA=Niederfrequenzansteuerung">
		<versionCV lowVersionID="32" highVersionID="47"/>
			<output name="1" label="White" />
	    	<output name="2" label="Yellow" />
		</model>
		<model model="HFA" numOuts="8" numFns="10"
		maxMotorCurrent="0.8 A" maxTotalCurrent="1.2 A" 
		comment="HFA=Hochfrequenzansteuerung">
		<versionCV lowVersionID="48" highVersionID="63"/>
			<output name="1" label="White" />
	    	<output name="2" label="Yellow" />
		</model>
		

	</family>

	<programming direct="yes" paged="yes" register="yes" ops="yes"/>
	
	<variables>

		<variable label="Primary Address" CV="1" comment="Short address"
						item="Short Address"  default="03" >						
			<shortAddressVal/>
		</variable>

		<variable label="Vstart" CV="2" default="16" 
				comment="Range 0-63">
			<decVal max="63"/>
		</variable>
		
		<variable label="Acceleration" CV="3" default="16" item="Accel"
				comment="Range 0-63">
			<decVal max="63"/>
		</variable>

		<variable label="Deceleration" CV="4" default="16" item="Decel"
				comment="Range 0-63">
			<decVal max="63"/>
		</variable>
		
		<variable label="Vhigh" CV="5" default="63" 
				comment="Range 0-63">
			<decVal max="63"/>
		</variable>
		
		<variable label="Decoder Version" CV="7" readOnly="yes"
				item="Decoder Version" >
			<decVal/>
		</variable>

		<variable label="Manufacturer ID" CV="8" readOnly="yes"
				item="Manufacturer" default="111">
			<decVal/>
		</variable>
			
		<variable label="Package Timeout" CV="11" default="64"
						tooltip="stops motor if no DCC packets received after timeout">
			<decVal/>
		</variable>
			
		<variable label="Analog Operation Outputs F1" CV="13" mask="XXXXXXXV" default="1"
					item="Analog Mode Function Status - F1">
			<enumVal>
				<enumChoice choice="On"/>
				<enumChoice choice="Off"/>
			</enumVal>
		</variable>	
		
		<variable label="Analog Operation Outputs F2" CV="13" mask="XXXXXXVX" default="1"
					item="Analog Mode Function Status - F2">
			<enumVal>
				<enumChoice choice="On"/>
				<enumChoice choice="Off"/>
			</enumVal>
		</variable>	
	
		<variable label="Long Address" CV="17" item="Extended Address"
		        comment="4 digit address (Range 128-10240)">
			<longAddressVal/>
		</variable>

		<variable label="Normal direction of motion" CV="29"
				mask="XXXXXXXV"
		        item="Locomotive Direction">
			<enumVal>
				<enumChoice choice="Forward"/>
				<enumChoice choice="Reverse"/>
			</enumVal>
		</variable>

		<variable label="Speed Steps" CV="29" mask="XXXXXXVX"
				item="Speed Step Mode" default="1">
			<enumVal>
				<enumChoice choice="14"/>
				<enumChoice choice="28/128 (recommended)"/>
			</enumVal>
		</variable>

		<variable label="Analog (DC) Operation" CV="29"
				mask="XXXXXVXX" default="0" >
			<enumVal>
				<enumChoice choice="Off"/>
				<enumChoice choice="On"/>
			</enumVal>
		</variable>

		<variable label="Use Speed Table" CV="29" mask="XXXVXXXX"
				item="Speed Table Definition">
			<enumVal>
				<enumChoice choice="Use Vstart, Vmid, Vhigh (CV29, bit 4)"/>
				<enumChoice choice="Use Table (CV's 67-94)"/>
			</enumVal>
		</variable>

		<variable label="Addressing Mode" CV="29" mask="XXVXXXXX"
				item="Address Format">
			<enumVal>
				<enumChoice choice="2 digit addressing"/>
				<enumChoice choice="4 digit addressing"/>
			</enumVal>
		</variable>
		
		
		<!-- Funtion Mapping ONLY for F2 and F3, ONLY if extension board fitted to decoder!!!  -->
		

		<variable label="F2 controls output 1" CV="36" mask="XXXXXXXV" minOut="1" minFn="2"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F2 controls output 2" CV="36" mask="XXXXXXVX" minOut="2" minFn="2"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F2 controls output 3" CV="36" mask="XXXXXVXX" minOut="3" minFn="2"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F2 controls output 4" CV="36" mask="XXXXVXXX" minOut="4" minFn="2" default="1"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F2 controls output 5" CV="36" mask="XXXVXXXX" minOut="5" minFn="2"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F2 controls output 6" CV="36" mask="XXVXXXXX" minOut="6" minFn="2"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F2 controls output 7" CV="36" mask="XVXXXXXX" minOut="7" minFn="2"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F2 controls output 8" CV="36" mask="VXXXXXXX" minOut="8" minFn="2"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>

		<variable label="F3 controls output 1" CV="37" mask="XXXXXXXV" minOut="1" minFn="3"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F3 controls output 2" CV="37" mask="XXXXXXVX" minOut="2" minFn="3"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F3 controls output 3" CV="37" mask="XXXXXVXX" minOut="3" minFn="3"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F3 controls output 4" CV="37" mask="XXXXVXXX" minOut="4" minFn="3"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F3 controls output 5" CV="37" mask="XXXVXXXX" minOut="5" minFn="3" default="1"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F3 controls output 6" CV="37" mask="XXVXXXXX" minOut="6" minFn="3"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F3 controls output 7" CV="37" mask="XVXXXXXX" minOut="7" minFn="3"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
		<variable label="F3 controls output 8" CV="37" mask="VXXXXXXX" minOut="8" minFn="3"> <enumVal> 
			<enumChoice choice="No"/> <enumChoice choice="Yes"/> </enumVal> </variable>
			

		
		<variable label="Analog Maximum Speed"	CV="49" default="63" item="analog maximum speed">
				<decVal max="63"/>
		</variable>
		
		<variable label="Analog Acceleration and Deceleration"	CV="50" default="0" 
						item="CV50, enables/disables CV 3 and 4 in analog mode">
				<enumVal>
					<enumChoice choice="Off"/>
					<enumChoice choice="On"/>
				</enumVal>
		</variable>
		
		<variable label="Automatic Speed Step Detection" CV="51" default="1"
						tooltip="CV51, auto-detection of the decoders speed step configuration">
				<enumVal>
					<enumChoice choice="Off"/>
					<enumChoice choice="On"/>
				</enumVal>
		</variable>

		<variable label="BEMF Configuration Slow" CV="52" default="1" item="DC Brake Momentum"
					tooltip="CV52: 0=OFF, 1=slow speed, 2=OFF, 3=normal speed">
				<decVal max="3"/>
		</variable>
		
				
		<variable label="Effects Output F1 Dimm Rate-1" CV="53" default="255"
					>
			<decVal/>
		</variable>

		<variable label="Effects Output F1 Dimm Rate-2" CV="54" default="255"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Effects Output F1 Frequency and Mode" CV="55" default="0"
	          		>
			<decVal max="31"/>
		</variable>
		
		<variable label="Effects Output F1 Symmetry" CV="56" default="128"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Running Hour Meter1" CV="57" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Running Hour Meter2" CV="58" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Running Hour Meter3" CV="59" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Decoder Production Date1" CV="60" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Decoder Production Date2" CV="61" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Decoder Serial Number1" CV="62" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Decoder Serial Number2" CV="63" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		<variable label="Decoder Serial Number3" CV="64" readOnly="yes"
	          		>
			<decVal/>
		</variable>
		
		

		<variable label="Speed Table" CV="67">
			<speedTableVal/>
			</variable>

		

		<variable label="User Private ID #1" CV="105"
			item="User Id #1">
			<decVal/>
			</variable>

		<variable label="User Private ID #2" CV="106"
			item="User Id #2">
			<decVal/>
			</variable>

		
	</variables>
</decoder>


	<pane name="Output Handling">
		<column>
			<row>
				<column>
					<display item="Effects Output F1 Dimm Rate-1"
						tooltip="CV53, Sets the switch ON dimming of F1" />
					<display item="Effects Output F1 Dimm Rate-2"
						tooltip="CV54, Sets the switch OFF dimming of F1" />
					<display item="Effects Output F1 Symmetry"
						tooltip="CV56, Sets the symmetry of F1" />
				</column>
				<column>
					<display item="Effects Output F1 Dimm Rate-1" format="hslider" label=""
						tooltip="CV53, Sets the switch ON dimming of F1" />
					<display item="Effects Output F1 Dimm Rate-2" format="hslider" label=""
						tooltip="CV54, Sets the switch OFF dimming of F1" />
					<display item="Effects Output F1 Symmetry" format="hslider" label=""
						tooltip="CV56, Sets the symmetry of F1" />
				</column>
			</row>
			<label label=" " />
			<separator/>
			<label label=" " />
			<display item="Effects Output F1 Frequency and Mode"
						tooltip="CV55, Sets the frequency and mode of F1" />
						
		</column>
		
	</pane>

	<pane name="HKE Special">
		<column>

			<display item="Package Timeout" tooltip="CV 11" />
			<label label=" " />
			<display item="Automatic Speed Step Detection" tooltip="CV 51" />
		</column>
	
		<column>
			<display item="Running Hour Meter1" tooltip="CV 57" />
			<display item="Running Hour Meter2" tooltip="CV 58" />
			<display item="Running Hour Meter3" tooltip="CV 59" />
			<separator />
			<display item="Decoder Production Date1" tooltip="CV 60" />
			<display item="Decoder Production Date2" tooltip="CV 61" />
			<separator />
			<display item="Decoder Serial Number1" tooltip="CV 62" />
			<display item="Decoder Serial Number2" tooltip="CV 63" />
			<display item="Decoder Serial Number3" tooltip="CV 64" />
		</column>
	
</pane>
	
</decoder-config>



