V4.0 Serial Port Protocol
For X-20 And X-60 Multi-Coin And Encoded Token Acceptors
(Click here for V3.0 Serial Port Protocol)


Introduction

IDX Xeptor Models X-20 and X-40, using V4.0 or higher firmware, support both an ASCII hexadecimal based RS-232 compatible protocol for use by humans with a "terminal emulator", such as Procomm or HypeTerminal, and a binary based protocol for use in communication with other computing devices such as slot machines and tracking systems. Port parameters are 9600,N,8,1. Binary protocol information will be provided on request, and this document will focus only on the hexadecimal protocol for humans.

Model X-20, X-60 Serial Port Interface
Xeptors implement a very basic three wire RS-232 interface. The negative going voltage for the TxD line is derived from the negative going voltage on the RxD line and thus will meet true RS-232 specifications if the RxD line meets true RS-232 specifications. A connector cable is available from IDX.

 

HyperTermINAl Setup
Hyper Terminal is a dumb terminal emulator that is provided with the Windows operating systems. It is usually found under the Accessories/Communications folders. When you start it you will need to create a New Connection, give it a name, and set the File/Properties. Select the Connect Using list and pick either Direct To COM1 or Direct To COM2 depending on the location of your available serial port. Then select Configure and set things for 9600 Bits/sec, 8 bits, Parity None, Stop Bits - 1, Flow Control - None. Then you should be ready to connect. If this does not work, sometimes you must leave the program and return again for the settings to take effect.

 ASCII Hexadecimal Protocol Basics
1.   This is not the default communication mode at power up. (use HH command)
2.   All bytes are echoed and a CR-LF terminates all responses.
3.      Some nice ASCII text may additionally be part of ASCII Hex mode responses.
4.      ASCII is the name of the code set that represents printable characters.
5.      Hexadecimal is a base-16 number system where each hex digit is made from 4 binary bits, thus two hex digits represent the 8 bits of a byte of data. Each digit in hexadecimal has 16 possible values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, where E, for example has the decimal value of 14. The hexadecimal number 3A would then have the decimal value of 3x16 + 10x1 = 58. See handy dandy conversion chart later in this document.
6.      When entering a command that requires numbers, do not put any spaces between the digits.
7.      Specific commands are listed in the table below.

             Table 1.  Commands for both Binary and ASCII Hex modes.

Command

Response

Description

B

 

Binary mode. (Hex is power up default)

H

 

ASCII Hex mode. (Power up default)

I

 

Inhibit input = logic 1

i

 

Inhibit input = logic 0

L

Text

List Coins in Coin Memory with detailed description.

P(d0… d3)

 

Pulse time in ms: credit/sense, diverter, diverter delay, tilt(1/3sec)

R

Text

Report system configuration including coin memory, optical and inductive sensor values, pulse times, and option configuration

r

r0,r1

Report diagnostic health: failure, maintenance

S

 

Save current configuration, use after s and P commands.

s(d0)

 

Set SysConfig byte: SysConfig

V

r0… r3

Version report; model, version, ID#, ROM-Sig, EE-Sig

 

  SysConfig Byte Definition

Bit

Name

Comments

0

Credit Sensors

1 = Credit Sensors are installed. (read only)

1

NRI Emulation

1 = Coin Value becomes output # assignment on PPNRI-3 or PPNRI-6

2

One Pulse/Coin

1 = Limit output pulse count to 1, limit coin signature to one diameter size.

3

Inhibit Sense

1 = Inhibit input high for to inhibit acceptor.

4

Reserved

Reserved for X-Mark security.

5

Reserved

Reserved for X-Mark security.

6

Tight Metal Tol.

1 = Tighter tolerance (smaller accept window) for all coins.

7

Security

1 = Acceptor secured from programming without X-Key or Coin Selector.

Note: The default factory setting for SysConfig is 0C or OD depending on Credit Sensor installation.

 

Tilt/Fail Byte Definition

Bit

Name

Comments

0

