annotate doc/User-phone-tools @ 619:f82551c77e58

libserial-newlnx: ASYNC_LOW_LATENCY patch reverted Reports from Das Signal indicate that loadtools performance on Debian is about the same as on Slackware, and that including or omitting the ASYNC_LOW_LATENCY patch from Serg makes no difference. Because the patch in question does not appear to be necessary, it is being reverted until and unless someone other than Serg reports an actual real-world system on which loadtools operation times are slowed compared to the Mother's Slackware reference and on which Slackware-like performance can be restored by setting the ASYNC_LOW_LATENCY flag.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 27 Feb 2020 01:09:48 +0000
parents b5235f8240b9
children a43c5dc251dc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 FreeCalypso User Phone Tools are a new software addition to the FreeCalypso
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 family. These tools are programs that run on a Unix host computer such as a
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 GNU/Linux PC or laptop and communicate with a FreeCalypso phone or modem via
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 the standard AT command interface, rather than any of the formerly proprietary
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 interfaces specific to TI's internal architecture. The following tools are
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 currently available:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 fcup-at Issues an arbitrary AT command given on the command line.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 fcup-settime Issues AT+CCLK command to the target to set its clock to the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 host computer's notion of local time.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 fcup-smdump Retrieves a dump of SMS records (received, sent or stored
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 messages) from the FC device's SMS storage (currently SIM
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 storage; ME storage may be implemented in the future),
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 optionally deleting them from the severely space-limited
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 SIM/ME storage afterward.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 fcup-smsend* Tools for sending outgoing SMS from a host computer through a
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 FreeCalypso phone or modem and/or writing such outgoing SMS
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 into the FC device's SMS storage.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 fcup-smwrite Debug and development tool: writes arbitrary message records
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 into the FC device's SMS storage (currently SIM storage) in any
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 of the possible 4 states, with arbitrary incoming or outgoing
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 SMS PDU content.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 Because these tools communicate with the target via standards-defined AT
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 commands, in theory they ought to work with any AT-command-speaking 3GPP phone
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 or modem and not just our own FreeCalypso. However, experience has shown that
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 in the case of the common proprietary implementations, practice does not match
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 theory: when I (Mychaela) tried these same AT commands against a random
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 off-the-shelf proprietary modem (Huawei E303 USB stick modem for 3G), the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 following problems were seen:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 * The essential AT+CMGL=4 command for retrieving the full set of SMS records
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 from SIM storage in PDU mode appears to be broken: all I got was a hang.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 Its text mode counterpart AT+CMGL="ALL" produces incomplete output.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 * Qualcomm/Huawei's implementation of the AT command interface does not allow
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 AT+CSCS to be set to "HEX"; our fcup-smdump implementation uses this setting
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 so that the phonebook names returned along with SMS PDUs in the +CMGL
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 responses can be parsed reliably no matter what weird characters they might
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 contain.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 * Setting AT+CSCS to "8859-1" is not supported either; this setting is used by
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 our fcup-smsend and fcup-smsendmult tools when sending in text mode.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 * Sending outgoing SMS with fcup-smsend in PDU mode (which does not touch
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 AT+CSCS) works in that the message goes out, but the tool complains afterward
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 because the echo after the ^Z is different from what our tools expect.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 Because of these quirks, our FC User Phone Tools officially work only with our
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 own FreeCalypso phones and modems, and are not expected to work against various
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 proprietary implementations. Let us not forget that the broken and buggy nature
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 of the common proprietary implementations is the very reason why we need
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 FreeCalypso in the first place.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 Target interface options
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 ========================
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 Our fcup-* tools can communicate with the AT-command-speaking target in one of
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 two ways:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 * The default is the standard AT command interface over a dedicated UART. As
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 of this writing, the only FreeCalypso device that provides a full-featured AT
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 command interface of this kind is our FCDEV3B modem, but the ultimate goal of
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 the project is to build our own end user phone handset (a Libre Dumbphone)
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 that will also provide a full-featured AT command interface on its USB port
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 via a built-in CP2102 or FT232R chip.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 * As a dirty hack, one can run FreeCalypso GSM fw on some alien hw targets,
449
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
73 currently Motorola C1xx and Pirelli DP-L10. In this hacked-up configuration
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 there is no dedicated UART available for a standard AT command interface, but
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 there is a hack that allows a limited subset of AT commands to be passed over
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 the RVTMUX binary packet interface provided by the running FreeCalypso GSM fw.
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
77 Our fcup-* tools can work with this alternate target interface option and
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
78 thereby support these crippled targets.
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 The AT-over-RVTMUX mechanism was originally invented back in 2015 as a
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 development aid, and was never intended for production use or to support any
449
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
82 kind of end user functionality. One of the limitations of its original
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
83 incarnation was that the strings that are sent to ATI via this interface were
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
84 limited to 254 characters, whereas sending or writing SMS in hex format
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
85 requires longer strings. As of early 2019, this limitation has been lifted:
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
86 our Magnetite and Selenite firmwares from 20190109 onward support an extended
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
87 version of our AT-over-RVTMUX hack that allows longer strings to be sent in
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
88 pieces, and the present version of our FC User Phone Tools suite will send the
b1864e3f8fb4 CHANGES & doc/User-phone-tools: documented AT-over-RVT long strings
Mychaela Falconia <falcon@freecalypso.org>
parents: 388
diff changeset
89 strings it generates via this extended mechanism whenever they exceed the old
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
90 254 character limit. The new mechanism works correctly starting with the
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
91 20190128 firmware release for modem products and the 20190129 fw release for
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
92 Mot C1xx phones, thus when the present version of FC User Phone Tools is used
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
93 to communicate with our current firmwares, both target interface options provide
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
94 equivalent functionality on all supported targets.
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 All fcup-* tools take the following common command line options for selecting
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 the AT command target interface:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 -B baud Valid only when -p is also given; selects a different baud rate
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 than the default 115200 bps.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 -n Dry run debug mode with no target interface at all: the AT
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 commands which would otherwise be sent to the target are simply
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 printed on stdout.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106 -p ttyport Names the serial port to be used to talk to the target.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 -R Use the AT-over-RVTMUX interface instead of the standard AT
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 command interface over a dedicated UART.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 -X program Use the specified external program as the AT target
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 communication back-end; read the source code for the details.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 -R and -p options interact as follows:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 Neither -R The standard dedicated AT command interface is used;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 nor -p FC_GSM_DEVICE= environment variable needs to be set
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 to point to the serial port.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 -p only The standard dedicated AT command interface is used;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 the serial port is named with the -p option.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 -R only AT-over-RVTMUX interface is used; the fcup-* tool connects
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 to an already running rvinterf process.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 -R and -p AT-over-RVTMUX interface is used; a new rvinterf process
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 is launched to talk RVTMUX on the specified serial port.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 Retrieving and decoding stored SMS
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 ==================================
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 As of this writing, our current FreeCalypso GSM firmware supports only SIM
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 storage for SMS, i.e., there is no working mechanism currently for storing SMS
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 records (received and sent messages) in the phone's or modem's own flash file
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135 system. The capacity of this SIM SMS storage is determined by the SIM issuer,
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 but it is typically quite limited, on the order of 20 to 30 messages.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 The model adopted for FreeCalypso is that incoming (and possibly saved outgoing)
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139 messages initially accumulate in the SIM storage as they come in, and then the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 user periodically transfers them to her larger host computer, simultaneously
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 deleting them from the SIM storage to reclaim the limited space. The retrieval
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 of stored SMS from FreeCalypso GSM devices is accomplished with our fcup-smdump
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
143 utility; like all SMS operations with the current tools+firmware combination,
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
144 this operation works exactly the same whether the FC GSM device offers a full-
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
145 featured AT command interface or only AT over RVTMUX. SMS retrieval is always
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
146 done in PDU mode, and the output from fcup-smdump contains raw SMS PDUs in the
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
147 form of long hex strings. A separate utility called sms-pdu-decode then does
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
148 what its name says.
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 The intended mode of usage is something like this:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152 fcup-smdump -d >> long-term-sms-log
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 The -d option to fcup-smdump tells it to delete the retrieved messages from the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 SIM or future ME storage; this option should only be used when the output is
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 redirected into some kind of longer-term storage. In the above model the file
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157 named long-term-sms-log becomes what its name says as new messages retrieved
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 from the FC GSM device get added to it; the format will look like this:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 Received message:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 XXXXXX...
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 Received message:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164 XXXXXX...
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 Sent message:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167 XXXXXX...
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 Stored unsent message:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170 XXXXXX...
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 Received message:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 XXXXXX...
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175 Each of the "XXXXXX..." lines will be a long hex string giving an SMS PDU. The
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 idea is that the complete record of all received and sent messages should be
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177 stored on the user's big computer in raw PDU form, rather than decoded, and the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 decoding utility sms-pdu-decode should be invoked by the user (with the message
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 log file as input) as needed for reading these messages.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181 The message decoding utility sms-pdu-decode does its best to decode and show
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 everything without dropping any bits: in addition to the actual decoded message
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 characters and the From/To address (the "end user" content of the message), it
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184 decodes and shows the SC address, the first octet, the MR octet for outgoing
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 messages, PID and DCS octets, the SC timestamp or the validity period fields,
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 and the UDH bytes if present. However, some bits can still be lost in the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 decoding, which is why it is important to archive messages in the raw PDU form:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
188
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
189 * Padding bits used to round the From/To address and septet-based user data to
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
190 an octet boundary and to round any UDH to a septet boundary are not decoded.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
191
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
192 * If the user data portion of the message is 8-bit or compressed data (per the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
193 DCS octet), it is shown as a raw hex dump, which is lossless, but if it is
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
194 GSM7 or UCS-2 text (GSM 03.38 character encodings), the characters are
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
195 converted to the user's character set (plain ASCII only by default) for
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
196 display, and some characters may not be displayable.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
197
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
198 Character sets and encodings
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
199 ----------------------------
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
200
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
201 By default, sms-pdu-decode only emits 7-bit ASCII characters in its output; any
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
202 GSM7 or UCS-2 characters which fall outside of this plain ASCII repertoire are
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
203 displayed as the '?' error character and the presence of such decoding errors
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
204 is indicated in the Length: header. This conservative default behaviour can be
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
205 modified as follows:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
206
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
207 -e option extends the potential output character repertoire from 7-bit ASCII to
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
208 8-bit ISO 8859-1. Any 8859-1 high characters are emitted as single bytes,
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
209 i.e., are NOT encoded in UTF-8 - this option is intended for non-UTF-8
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
210 environments.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
211
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
212 -u option extends the potential output character repertoire to the entire Basic
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
213 Multilingual Plane of Unicode, and changes the output encoding to UTF-8.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
214
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
215 -h option causes the user data portion of every message to be displayed as a
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
216 raw hex dump; in the case of GSM7-encoded messages, this hex dump shows the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
217 unpacked septets.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
218
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
219 Composing and sending outgoing SMS
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
220 ==================================
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
221
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
222 When used in the default PDU mode (which now works on all targets with our
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
223 current firmware and tools), the primary SMS sending/writing tool fcup-smsend
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
224 offers the following capabilities:
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
225
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
226 * Sending outgoing messages in either GSM7 or UCS-2 encoding;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
227 * Sending either single or long (concatenated) SMS;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
228 * Message body input in ASCII, ISO 8859-1 or UTF-8;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
229 * Message body input either on the command line or on stdin;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
230 * Any messages sent through this tool (single or concatenated) may be
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
231 multiline, i.e., may contain embedded newlines;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
232 * Messages sent in GSM7 encoding can contain ASCII characters [\]^ and {|}~
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
233 - the tool is smart enough to do the necessary escape encoding.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
234
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
235 The default and preferred AT command interface mode for sending/writing SMS is
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
236 PDU mode, which works great when the GSM device provides a proper AT command
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
237 interface. However, when a message of maximum or near-maximum length is being
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
238 submitted to the modem in PDU mode, the hex string that needs to be sent is
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
239 quite long, and at the time when our FC User Phone Tools were first designed
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
240 and written, our AT-over-RVTMUX mechanism could not handle such long strings.
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
241 Because we sought to have at least limited SMS sending and writing support for
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
242 crippled Motorola and Pirelli targets, we also implemented text mode support in
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
243 fcup-smsend and fcup-smsendmult, enabled with the -t option. In this text (-t)
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
244 mode the following restrictions apply:
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
245
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
246 * Only single SMS can be sent, not concatenated;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
247 * Only GSM7-encoded messages can be sent, not UCS-2;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
248 * No multiline messages can be sent, i.e., no newlines in the message body;
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
249 * ASCII characters [\]^ and {|}~ won't be sent correctly - GSM 07.05 text mode
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
250 drops them.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
251
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
252 Now that we have extended our AT-over-RVTMUX mechanism to support longer strings
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
253 and gained full support for PDU mode on all targets, the above -t mode is no
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
254 longer necessary for any use case, as the default PDU mode is a proper superset
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
255 in functionality. However, support for this -t mode has been retained, as
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
256 removing software functionality for no good reason is not the way of FOSS.
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
257
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
258 The invokation syntax is as follows:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
259
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
260 fcup-smsend [options] dest-addr [message]
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
261
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
262 The destination address must be given on the command line; the address digits
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
263 may be optionally followed by a comma and an address type byte, either decimal
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
264 or hexadecimal with 0x prefix. The default address type is 0x91 if the number
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
265 begins with a '+' or 0x81 otherwise. If the message body is given on the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
266 command line, it must be given as a single argument; if no message body argument
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
267 is given, the message body will be read from stdin. Any trailing newlines are
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
268 stripped before SMS encoding.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
269
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
270 The following options are supported, in addition to the common target interface
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
271 options listed earlier:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
272
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
273 -c Enables concatenated SMS. Concatenated SMS will be sent only
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
274 if the message body exceeds 160 GSM7 or 70 UCS-2 characters,
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
275 otherwise plain SMS will be sent whether -c is given or not -
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
276 but the -c option enables the possibility of sending
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
277 concatenated SMS.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
278
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
279 -C refno Enables concatenated SMS like -c, but also explicitly sets the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
280 concatenated SMS reference number to be used. The number can
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
281 be either decimal or hexadecimal with 0x prefix.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
282
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
283 -q Concatenated SMS quiet mode. If -c is given without -q, the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
284 tool prints a message on stdout indicating whether the message
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
285 was sent as single or concatenated, and in how many parts.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
286 -q suppresses this additional output.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
287
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
288 -t Use text mode instead of PDU mode on the AT command interface.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
289 This option is incompatible with -c and with -U, and introduces
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
290 other restrictions listed above.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
291
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
292 -u By default, if the message body input contains any 8-bit
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
293 characters, they are interpreted as ISO 8859-1. With -u they
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
294 are interpreted as UTF-8 instead. This option is only relevant
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
295 for GSM7 output encoding, and it is implemented by converting
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
296 the input first from UTF-8 to 8859-1, and then from 8859-1 to
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
297 GSM7 - thus all UTF-8 input characters must fall into the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
298 8859-1 repertoire, and it is not currently possible to send
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
299 GSM7-encoded messages containing the few Greek letters or the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
300 Euro currency symbol allowed by GSM 03.38 encoding.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
301
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
302 -U Send message in UCS-2 encoding instead of GSM7. Any 8-bit
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
303 characters in the message body input are interpreted as UTF-8,
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
304 and the entire Basic Multilingual Plane of Unicode is allowed.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
305
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
306 -w By default the outgoing message is sent out on the GSM network
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
307 with the AT+CMGS command. With this -w option, the message is
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
308 first written into SIM or future ME SMS storage with AT+CMGW,
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
309 then sent out on the GSM network with AT+CMSS.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
310
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
311 -W Write only, not send: the message is written into storage with
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
312 AT+CMGW and no further action is taken. The modem's +CMGW:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
313 responses with message storage indices are forwarded to stdout.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
314 With this option the destination address argument can be a null
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
315 string or omitted altogether.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
316
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
317 Concatenated SMS reference numbers
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
318 ----------------------------------
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
319
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
320 Every concatenated SMS transmission needs a reference number, and this number
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
321 needs to increment from one concatenated SMS to the next, to help message
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
322 recipients sort out which is which. If the reference number is not given
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
323 explicitly with -C, fcup-smsend creates (opens with O_RDWR|O_CREAT) a file
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
324 named .concat_sms_refno in the invoking user's $HOME directory; automatically
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
325 incrementing reference numbers are maintained in this file. The initial seed
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
326 is an XOR of all bytes of the current time returned by gettimeofday(2),
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
327 followed by simple linear incrementing; these reference numbers do not need to
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
328 be random in any kind of cryptographically secure sense.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
329
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
330 fcup-smsendmult
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
331 ===============
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
332
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
333 As an alternative to sending concatenated SMS, one can use the fcup-smsendmult
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
334 utility to send several single (no UDH) messages in one batch. This utlity
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
335 supports both text and PDU modes (PDU mode is still the preferred default when
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
336 it can be used), and when PDU mode is used, it supports both GSM7 and UCS-2
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
337 output encodings just like fcup-smsend. The messages to be sent are read from
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
338 stdin, and each input line produces a new message.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
339
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
340 The entire batch of messages can be sent to a single recipient, or each message
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
341 in the batch can have its own individual destination address. If the
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
342 destination address is given on the command line, each input line read from
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
343 stdin is just a message body; if no destination address is given on the command
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
344 line, each input line must have the following format:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
345
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
346 <dest addr><white space><message body>
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
347
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
348 -t, -u, -U, -w and -W command line options are unchanged from fcup-smsend.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
349
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
350 This fcup-smsendmult method of sending batched SMS was originally envisioned as
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
351 an alternative to concatenated SMS for crippled hw targets that couldn't support
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
352 sending SMS in PDU mode, but that limitation has now been lifted. Because we
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
353 do not remove already-implemented functionality for no good reason, the tool
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
354 currently remains in search of new potential use cases.
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
355
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
356 fcup-smsendpdu
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
357 ==============
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
358
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
359 This utility sends out SMS PDUs that have been prepared externally; it only
450
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
360 works in PDU mode - originally it was limited to high-end FreeCalypso hardware
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
361 with a full AT command interface, but now we've got PDU mode working on all
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
362 targets. The PDUs to be sent out are read from stdin, one long hex string PDU
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
363 per line; one can send either a single message or a batch. Because the
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
364 destination address and all content details are encoded in the PDU, the tool
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
365 does not care if the messages are going to the same recipient or to different
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
366 recipients, nor does it care if they constitute a concatenated SMS transmission
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
367 or not. -w and -W options work the same way as in fcup-smsend and
b5235f8240b9 doc/User-phone-tools: update for SMS PDU mode working on all targets
Mychaela Falconia <falcon@freecalypso.org>
parents: 449
diff changeset
368 fcup-smsendmult.
388
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
369
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
370 fcup-smwrite
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
371 ============
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
372
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
373 This utility is a debug and development tool; it differs from fcup-smsendpdu in
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
374 the following ways:
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
375
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
376 * fcup-smsendpdu can send messages out with AT+CMGS, write them into memory
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
377 with AT+CMGW, or do a write-then-send sequence (-w option) with AT+CMGW
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
378 followed by AT+CMSS. fcup-smwrite only issues AT+CMGW commands.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
379
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
380 * fcup-smwrite passes a second argument to AT+CMGW that sets the message state
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
381 to any of the possible 4 values; fcup-smsend* -W put them in the "stored
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
382 unsent" state.
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
383
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
384 * The input to fcup-smsendpdu is just PDU hex strings; the input to
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
385 fcup-smwrite needs to have the same format as fcup-smdump output in order to
3d45660f78f0 doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
386 indicate what state each message should be written in.