Provided by: scmxx_0.9.0-2.4_amd64 bug


       scmxx - exchange data with your Siemens mobile phone


       scmxx  [--device  device]  [--baud  baudrate]  [--quiet]  [--verbose]  [--reset] {--info |
       --set-time | --mem-info | --lock-info | --lock lock {--enable |  --disable}  |  --set-smsc
       --number {number | name} }

       scmxx  [--device  device]  [--baud  baudrate] [--quiet] [--verbose] [--reset] [--out file]
       [--pipe pipe] {--remove  |  --send  |  --get}  [--binary]  [--mem  memory]  [--slot  slot]

       scmxx  [--device  device]  [--baud  baudrate] [--quiet] [--verbose] [--reset] [--out file]
       [--pipe pipe] [--pin PIN] {--remove | --send | --get}  [--pbook]  [--mem  memory]  [--slot
       slot] [--text text] [ --number {number | name} ] [file...]

       scmxx  [--device  device]  [--baud  baudrate] [--quiet] [--verbose] [--reset] [--out file]
       [--pipe pipe] {--remove | --send | --get} [--sms] [--mem  memory]  [--slot  slot]  [--text
       text] [ --number {number | name} ] [--direct] [--flash] [--srr] [--unicode] [file...]

       scmxx [--help] [--version]


       SCMxx  can  copy  files  to  and from a Siemens mobile phone and also delete stored files.
       Files can read from a given file or through stdin and stored to a given  file  or  stdout.
       SMS  can also be directly sent or received without storing in the mobile phone.  SCMxx was
       tested with several mobile phones manufactured by Siemens (only S25 and later).


       --device (-d)
              specify another  than  the  compiled  in  device.  This  overwrites  the  SCMXX_TTY
              environment variable and the compiled-in value. For linux systems, this may be e.g.
              /dev/ttyS0 for  serial  connections,  /dev/ircomm0  for  infrared  connections  and
              /dev/rfcomm0  for  bluetooth  connections.  If native bluetooth support is compiled
              in,   you   can    also    use    the    format    bt://[xx:xx:xx:xx:xx:xx]:n    or
              bluetooth://[xx:xx:xx:xx:xx:xx]:n  to specify a bluetooth address xx:xx:xx:xx:xx:xx
              and the bluetooth channel n (default is 1).  The  channel  is  optional,  omit  the
              colon in this case, too.

       --baud (-b)
              specify  the  device's  speed.  Valid values are dependent on the system but may be
              9600, 19200, 38400, 57600 or 115200. The default value is 19200. The S25  and  *35i
              only  work  at the 19200, all later phones also work at full serial speed. Infrared
              connections may be an exception to these rules (dependent on the  infrared  donle).
              This overwrites the SCMXX_BAUD environment variable and the compiled-in value.

       --out (-o)
              specify a file to use. When getting binary files with "all", the slot number, a dot
              and the filetype are appended.  When sending or deleting, this parameter has no use
              but  the  last  parameters  that  should be valid files.  Stdout must be explicitly
              selected with the dash ("-"), by default nothing is written  to  stdout.  There  is
              nothing appended to "-" when getting multiple files.

       --pipe (-p)
              specify  a pipe to another program. When getting with "all", every file is piped to
              this programs on its own (only for --binary and --sms).

       --quiet (-q)
              decreases verbosity by 1

       --pin  use this option if a PIN code is required for access

       --verbose (-v)
              increases verbosity by 1

              try to reset the phone, so it gets accessible again. It may happen that  the  phone
              does  not  answer  on  the  serial  interface  anymore,  especially with a previous
              user-interrupted file transfer. This simply blindly sends some special characters.

       --help (-h)
              print the help message

              print the version number

       --remove (-r)
              removes an entry from the phone.  When specified with --sms and  --get,  this  will
              get'n'delete.  When specified with --sms and --send, this will send'n'delete.

       --get (-g)
              get  an  entry and save it to a file.  When specified with --sms and --remove, this
              will get'n'delete.  When specified with --sms and --send, this will get'n'send.

       --send (-s)
              sends a file to the phone.  When sending sms, you might want to take a look at  the
              option   --direct,  too.   When  specified  with  --sms  and  --remove,  this  will
              send'n'delete.  When specified with --sms and --get, this will get'n'send.

       --info (-i)
              collect information from the phone, --mem-info can be used as a trigger to  display
              a more complex listing of the available memories

              display information about available memories and their slots and other information.
              It uses the same format as --mem=? (see below) and can also be use as a trigger for
              --info to replace the short memory listing.

              display  status of locks. It can also be use as a trigger for --info to replace the
              lock name listing.

       --lock specify a lock that you can enable or disable.   For  some  locks,  a  password  is
              needed (see --pin)

              enable e.g. a lock

              disable e.g. a lock

       --dial dial  a number (requires --number).  The program returns either after 10 seconds or
              when the call reached the other side.

              hangup all currently active calls

              synchronize time to phone. The use of tools  like  ntpdate  is  recommended  before
              using this.

              set the SMSC number (requires --number)

       --binary (-N)
              select binary file transfer mode

       --pbook (-P)
              select phonebook transfer mode

       --sms (-S)
              select short message service mode

       --mem  select  a memory to access. Slot numbers may vary depending on the selected memory.
              See the output of --info for the supported memory types.   Not  using  this  option
              triggers  the  default  behaviour (if a default behaviour was defined).  There is a
              special string "?" that outputs in the same format as --mem-info but only  for  the
              selected mode.

       --slot select  a  slot to access. See the output of --mem-info or --mem=?.  Not using this
              option triggers the default behaviour (if a default behaviour  was  defined).   The
              special  string  "all"  defines the whole range of available slots for the selected
              memory and mode and, except with --sms, cannot be used with --send.  For SMS, there
              are  four  additional  special  strings: "read", "unread", "sent" and "unsent". The
              latter two can be used with --send.  For phonebook access, there is the  additional
              special  string  "last".   When  this option is omitted with --send, scmxx tries to
              find an empty slot (that may or may not take long). Finding an empty  slot  is  not
              supported  for  phonebooks, yet.  When a slot was specified and also multiple files
              to upload, the specified slot is the starting point  to  search  for  empty  slots.
              Overwriting multiple, non-empty slots is not supported, yet, except for the special
              case "all".

       --text (-t)
              specify content text of  short  message  or  text  of  the  phonebook  entry.   For
              phonebook  entries,  the  length  limit  may  depend on the selected phonebook (see
              output of --mem-info or --mem=?).

       --number (-n)
              specify number to send the short message to or the number for the phonebook  entry.
              Note  that  the  number  may  have  a  leading '+' for international numbers. It is
              normally limited to 20 digits (without the '+') which is certainly enough.

              send/get short messages without storing in the phone. This is not  default  because
              you  will  certainly  be charged for it when sending. With direct getting, SMS that
              are not of type DELIVER are still stored on the phone (scmxx  cannot  decode  those
              messages, yet).

              send  the short message and use UCS-2 (16bit unicode) as character set.  You do not
              need to specify this parameter to enable unicode sms decoding.

              set the class0 in the data coding scheme field  that  is  normally  interpreted  as
              "immediate  display".  Not  all receiving entities support this. Note that a second
              sms of this type normally overwrites a previous one without asking! Its use is  not

       --srr  this  sets  the  StatusReportRequest  bit  in  the pdutype field of the sms pdu. It
              depends on the SMSC  if  this  is  honored.  With  some  providers,  this  produces
              additional costs!

       --sort sort  the  messages  on  printing  to  chosen  output. Possible sorting methods are
              "type", "slot" and "type,slot". "type" sorts for the type of the short message with
              an  internal  order  of unsupported types first, then SMS-SUBMIT, SMS-STATUS-REPORT
              and SMS-DELIVER. "slot" sorts for the slot of the short message.  "type,slot"  does
              sorting  like  "type" first and sorts each type like "slot". Default is to not sort
              at all (order depends on phone).

       --pin  enable pin usage. Use this only if there was an error message that asks for  a  PIN
              or  PUK. For a PIN, this is the corresponding "<PIN>", for a PUK, it is "<PUK>,<new
              PIN>". The value is only used once.   Consider  using  the  pin  file  (see  below)
              instead of this option.

              define   the   system  character  set  instead  of  using  the  return  value  from
              nl_langinfo(CODESET). This is to work around systems that do  not  support  unicode
              locales  like UTF-8 or when data from a different system with a different locale is
              used as input. Usually, you do not need this option.


       Send an bitmap file to the phone as bitmap (logo):
              scmxx --send --binary --mem="bmp" --slot=0 myfile.bmp

       Get a Bitmap from the phone and save it into a new file:
              scmxx --get --binary --mem="bmp" --slot=0 --out=myfile.bmp

       Get all unread (default on get) short messages and output to stdout:
              scmxx --get --sms --slot=unread --out=-

              scmxx -gS -o-

       Send a short message directly (not stored in the phone):
              scmxx --send --sms --direct --number=123 --text="test"

       Get a phonebook and store it to a file:
              scmxx --get --pbook --mem=SM --out=SM.pb

       Modify a specific slot (33) in phonebook memory SM:
              scmxx -sP --mem=SM --slot=33 --number=123 --text="test"


       The output of text (phonebook and sms) depends  on  the  character  set  of  your  current
       locale.  Input  is  the  same.  This  has  the  advantage of localization but may have the
       drawback that all other characters must be entered by a sequence \XXXX where X  is  a  hex
       character  (e.g. \20ac for EuroSign). This is a 16bit representative of the unicode value.
       The \XXXX is only used for output with the intention to read it again at a later time. For
       normal  output, characters that cannot be displayed in the current local are replaced by a
       '?'. Using an UTF-8 based locale will make sure that all character can be converted.   The
       newline  character  can be entered using the common \n and '\' must be masked with itself.
       In bash, this might even result in a needed input like "\\\\".


       There are additional parameters  --ignore-serial-bits  (default)  and  --keep-serial-bits.
       Use  it  only  when  you  get  no  response from the phone at all. Which setting is needed
       depends on the cable and serial port and cannot be determined automatically.

       If  you  experience  timeouts  on  the  first  command,  try  the  --start-delay=<seconds>

       Another parameter --device-timeout=<seconds> is provided for the case that your phone ever
       needs more than default value of 10 seconds to answer. Actually, this should be more  than
       enough but one never knows. The minimum value is 1, values higher than 25 mean "forever".


       The  --pin option should be used with care. The option and its argument are visible in the
       process list.


              see --device for decription

              see --baud for description


              this file serves as lookup file during short message output  (for  recipient/sender
              address)  and  for  number  aliasing  for  --number on sending a short message. The
              format is the same as a phonebook file (slot  numbers  don't  matter  but  must  be

              this  file  can  contain  long options (without the --), the arguments is seperated
              from the option name by an '='.  Any amount of spaces at beginning of line,  before
              and after the seperator are allowed.  A '#' at beginning of line marks this line as
              comment.  Examples:

                        #choose a device to access
                        device  =  /dev/ttyS0
                        #always send SMS using UCS-2

              This file is used as an alternativ to the --pin command line option. The file  MUST
              NOT  be  group  readable/writeable  or  world readable/writeable! It also MUST be a
              regular file, not a symlink. SCMxx refuses to use the file if this is not the case.
              If  a  PUK  value  is  requested  by  the phone, the corresponding PIN must also be
              defined.  The only necessary format elements are '{', '=', ';' and '}'. Spaces  and
              newlines are ignored.  The file has the following format:

                        sim 262031234567890 {
                          pin = 1234
                          puk = 12345678;
                          pin2 = 4321;
                          puk2 = 87654321;
                        device 350123456789012 {
                          type SIM {
                            pin = 0000;
                            puk = 0000;

              "sim"  sections  use  the  IMSI  as  identifier,  "device" sections use the IMEI as
              identifier (see output of --info). Since the IMSI is needed, you canNOT switch  the
              phone on with this!  The "type" sub section in the device section has the following

              SIM    device code (theft protection)

              FSIM   very first inserted SIM

              NET    network personalization

              NETSUB network subset personalization

              SP     service provider personalization

              CORP   corporate personalization


       Hendrik Sattler