Project

General

Profile

SIMtrace Hardware » History » Version 26

tsaitgaist, 02/19/2016 10:49 PM
v1.1 picture added

1 1 laforge
[[PageOutline]]
2
= Osmocom SIMtrace Hardware =
3
4 7 laforge
This page is dedicated to the Hardware for Osmocom [wiki:SIMtrace], which looks like this:
5
6 26 tsaitgaist
[[Image(simtrace_11_front.jpg, 33%)]][[Image(simtrace_connectors_scaled.png, 33%)]]
7 1 laforge
8 26 tsaitgaist
You can buy the device on the [http://shop.sysmocom.de/products/simtrace sysmocom shop].
9 1 laforge
10 9 tsaitgaist
== Connectors ==
11
12
 * USB: USB mini-B connector. The main connector. The host software communicates (sniffing,...) through USB with the board. It can also be used to flash the micro-controller (using DFU).
13
 * serial: 2.5 mm jack serial cable, as used by osmocomBB. port used to debug the device (printf goes there).
14 18 laforge
 * debug (P3): same as serial, but using the FTDI serial cable. '''It is recommended to cut the voltage wire of the 6pin FTDI connector before plugging the cable into the simtrace.'''
15 9 tsaitgaist
 * jtag (P1): JTAG 20 pin connector to do hardware assisted debugging.
16
 * BT1: battery connector (4.5-6V DC). normally the USB provides power, but the battery port can be used for autonomous use of SIMtrace. The sniffing can be saved in the flash (U1).
17
 * FFC_SIM (P3): to connect the flat flexible cable with SIM end for the phone.
18
 * SIM (P4): put your SIM in there (instead of in the phone)
19
 * reset (SW1): to reset the board (not erasing the firmware). If your are too lazy to unplug and re-plug the USB.
20
 * bootloader (SW2): used to start the bootloader so to flash the device using DFU. press when plugging in the USB.
21 19 laforge
 * test (JP1): short circuit using a jumper to flash using [wiki:SIMtrace/Firmware#EnteringtheSAM-BAmode SAM-BA].
22 9 tsaitgaist
 * erase (JP2): short circuit using a jumper to erase completely erase the firmware.
23
24 4 laforge
== Schematics, Gerber & Co ==
25
26 1 laforge
The schematics, Gerber files, etc. can be found in the 'hardware' subdirectory of the simtrace.git repository:
27
 * http://cgit.osmocom.org/cgit/simtrace/tree/hardware (web browsing
28
 * git://git.osmocom.org/simtrace (git clone URL)
29
30 2 laforge
We're using Kicad as EDA tool.  Most of the work on the schematics and Gerber files has been done by Kevin Redon,
31 1 laforge
based on the original design by Harald Welte.
32 5 laforge
33 1 laforge
The latest schematics are also available as an attachment to this page.
34
35 15 laforge
== Interconnections ==
36
37
The hardware schematics are very, very simple:
38
39
 * Connect SIM-RST with PA7
40
 * Connect SIM-I/O with PA6(TXD0) and PA1(TIOB0)
41
 * Connect SIM-CLK with PA2(SCK0) and PA4(TCLK0)
42
 * Connect SIM-GND with GND
43
44
== Mode of operation ==
45
46
The USART of the AT91SAM7S is capable of T=0. The documentation only mentions it in clock-master mode, like you
47
would run it in a smart card reader to actively talk to a smart card. However, by using the USART input clock multiplexer,
48
you can use an externally-generated CLK like the one from the SIM card socket of the phone.
49
50
Unfortunately, the Rx Timeout feature of the USART is not working in T=0 mode, so I had to re-implement Rx timeout (waiting time)
51
handling by means of the TC (timer/counter) block 0.  Due to technical limitations, we will wait up to one byte (12 etu) more
52
than we should.
53
54 25 laforge
== Modi ==
55
56
57
58
SIMtrace has the possibility to work as:
59
 * sniffer
60
 * card reader
61
 * card emulator
62
 * man-in-the-middle
63
64
The SAM7S offers 2 T=0 capable USART ports.
65
One is connected to the phone (PA21-PA27), the other to the SIM (PA1-PA7).
66
The lines goes from the phone to the SIM through a bus switch (IC4=[http://www.ti.com/lit/ds/symlink/sn74cb3q3244.pdf CB3Q3244]).
67
The bus switch offer 2 buses of 4 lines:
68
 * The first is used to forward RST, CLK, and VPP (between the SIM and the phone). It is controlled by SC_SW (PA20)
69
 * The second is used to forward I/O (between the SIM and the phone). It is controlled by SC_I/O (PA19)
70
71
The various modi require to interrupt different lines:
72
73
|| SW_SC (PA20) || SC_I/O (PA19) || description || modus ||
74
|| L || L || phone and SIM directly connected || sniffer (use any USART port) ||
75
|| L || H || only I/O interrupted || MitM (use both USART port) ||
76
|| H || H || phone and SIM not connected || card read, emulator (use each USART port) ||
77
78
As of 2012-01-12, only the sniffer is implemented
79
80
SIM cards support various classes (voltage levels): class A = 5.0V, class B = 3.0V, class C = 1.8V.
81
SIMtrace v1.x only supports class B (3.0V), which all actual SIM cards and phone also support.
82
To ensure class B is used, SIMtrace forces 3.3V (within the 3.0V±10% spec) by holding the VCC line at this voltage.
83
SIMtrace v2 will support all 3 classes.
84
85
86 1 laforge
== Revisions ==
87 24 tsaitgaist
88
=== v2.0 ===
89
90
This is on going work.
91
The changes compared to v1.x are:
92
 * ID-1 and ID-000 smart card slots (with presence detection): so to be able to also sniff credit card sized smart cards
93
 * through hole USB Mini-B and Serial/Jack 2.5 connector: to be more robust
94
 * properly support all smart card classes (A,B,C): better compatibility
95
 * switch from AT91SAM7S to AT91SAM3S: it has more USB endpoints
96
 * be able to forward voltage from phone to SIM or provide voltage from the board: ideal sniffer and reader
97
 * use an microSD slot instead of built-on flash: easier data transfer
98 1 laforge
 * a SWP sniffer (maybe)
99
100 24 tsaitgaist
=== v1.1p (1.1 Production branch) ===
101 26 tsaitgaist
102
[[Image(simtrace_11_front.jpg, 33%)]]
103 23 tsaitgaist
104
This is a slightly corrected version of the v1.0p.
105
106
Changes:
107
 * a critical capacitor is near the LDO
108
 * some other capacitors are nearer to the CPU
109
 * some power traces are wider
110
 * the SIM C6/VPP contact is also routed through the bus switch (sometimes used for Single Wire Protocol)
111
 * sysmocom is added in the copper for legal reasons
112
 * the FTDI Vcc is cut
113
114
Downloads:
115
 * [attachment:simtrace_v11p_schematic.pdf]
116
 * [attachment:simtrace_v11p_gerber.zip]
117
118 7 laforge
=== v1.0p (1.0 Production branch) ===
119
120 20 tsaitgaist
121
[[Image(simtrace_v10p_front_mid.jpg, 33%)]]
122
123 7 laforge
This is identical to v1.0 on the schematics side, we simply altered the footprints of some components to accommodate
124
whatever the SMT factory had in stock.  Specifically the LED are 0805 instead of 0603, and the shottky diodes are
125
in a slightly awkward looking very large package.
126
127
Downloads:
128 22 tsaitgaist
 * [attachment:simtrace_v10p_schematic.pdf]
129
 * [attachment:simtrace_v10p_gerber.zip]
130 7 laforge
131
=== v1.0 ===
132
133 20 tsaitgaist
134
[[Image(simtrace_10_front.jpg, 33%)]]
135
136 7 laforge
This is the first stable release.  We built some 5 prototypes from this version.
137
138
Downloads:
139 13 laforge
 * [attachment:simtrace_schem_v10.pdf]
140
 * [attachment:simtrace_10_gerber.zip]
141 7 laforge
142
=== v0.9 ===
143
144 20 tsaitgaist
145
[[Image(simtrace_v09_top_mid.jpg, 33%)]]
146
147 7 laforge
As of June 04, 2011 the components had all arrived and four PCBs were in production.  We assemble the first
148 1 laforge
units around June 14, 2011.
149
150 7 laforge
As of June 21st, we had four re-worked prototypes that are fully functional.
151 1 laforge
152 7 laforge
=== v0.8 ===
153 20 tsaitgaist
154
155
[[Image(simtrace_08_front_mid.jpg, 33%)]]
156 1 laforge
157 7 laforge
Never really was an official release.  However, a friend took the unfinished Gerber files and built 5 units.
158 1 laforge
159 7 laforge
Since the Gerber was not finished, we had to do lots and lots of re-work in order to make them work at all.
160
161 1 laforge
== License ==
162
163
Schematics and Gerber files are released under the Creative Commons CC-BY-SA (Share Alike / Attribution) license.
164
165
== Sales ==
166
167 12 laforge
Sales started at the 2011 CCC Camp and the hardware can be bought through the web-shop of sysmocom GmbH ([http://shop.sysmocom.de/])
168 7 laforge
169
== Credits ==
170
171 8 laforge
 * Harald Welte
172
  * Original project idea, schematic design
173
  * Olimex SAM7-P64 based prototypes
174
  * Firmware and host software
175
 * Kevin Redon
176
  * KiCAD work on schematics, footprints and routing
177
  * Soldering of some prototypes
178
 * [http://sysmocom.de/ sysmocom - systems for mobile communications GmbH]
179
  * funding for hardware prototyping (PCB, components, etc)
180
 * Christian Daniel
181
  * post-production flashing + debugging, design + test of v1.0p rework
Add picture from clipboard (Maximum size: 48.8 MB)