comparison doc/CP2102-EEPROM-tools @ 101:ba741a1af0e3

doc/CP2102-EEPROM-tools: article started
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 28 Sep 2023 06:35:39 +0000
parents
children 4f72e09fb698
comparison
equal deleted inserted replaced
100:29bff463402e 101:ba741a1af0e3
1 The present package includes a set of command line tools for reading and
2 modifying the EEPROM content of Silabs CP2102 USB-serial adapters. These tools
3 have been developed because:
4
5 * CP2102 adapters hold significance in FreeCalypso family of projects: it is
6 the most common USB-serial chip in cables that connect from USB to the headset
7 jack serial port of Motorola C1xx and Openmoko GTA01/02 phones, and the same
8 chip also appears inside the legendary Pirelli DP-L10 phone.
9
10 * Classic CP2102 (as opposed to CP2102N) requires EEPROM reprogramming to switch
11 between 230400/460800/921600 and 203125/406250/812500 baud rates.
12
13 * The original Python tools that were once popularized via OsmocomBB wiki are
14 an enormous pain for those of us who aren't interested in Python view of the
15 world, plus dependency hell.
16
17 The present tools support only classic CP2102, not CP2102N or CP2105. The
18 latter chips aren't supported because:
19
20 * CP2102N does not remap baud rates like classic CP2102, hence the primary
21 reason for having to delve into EEPROM configuration is eliminated;
22
23 * CP2105 cannot be casually programmed at all because it is OTP, and I am not
24 in the business of designing ZIF socket fixtures for tiny QFN packages and
25 burning through sacrificial chips.
26
27 Basic usage
28 ===========
29
30 If have a CP2102-25 USB to headset jack cable from Sysmocom, or some other
31 CP2102 adapter at the default USB ID 10C4:EA60, you can check its current baud
32 rate configuration by running:
33
34 cp2102-read-baudtab
35
36 Without any options, this command will look for a connected CP2102 device at
37 the default USB ID, read out its EEPROM and dump its 32-entry baud rate table.
38 Looking at this printed table, you can immediately tell if your adapter is
39 currently configured for 230400/460800/921600 or for 203125/406250/812500 baud.
40
41 To program the EEPROM for GSM baud rates (203125/406250/812500 bps), run this
42 command:
43
44 cp2102-update-eeprom -b gsm
45
46 To program the EEPROM for "standard" baud rates (230400/460800/921600 bps), run
47 this command:
48
49 cp2102-update-eeprom -b std
50
51 After this programming operation, unplug and replug the USB device - see
52 Replug-after-EEPROM-write article for more info.