FreeCalypso > hg > freecalypso-tools
annotate doc/User-phone-tools @ 448:261c1b6d936e
fcup-rvtat: added support for long strings with new fw versions
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 15 Jan 2019 06:01:04 +0000 |
parents | 3d45660f78f0 |
children | b1864e3f8fb4 |
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, |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 currently Motorola C139 and Pirelli DP-L10. In this hacked-up configuration |
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. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 Our fcup-* tools can work with such targets to a limited extent. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 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
|
80 development aid, and was never intended for production use or to support any |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 kind of end user functionality. One of its limitations is that the strings |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 that are sent to ATI via this interface are limited to 254 characters, whereas |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 sending or writing SMS in hex format requires longer strings. As a result, SMS |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 sending and writing functionality via fcup-smsend* is limited when a crippled |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 Motorola or Pirelli hw target is used instead of proper FreeCalypso hardware. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 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
|
88 the AT command target interface: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 -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
|
91 than the default 115200 bps. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 -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
|
94 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
|
95 printed on stdout. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 -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
|
98 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 -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
|
100 command interface over a dedicated UART. |
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 -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
|
103 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
|
104 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 -R and -p options interact as follows: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 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
|
108 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
|
109 to point to the serial port. |
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 -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
|
112 the serial port is named with the -p option. |
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 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
|
115 to an already running rvinterf process. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 -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
|
118 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
|
119 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 Retrieving and decoding stored SMS |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121 ================================== |
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 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
|
124 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
|
125 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
|
126 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
|
127 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
|
128 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 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
|
130 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
|
131 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
|
132 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
|
133 of stored SMS from FreeCalypso GSM devices is accomplished with our fcup-smdump |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 utility; unlike SMS sending/writing, this operation works exactly the same |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 whether the FC GSM device offers a full-featured AT command interface or only |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 AT over RVTMUX. SMS retrieval is always done in PDU mode, and the output from |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 fcup-smdump contains raw SMS PDUs in the form of long hex strings. A separate |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 utility called sms-pdu-decode then does what its name says. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 The intended mode of usage is something like this: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 fcup-smdump -d >> long-term-sms-log |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 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
|
145 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
|
146 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
|
147 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
|
148 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
|
149 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 Received message: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 XXXXXX... |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 Received message: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 XXXXXX... |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
155 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
156 Sent message: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157 XXXXXX... |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 Stored unsent message: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 XXXXXX... |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 Received message: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163 XXXXXX... |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165 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
|
166 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
|
167 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
|
168 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
|
169 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
|
170 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 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
|
172 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
|
173 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
|
174 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
|
175 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
|
176 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
|
177 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
|
178 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 * 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
|
180 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
|
181 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 * 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
|
183 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
|
184 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
|
185 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
|
186 display, and some characters may not be displayable. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 Character sets and encodings |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 ---------------------------- |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
191 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
|
192 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
|
193 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
|
194 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
|
195 modified as follows: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
196 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
197 -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
|
198 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
|
199 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
|
200 environments. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
201 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
202 -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
|
203 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
|
204 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
205 -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
|
206 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
|
207 unpacked septets. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
208 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
209 Composing and sending outgoing SMS |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
210 ================================== |
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 When used with a FreeCalypso GSM device that offers the full AT command |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
213 interface (currently only the FCDEV3B modem), the primary SMS sending/writing |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
214 tool fcup-smsend offers the following capabilities: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
215 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
216 * 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
|
217 * Sending either single or long (concatenated) SMS; |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
218 * 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
|
219 * 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
|
220 * 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
|
221 multiline, i.e., may contain embedded newlines; |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
222 * 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
|
223 - 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
|
224 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
225 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
|
226 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
|
227 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
|
228 submitted to the modem in PDU mode, the hex string that needs to be sent is |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
229 longer than what the crippled AT-over-RVTMUX mechanism can handle, thus if you |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
230 are using crippled Motorola or Pirelli hardware, you need to give the -t option |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
231 to fcup-smsend or fcup-sendmult, telling these tools to use text mode instead |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
232 of PDU mode on the AT command interface. In this text (-t) mode the following |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
233 restrictions apply: |
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 * Only single SMS can be sent, not concatenated; |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
236 * 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
|
237 * 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
|
238 * 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
|
239 drops them. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
240 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
241 But if you have to use FreeCalypso on crippled hardware, the -t option does |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
242 allow you to send GSM7-encoded SMS of the full maximum length of 160 characters. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
243 If you attempt to use PDU mode (no -t option) with an AT-over-RVTMUX back-end |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
244 (-R option), the send or write operation will fail if the generated PDU is |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
245 longer than 127 octets; the length of the generated PDU depends not only on the |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
246 message body length, but also on the length of the destination address. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
247 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
248 The invokation syntax is as follows: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
249 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
250 fcup-smsend [options] dest-addr [message] |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
251 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
252 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
|
253 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
|
254 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
|
255 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
|
256 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
|
257 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
|
258 stripped before SMS encoding. |
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 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
|
261 options listed earlier: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
262 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
263 -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
|
264 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
|
265 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
|
266 but the -c option enables the possibility of sending |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
267 concatenated SMS. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
268 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
269 -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
|
270 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
|
271 be either decimal or hexadecimal with 0x prefix. |
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 -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
|
274 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
|
275 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
|
276 -q suppresses this additional output. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
277 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
278 -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
|
279 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
|
280 other restrictions listed above. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
281 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
282 -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
|
283 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
|
284 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
|
285 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
|
286 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
|
287 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
|
288 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
|
289 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
|
290 Euro currency symbol allowed by GSM 03.38 encoding. |
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 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
|
293 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
|
294 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
|
295 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
296 -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
|
297 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
|
298 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
|
299 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
|
300 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
301 -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
|
302 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
|
303 responses with message storage indices are forwarded to stdout. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
304 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
|
305 string or omitted altogether. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
306 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
307 Concatenated SMS reference numbers |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
308 ---------------------------------- |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
309 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
310 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
|
311 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
|
312 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
|
313 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
|
314 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
|
315 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
|
316 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
|
317 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
|
318 be random in any kind of cryptographically secure sense. |
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 fcup-smsendmult |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
321 =============== |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
322 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
323 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
|
324 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
|
325 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
|
326 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
|
327 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
|
328 stdin, and each input line produces a new message. |
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 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
|
331 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
|
332 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
|
333 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
|
334 line, each input line must have the following format: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
335 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
336 <dest addr><white space><message body> |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
337 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
338 -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
|
339 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
340 If you have to use FreeCalypso on crippled hardware, fcup-smsendmult -t can be |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
341 a viable alternative to sending concatenated SMS, as each message in the batch |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
342 can be up to the maximum limit of 160 characters. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
343 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
344 fcup-smsendpdu |
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 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
347 This utility sends out SMS PDUs that have been prepared externally; it only |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
348 works in PDU mode, which limits its usefulness to high-end FreeCalypso hardware |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
349 with a full AT command interface. The PDUs to be sent out are read from stdin, |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
350 one long hex string PDU per line; one can send either a single message or a |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
351 batch. Because the destination address and all content details are encoded in |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
352 the PDU, the tool does not care if the messages are going to the same recipient |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
353 or to different recipients, nor does it care if they constitute a concatenated |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
354 SMS transmission or not. -w and -W options work the same way as in fcup-smsend |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
355 and fcup-smsendmult. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
356 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
357 fcup-smwrite |
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 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
360 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
|
361 the following ways: |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
362 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
363 * 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
|
364 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
|
365 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
|
366 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
367 * 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
|
368 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
|
369 unsent" state. |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
370 |
3d45660f78f0
doc/User-phone-tools article written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
371 * 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
|
372 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
|
373 indicate what state each message should be written in. |