FreeCalypso > hg > fc-sim-sniff
annotate doc/Sniffing-hw-setup @ 58:95ed46b5f8f1 default tip
doc/Sniffing-hw-setup: mv-sniffer is here
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Wed, 04 Oct 2023 05:55:09 +0000 | 
| parents | 8a3003860cf8 | 
| children | 
| rev | line source | 
|---|---|
| 48 
1068f9fd41d5
doc: project rename
 Mychaela Falconia <falcon@freecalypso.org> parents: 
36diff
changeset | 1 The hardware setup for SIM interface sniffing with FC SIMsniff consists of the | 
| 
1068f9fd41d5
doc: project rename
 Mychaela Falconia <falcon@freecalypso.org> parents: 
36diff
changeset | 2 following components: | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 * The same SIMtrace FPC cables (going from a SIM socket to the 6-pin FPC | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 connector) that were originally developed for SIMtrace1/2 and are sold by | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 Sysmocom; | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 * An off-the-shelf Lattice Icestick FPGA board (sold by Digi-Key, for example) | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 that has been outfitted with header pins: the board ships with empty PTHs | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 (plated through holes) at J1, hence a small soldering job is required to | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 populate this header; | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 * Some in-between components described below. | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 For the in-between components of the last bullet point above, there are 3 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 possibilities, each described in its own section below. | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 18 HW setup version 1 | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 ================== | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 (works today) | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 23 In this solution there are two little ad hoc boards sitting between the SIMtrace | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 24 FPC cable and the Icestick board: | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 26 * sim-fpc-pasv board produced in the fall of 2022 | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 27 * mv-sniffer board produced in the fall of 2023 | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 29 The first board (sim-fpc-pasv) passively interconnects an FPC connector for | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 30 SIMtrace cables, a physical SIM socket and a bunch of 2.54 mm header pins, | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 31 bringing out all lines of the SIM-ME electrical interface. This board was | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 32 originally produced a year ago for the purpose of observing SIM voltages and | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 33 clocks with an oscilloscope. The second board adds one active component: | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 34 Nexperia 74LVC4T3144 dual supply logic voltage level translator IC, powered | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 35 from SIM_VCC on its A side and from Icestick board +3.3V rail on its B side. | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 37 The buffer IC receives (sniffs) the SIM-ME electrical interface at whichever | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 38 voltage the ME puts out (everything from 1.8V to 5V is accepted) and puts out | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 39 the same signals at the fixed logic voltage level needed by the FPGA on the | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 40 Icestick; the FPGA then sniffs the ISO 7816-3 protocol just above the electrical | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 41 level. | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 | 
| 51 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 43 Wire assignments for this HW setup | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 44 ---------------------------------- | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 45 | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 46 A 6-wire ribbon cable, cut from a standard multicolor ribbon cable spool and | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 47 outfitted with custom crimped connectors, is used to make the connection | 
| 51 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 48 between sim-fpc-pasv and mv-sniffer boards. Wire color assignments in this | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 49 ad hoc connection cable are: | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 50 | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 51 Wire SIM interface pin | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 52 --------------------------------- | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 53 brown VCC | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 54 red RST | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 55 orange CLK | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 56 yellow GND | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 57 green GND | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 58 blue I/O | 
| 
8a3003860cf8
doc/Sniffing-hw-setup: wire assignments for mv-sniffer setup
 Mychaela Falconia <falcon@freecalypso.org> parents: 
48diff
changeset | 59 | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 HW setup version 2 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 ================== | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 (a little more distant, but will be needed before wider spread) | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 65 The solution with separate sim-fpc-pasv and mv-sniffer boards is quite | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 66 inconvenient because of the number of pieces required - clutter on the lab | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 bench - plus poor electrical design with jumper wires between the two boards | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 extending the electrical length of the SIM bus before the LVC buffer. In the | 
| 48 
1068f9fd41d5
doc: project rename
 Mychaela Falconia <falcon@freecalypso.org> parents: 
36diff
changeset | 69 fully polished version of FC SIMsniff, these two adapter boards will need to be | 
| 
1068f9fd41d5
doc: project rename
 Mychaela Falconia <falcon@freecalypso.org> parents: 
36diff
changeset | 70 combined into one. The final FreeCalypso SIMsniff pod is expected to be a | 
| 
1068f9fd41d5
doc: project rename
 Mychaela Falconia <falcon@freecalypso.org> parents: 
36diff
changeset | 71 single board (still very simple and low cost) featuring the following | 
| 
1068f9fd41d5
doc: project rename
 Mychaela Falconia <falcon@freecalypso.org> parents: 
36diff
changeset | 72 components: | 
| 36 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 1) SIMtrace FPC connector | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 2) SIM socket | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 3) 74LVC4T3144 buffer IC | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 4) SIM bus solidly connected between components 1, 2 and 3 | 
| 
f1c3dd2173d3
doc/Sniffing-hw-setup: document written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 5) A header for FPGA board connection, wired to the 'B' side of component 3 | 
| 58 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 79 | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 80 HW setup version 0 (historical) | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 81 =============================== | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 82 | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 83 In the beginning of FC SIMsniff project, there was no new custom hardware - but | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 84 we did have our sim-fpc-pasv board from a year ago, and we got the Icestick | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 85 board outfitted with header pins. Our first hw setup thus consisted of jumper | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 86 wires connecting from FPGA I/O pins (plus Icestick GND) directly to SIM bus pins | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 87 on the sim-fpc-pasv adapter. | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 88 | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 89 This hw setup could not be used for any real SIM-ME sniffing: a class A (5V) ME | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 90 would destroy the FPGA (grossly exceeds Absolute Maximum Ratings), while class C | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 91 (1.8V) operation produced by all newer ME (from Calypso+Iota onward) cannot be | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 92 picked up directly by the FPGA as the high logic level falls right between | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 93 Vil_max and Vih_min, causing the FPGA to receive garbage. However, this setup | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 94 worked with FCDEV3B forced into class B operation, and was used to develop our | 
| 
95ed46b5f8f1
doc/Sniffing-hw-setup: mv-sniffer is here
 Mychaela Falconia <falcon@freecalypso.org> parents: 
51diff
changeset | 95 FPGA logic and prove it working before the arrival of mv-sniffer board. | 
