home *** CD-ROM | disk | FTP | other *** search
/ The Unsorted BBS Collection / thegreatunsorted.tar / thegreatunsorted / misc / adapter.txt < prev    next >
Text File  |  1994-04-27  |  11KB  |  240 lines

  1.  
  2. How to connect a PC to a Videocrypt decoder
  3. -------------------------------------------
  4.  
  5. 1994-04-11
  6.  
  7.  
  8. The easiest way to connect your PC to a decoder is to use the card slot
  9. as an interface and connect it with a voltage converter (MAX232) and a
  10. TTL open collector driver (74LS07) to the RS-232 serial port. This way,
  11. you don't even have to open the decoder.
  12.  
  13. WARNING: In order to build the adapter described below, you will at
  14.          least require some digital electronics experience. If
  15.          you don't understand, how the described circuitry works,
  16.          better don't use it! Errors might in the worst case damage
  17.          both your PC and your TV system.
  18.  
  19. The chip cards used by the Videocrypt pay-TV decoders follow exactly
  20. the specification ISO 7816 (you might find this international standard
  21. in a local library, if you are interested). Also, the protocol is the
  22. asynchronous half-duplex T=0 protocol with active low reset and inverse
  23. convention as defined in the standard.
  24.  
  25. According to ISO, a chip card is 85.60 mm long, 53.98 mm high, 0.76 mm
  26. thick and the edges are rounded with a radius of 3.18 mm. It has eight
  27. defined contact areas (C1 - C8 in the diagram below), each of which is
  28. at least 2 mm wide and 1.7 mm heigh:
  29.  
  30.  
  31.        ______________________________________
  32.      /                                        \
  33.     |                                          |
  34.     |                                          |
  35.     |    C1   C5                               |
  36.     |    C2   C6                               |
  37.     |    C3   C7                               |
  38.     |    C4   C8                               |
  39.     |                                          |
  40.     |                                          |
  41.     |                                          |
  42.      \________________________________________/
  43.  
  44.  
  45.  
  46. These contacts have the following purpose:
  47.  
  48.  
  49.     C1    VCC    Supply voltage (+5 V, max. 200 mA)
  50.     C2    RST    Reset signal
  51.     C3    CLK    Clock signal
  52.     C4    -    reserved
  53.     C5    GND    Ground
  54.     C6    VPP    Programming voltage
  55.     C7    I/O    Data input/output
  56.     C8    -    reserved
  57.  
  58.  
  59. The following table gives the precise location of the contact areas.
  60. These areas are only minimum areas, the actual contacts might be larger
  61. but must of course be properly isolated from each other.
  62.  
  63. In the following table,
  64.  
  65.     A    represents the maximum distance between the card's left
  66.         edge and the contact area's left edge,
  67.     B    represents the minimum distance between the card's left
  68.         edge and the contact area's right edge,
  69.     C    represents the maximum distance between the card's top
  70.         edge and the contact area's upper edge,
  71.     D    represents the minimum distance between the card's top
  72.         edge and the contact area's lower edge.
  73.  
  74.  
  75.           A      B      C      D
  76.       -----------------------------------------
  77.     C1    10.25    12.25    19.23    20.93
  78.     C2    10.25    12.25    21.77    23.47
  79.     C3    10.25    12.25    24.31    26.01
  80.     C4    10.25    12.25    26.85    28.55
  81.     C5    17.87    19.87    19.23    20.93
  82.     C6    17.87    19.87    21.77    23.47
  83.     C7    17.87    19.87    24.31    26.01
  84.     C8    17.87    19.87    26.85    28.55
  85.  
  86.  
  87. Older card systems had these contacts located higher (distance from the
  88. top between 9.07 mm and 18.39 mm, distance from the left identical). As
  89. some decoders support both contact area alternatives, make sure that
  90. this old contact area is properly isolated or you'll produce a short
  91. circuit when inserting your card. You might have noticed, that the
  92. contacts are arranged in the usual 0.1 inch (= 2.54 mm) system (i.e.
  93. like the pins of a 8-pin DIL chip).
  94.  
  95. You can produce your card adapter by making a PCB with contact areas at
  96. the above listed locations. The PCB must have precisely the thickness
  97. and width of a real card, but it may be longer, so that you can locate
  98. the interface electronics on the part which remains outside the slot.
  99. Cards are inserted in most decoders with the contacts on the bottom
  100. side, but check this on your system. Normal PCBs are about 1.3 mm think
  101. and won't fit into the slot. Either you get a PCB which is about 0.8 mm
  102. thick or you make it thinner, e.g. by using a sander machine. Perhaps
  103. you find also ready to use test cards with connectors instead of
  104. producing your own or you simply open the decoder and clamp contacts to
  105. the resistors near the card slot (not recommended: there are unisolated
  106. 230 V parts inside the decoder, this may kill you if you are not very
  107. carefull!!!).
  108.  
  109. The adapter will only need the card contacts I/O, GND, RST and VCC. On
  110. the RS-232 side, only the following contacts will be used:
  111.  
  112.            Sub-D 25-pin       Sub-D 9-pin
  113.       ---------------------------------------------------------
  114.     TxD        2        3    transmit data
  115.     RxD        3        2    receive data
  116.     CTS        5        8    clear to send
  117.     DSR        6        6    data set ready
  118.     GND        7        5    ground
  119.     DCD        8        1    carrier detect (here: reset)
  120.     DTR        20        4    data terminal ready
  121.  
  122.  
  123. The pins DTR, DSR and CTS are not actually needed, they are just
  124. connected together in the adapter, so that defined levels are available
  125. on them because some software might need this.
  126.  
  127. The following components are necessary for the adapter
  128.  
  129.  
  130.     1    PCB or test card
  131.     1    IC Maxim MAX232
  132.     1    IC 74LS07 (or only a 7407)
  133.     4    capacitors 22 uF
  134.     1    female Sub-D connector (9 or 25-pin)
  135.  
  136.  
  137. The MAX232 converts the RS-232 levels (about +10 and -10 V) to TTL
  138. voltage  (0 and +5 V) and vice versa without requiring anything else
  139. than +5 V power supply. This chip contains two TTL->RS-232 and two
  140. RS-232->TTL drivers and needs four external 22 uF capacitors in order
  141. to generate the RS-232 voltage internally. The adapter electronic gets
  142. its power supply from the decoder's VCC line or you can use an external
  143. 5 V supply if you wish.
  144.  
  145. The card slot's RST line is connected using one of the TTL->RS-232
  146. drivers in the MAX232 to DCD, so that the software and the decoder can
  147. easily resynchronize in case of a protocol error.
  148.  
  149. The I/O line is a bidirectional half-duplex asynchronous TTL level
  150. serial port that is operated in a Videocrypt system with 9600 bits/s.
  151. We can connect this line to a MAX232 TTL input driver (which is
  152. connected to RxD and sends bytes to the PC) in order to receive data
  153. from the decoder. The TxD line's signal is converted in the MAX232 to
  154. TTL level and is connected with an open collector TTL driver to I/O.
  155. This open collector driver (one of six in the 74LS07) has a high
  156. impedance output during idle state and 1 and is connected to GND during
  157. a 0 on it's input. As there is already a pull-up resistor to +5 V on
  158. I/O in the decoder, this circuitry guarantees, that the adapter is in
  159. high impedance state if the TxD line is idle and delivers the correct
  160. voltage if the PC sends bytes and the decoder is in reception mode. As
  161. we don't connect totem-pole or tristate outputs to I/O, a short circuit
  162. should be impossible in the adapter.
  163.  
  164. The following diagram describes the whole interface:
  165.  
  166.  
  167.               +-------------+               
  168.   +-----------|1     V    16|----o +5V (VCC)
  169.  +|          +|             |
  170.  === +5V o-||-|2  MAX232  15|----o GND (card & RS-232)
  171.   |           |             |
  172.   +-----------|3      +---14|----o DCD                    +-<-o DTR
  173.            +  |       |     |                             |
  174.      +---||---|4      | +-13|-                            +->-o DSR
  175.      |        |       | v   |                             |
  176.      +--------|5      | +-12|-                            +->-o CTS
  177.           +   |       |     |
  178.      GND o-||-|6      +-<-11|----o RST
  179.               |             |
  180.      RxD o----|7  ---<--- 10|-------------------+----o I/O
  181.               |             |              |\   |
  182.      TxD o----|8  --->---  9|--------------| |--+
  183.               +-------------+             1|/ 2
  184.                                           74LS07
  185.  
  186.                                           (also connected to 74LS07:
  187.                                            pin 7=GND, pin 14=VCC)
  188.  
  189.  
  190. Pay attention to the polarity of the capacitors (marked with a + in the
  191. diagram next to each capacitor)!
  192.  
  193. As a side effect of this simple interface design, every byte sent by
  194. the PC is at the same time also received by the PC. Consequently, you
  195. can test the circuit with a terminal emulator by switching of local
  196. echo: if you still see every typed immediately character on the screen,
  197. the interface should be all right. Software must be capable of dealing
  198. with this echo from the interface. As specified in the ISO standard,
  199. the decoder activates VCC only shortly before a reset and deactivates
  200. VCC if an answer-to-reset packet isn't received in time after the reset
  201. signal. If no external 5 V supply is used, the software might have to
  202. wait a few milliseconds after the reset before starting with the
  203. answer-to-reset, in order to allow the capacitors to load up and
  204. provide a stable operation of the MAX232.
  205.  
  206. A few final hints:
  207.  
  208. If you have a larger distance between the PC an the decoder, then
  209. locate the adapter electronic near the decoder, because the RS-232
  210. interface is much more suitable for long cables than the TTL signals. 
  211. Cables of 12 m length have sucessfully been used and you shouldn't have
  212. problems with RS-232 cables up to 15-30 m length. (If you need much
  213. longer cables, you should use RS-422 line drivers, e.g. the Am26LS31
  214. and Am26LS32 from AMD, which allow over 1 kilometer cable length.)
  215.  
  216. You can also use this adapter circuit to allow a PC to listen to the
  217. data traffic between a decoder and a real card. Just connect the real
  218. card and the adapter parallel to the decoder and don't let the PC
  219. software transmit anything. Suitable card slots are available for
  220. little money from various manufacturers (e.g. Amphenol). Videocrypt
  221. uses the inverse convention data format, i.e., you have to reverse and
  222. invert the bits in each byte in the PC software in order to get the
  223. correct byte value. For more details about the protocol, check ISO
  224. 7816-3.
  225.  
  226. There are many alternative ways to build this interface. E.g. instead
  227. of a MAX232, an LT1081 from Linear Technology could be applied or the
  228. 74LS07 could be replaced by two open collector inverters in the 74LS05
  229. and a 2.2k pull-up resistor between them, etc.
  230.  
  231. Normally, both the RS-232 and the decoder slot should not be harmed by
  232. short circuits, but be careful. Also try to avoid electrostatic voltage
  233. (e.g. generated by walking on a suitable carpet) near the interface,
  234. because discharges cause easily decoder or PC crashes and could
  235. theoretically even harm the hardware (the MAX232 is a CMOS chip as are
  236. some of the chips in the decoder). And please doublecheck everything I
  237. have written here, because I don't want to be responsible if anything
  238. goes wrong just because I wrote something wrong. DON'T USE THIS DESIGN
  239. IF YOU DON'T UNDERSTAND IT.
  240.