Credit Optics

Credit optics blocked or dead.

1

Diameter Optics

Diameter optics blocked or dead.

2

Coil Open

Flat cable probably pulled out.

3

Coil Load

Coin probably stuck in chute.

4

uCMemory

Program memory bad.

5

EEMemory

Configuration memory bad.

6

Slow Coin

Coin slow, stuck, or strung.

7

Reverse Coin

Coin took reverse path.

 

Maintenance Byte Definition

Bit

Name

Comments

0

Credit Optics

Credit optics dim.

1

Diameter Optics

Diameter optics dim.

2

Reserved

Reserved for X-Mark code optics

3

Switch Not 0

Rotary switch not at operating mode position 0

4

Ambient Light

Too much ambient light on the optics

5

Reference Cal.

Calibration Reference Coins not programmed.

6

Wrong Model

Likely from change of processor chip to different model, or to earlier version.

7

 

 

 


Auto Reporting
The Xeptors will not "speak unless spoken to" except when a coin has been deposited. The Xeptor will automatically report the disposition and sensor readings taken from each coin when the analysis is complete and the SENSE pulse has been issued. If internal credit optics are installed, a subsequent report on slow or reverse coins may additionally occur. The auto report message consists of 6 data bytes as shown below in ASCII Hex format.

The disposition of the coin may have a numeric value or a letter as shown in the table below in order to indicate which coin was accepted, or the reason for rejection.

Value

Disposition Value Meaning

1-6

The coin memory number which had parameters matching the accepted coin.

D

No coin memory had a DIAMETER matching the rejected coin.

X

Diameter was okay,  X-Mark doesn't match the rejected coin.

M

Diameter and X-Mark okay, edge METAL measurement doesn't match rejected coin.

U

Parameters matched the designated UNWANTED coin, and was rejected.

S

A SLOW coin passed through the Xeptor, could be a stringer or sticking problem. 

R

An accepted coin REVERSED direction, credit may or may not have issued.

L

The rotary switch was turned to one of the 6 LEARN positions.

I

The Xeptor was INHIBITED, coin rejected.

E

The Xeptor Coin Memory is EMPTY.

   


Example Configuration Report and Coin Auto Report Messages.
The "R" Report command produces the first report below, containing first an identification of the unit, then the contents of Coin Memory, then under the dashed line are the system configuration and sensor diagnostics information. We can glean the following information from the report: There are 4 coins programmed into Coin Memory. The 3rd coin has a value of 0D (Hex) = 13 which means that it is programmed as an unwanted coin. The 5th coin is programmed to produce 8 credit pulses. The Diameter Optics all report in the normal range of 1-8. The Credit Optics are reporting zeros, indicating there are none installed. The inductive sensor tank circuit calibrations are all in the range of about 40 indicating they are just fine. The SysConfig indicates the only thing special is it is set for Inhibit High and that Credit Optics are installed. The TiltTime is set for 4/3 seconds. The Sense and Credit Pulses will be 20(Hex) = 32ms. And, finally, if there is a secondary diverter, it will fire 10(Hex)ms after coin validation and the pulse will last 80(Hex)ms.

Xeptor X-60 V4.0 ID#:CD87
Coin Memory: 01 02 03 04 05 06
Coin Value : 01 01 0D 00 08 00
Coin Code:   02 00 03 00 00 00
Metal-ESL:   35 32 1B 00 22 00
Metal-EAL:   3B 36 1E 00 23 00
Metal-CSL:   3C 38 1D 00 2A 00
Metal-CAL:   3B 36 1F 00 2B 00
Diameter:    66 93 8F 00 B2 00
Tolerances:  00 10 00 80 00 80
------------------------------
DiamOptc: 01 05 05 CrOp: 02 03
XMark:    08 08 08 08
Tank Cal: 4E  Now: 48 56
Sys Cnfg: 09  Tilt 1/3 Sec: 04
Cred ms:  20 Dvt D/P ms: 10 80


