Project

General

Profile

Serial Cable » History » Version 27

unrznbl, 10/11/2018 03:06 PM
the "this message" link was broken for some reason. Just in case I copied the tests inline and fixed the mailing list URL as well

1 5 vogelchr
The Calypso phones typically all have a serial port @ 3.3V levels on the 2.5mm earphone jack.
2 1 laforge
3 26 laforge
Those cables are sometimes called _T191 unlock cable_ and come in a variety of fashions, such as
4
* Real RS232 on DB9
5
* with integrated USB serial converter chips
6
** PL2303 (cheap, only standard baud rates)
7
** FT232 (expensive, non-standard baud rates, the voltage levels are set with the pin VCCIO that you can measure)
8
** [[HardwareCP210xTutorial|CP2102]] (medium price, non-standard baud rates)
9 1 laforge
10
You can either buy ready-made cables, e.g. at:
11 26 laforge
* USB variant
12
** "gsmliberty.net":http://www.gsmliberty.net/shop/motorola-t191-dataunlock-cable-p-1252.html
13
** "fonefunshop.co.uk":http://www.fonefunshop.co.uk/datacables/motorola.htm
14
** "gsmserver":http://gsmserver.com/cables/Smart-Clip_Cable_for_Compal_Chi_Mei_based_phones.php
15
** "sysmocom shop":http://shop.sysmocom.de/products/cp2102-25 (CP2102 for burst_ind!)
16
** "sysmocom shop":http://shop.sysmocom.de/products/cable-t191-pl2303 (PL2303)
17
* RS232 variant, you still need a RS232 serail port or separate USB/RS232 adapter
18
** "cellcorner.com":http://www.cellcorner.com/xshp/unlock-phone-codes/motorola-t190-t191-t193-unlock-data-cable.html
19
* USB/RS232 cable 
20
** "tronisoft.com":http://www.tronisoft.com/cat_usbtoserial.php (FTDI and Prolific cables)
21 1 laforge
22 13 tsaitgaist
Or you can build it yourself (detailed instructions can be found on the net, search for "t191 unlock cable" or the like).
23 18 laforge
24 26 laforge
* TxD is at the tip of the plug (PC to Device)
25
* RxD is at the middle contact (Device to PC)
26
* GND is the outer contact
27 10 laforge
28
29 26 laforge
h2. Hints and Warnings
30 5 vogelchr
31 26 laforge
* If you don't use a 3.3V (low voltage TTL, LVCMOS) serial port you can fry your phone! (internally, it connects to the IO-pins of the baseband processor which run at 2.8V). *Don't connect directly to your PCs serial port (running at +/- 12V!).*
32
* If your development system is virtualized (runs inside VMware, Virtualbox, Parallels...) the connections can be unreliable (the loader protocol is timing critical).
33
* Your safest bet is a USB cable with a FTDI chip (FTx232) configured for operation at 3.3V connected to a machine running Linux natively. Prolific chips (PL2303) also work, but are far less reliable.
34
35
36
h3. Testing/Debugging the Cable
37
38 27 unrznbl
From "this message":http://lists.osmocom.org/pipermail/baseband-devel/2011-August/002421.html are the following two test procedures for the Phone to PC and PC to Phone connections.
39 1 laforge
40 27 unrznbl
> When i test my cables i prefer the following test procedure:
41
> 
42
> Plug the cable in, use a terminal program (e.g. gtkterm or cu) to 
43
> connect at 115200 baud. Press the powerbutton. You should now see 
44
> someting like fmttool error and some garbeled chars. This indicates that 
45
> the Connection from the Phone to the PC works properly.
46
> 
47
> Then unplug the cable, short circuit the last 2 pins on the audio jack 
48
> and type some chars. The chars should be echoed on the screen. This 
49
> verifies the correct function of the sender (PC to the Phone)
50
> 
51
> When these 2 tests are passing properly you can be sure that your cable 
52
> is working properly. 
53 26 laforge
54
h3. non-standard higher baud-rates (burst_ind branch)
55
56 1 laforge
If you want to communicate with the Calypso at baudrates higher than 115200 bps, you'll have to resort to non-standard baudrates. 
57
58 26 laforge
These are not supported by cheap PL2303 based cables and only work with a FTDI or [[HardwareCP210xTutorial|CP210x]] based USB adapter cable.
59 22 laforge
60 26 laforge
61
h3. Using [[OsmocomBB]] with a Bus Pirate
62
63 18 laforge
 
64
To connect to your phone using a Bus Pirate, you have to put the bp into "Bridge Mode", that is a transparent bridge between whatever you connect to the bp and the serial terminal it provides.
65
Because timing is _very_ critical when working with the phone's boot loader, you have to set the bp in "Bridge Mode with Flow Control". Thus, the code can use exact timing and would not have to wait for serial port timeouts.
66 19 laforge
 
67 20 steve-m
To do so, first disconnect your bus pirate if it already is in bridge mode.
68
Then connect it to your computer and open a serial terminal.
69
At the "HiZ>" prompt, enter the following keys exactly as described:
70
        1. m    -	to change the mode
71
        2. 3    -	for UART mode
72
        3. 9    -	for 115200 bps
73
        4. 1    -	for 8 bits of data, no parity control
74
        5. 1    -	for 1 stop bit
75
        6. 1    -	for Idle 1 receive polarity
76
        7. 2    -	for Normal output type
77
 
78 26 laforge
Then you are at the "UART>" prompt. Enter "(0)" to show available macros:
79
80
UART>(0)
81
82
 0.Macro menu
83
84
 1.Transparent bridge
85
86
 2.Live monitor
87
88
 3.Bridge with flow control
89
90 20 steve-m
 
91
Now enter "(3)" to enter bridge mode with flow control, confirm your selection with "y" and you're ready to go!
92
 
Add picture from clipboard (Maximum size: 48.8 MB)