Serial Port Command Examples For IDX Xeptors
The examples commands below assume that a connection has been successfully established through a PC serial port using a terminal emulator program as described in the introduction paragraph of this document. Please refer to the second page of this same document for more information about the example commands used below.

Configure For Humanly Hexadecimal Interface
The normal communication mode for Xeptors uses binary data which is not very readable by people. The alternative mode, ASCII Hexadecimal is (to some) human readable. Enter the command "HH" (not including quotation marks) to enter this mode. In this mode, binary data bytes are represented by a pair of ASCII Hexadecimal characters with values 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, and F, where A-F represent values 10-15 respectively.  A conversion chart for hexadecimal to decimal follows.

Hexadeximal Conversion Chart:   16's digit on left axis, 1's digit on top axis.

 

x0

x1

x2

x3

x4

x5

x6

x7

x8

x9

xA

xB

xC

xD

xE

xF

0x

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

1x

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

2x

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

3x

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

4x

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

5x

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

6x

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

7x

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

8x

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

9x

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

Ax

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

Bx

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

Cx

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

Dx

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

Ex

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

Fx

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

View The Report Screen
Send the "R" command to see the coin data stored in memory and the operating parameters for various sensors and the timing of the credit pulse and other signals.

Change Inhibit Line Logic
Xeptors have a hardware inhibit line that is used to prevent acceptance of coins even when power is applied to the unit. When inhibited, the Xeptor LED will flash amber color to indicate the inhibit state. Send the "I" command to change to "inhibit high" or send the "i" command to change to "inhibit low". After doing so, you must send the "S" command to save the new configuration to non-volatile memory.  

Change Credit Pulse Or Tilt Timing
The "Pccddpptt" command is used to change the output credit pulse width (cc), the diverter output option delay (dd) and pulse width (pp) and the tilt time (tt). Assuming you do not have a diverter option and you would like the credit pulse to be 34ms (22 hex) and the self inhibit after a tilt to last 4 seconds (12/3 sec Þ 0C hex) then you would enter the command "P2200000C", followed by the "S" command to save the new configuration to non-volatile memory.

Tight-Metal Security.
Firmware version V3.0s (s only) and all of V4.0 have the ability to increase the normal metal security by setting bit 6 of SysConfig. By doing so, an additional overall test of the ensemble of metal readings is conducted and provides a means of measurably tightening the acceptance window with virtually no impact on normal coin acceptance rate. It is automatically invoked when the BadCoinCount flag is set. To set bit 6 of SysConfig use the "s" command to add 40 Hex to the current value of SysConfig. For example, if SysConfig is currently 08 (see System Report with "R" command) then you would use the command "s48" followed by "S" to save the change to EEPROM.

Increase X-Mark Code Reading Security
All X-Mark Xeptors have the ability to increase the security in reading of the X-Mark minted facets. In normal operation, the X-Mark sensors allow a fair amount of variation in reflected signal strength from the facets and require a successful read of the X-Mark on only the leading or trailing edge of the coin... but not both... so that the system maintains a very high acceptance rate even after years of wear and dirt accumulation on the X-Mark facets. However, on rare occasions there are tokens that not only have have the same alloy and diameter, but also have minted graphics having patterns that in the right orientation may mimic the reflection of a valid X-Mark facet.

Xeptors have two tools to increase X-Mark detection security in these circumstances. By setting Bit 4 of SysConfig the signal threshold required for valid detection is doubled and can significantly reduce false detection due to graphics on other otherwise similar tokens. By setting Bit 5 of SysConfig, it is then required that the X-Mark be detected on both the leading and trailing edges of the coin, dramatically reducing the probability that false detection because of the graphics will happen in both places.  the graphical. Both automatically invoked when the BadCoinCount flag is set. Use the  "s" command to set bits 4 and 5 of SysConfig which adds 30 Hex to the current value of SysConfig. For example, if SysConfig is currently 08 (see System Report with "R" command) then you would use the command "s38" followed by "S" to save the change to EEPROM.