gigacontr(8) Linux System Administration gigacontr(8)
gigacontr - access to the Gigaset devices and drivers
gigacontr command [parameters] ...
gigacontr sends commands to the Gigaset device driver or the Gigaset
device and prints information it receives from the driver or from the
The commands are executed in the order in which they appear on the com-
The following commands may be given to gigacontr.
These commands control the operation of gigacontr or the driver itself.
Nothing is sent to the device.
Print a summary of the command-line usage of gigacontr and a
short description of all commands, and exit. All other commands
Print just a summary of the command-line usage of gigacontr and
exit. All other commands are ignored.
Supress error messages.
Reset log level to default.
Log device I/O to stderr.
Log debug information to stderr.
Use device file file to communicate with the driver. Default is
Pause for seconds seconds.
Sets the driver's operation mode to one of:
config send config mode commands to an M10x
cid send commands with CID to the base
unimodem send commands without CID to the base
isdn yield the device to the ISDN subsystem
locked claim the device from the ISDN subsystem
This is normally done automatically by gigacontr and meddling
with it can introduce malfunctions, but it might be helpful for
COMMANDS FOR M10X
These commands only work with an M101 or M105 DECT data adapter. Most
of them need an argument adapter which is either 0 (local adapter) or 1
(remote adapter). The adapter types `fixed part' (base) and `portable
part' are abbreviated as `FP' and `PP'.
Print the device id.
Print the firmware version.
Print the hardware version.
Print the vendor name.
Print name of the adapter.
Print list of registered partners of adapter.
Print list of connection states of registered partners of
Print index of the current partner in the adapter list.
Set the current partner in the adapter list to index.
Print the connection state. (0: no contact, 1: contact)
Occupy the cordless connection channel if available.
Release the cordless connection channel.
Print the auto release timer values for all partner adapters of
Set the auto release timer to seconds.
Print the signal strength (0-100).
Print the signal quality (0-100).
Note: Signal strength and quality readings aren't available
until some time after switching the adapter to configuration
mode. Precede with another M10x command followed by --sleep 1
for best results, e.g.:
gigacontr --mfwver 0 --sleep 1 --mfield --mquality
Print flow control setting.
Set flow control.
index flow control setting
4 XON/XOFF (transmit only)
5 XON/XOFF (receive only)
6 XON/XOFF and RTS/CTS combined
With setting 4, the M10x generates XON/XOFF characters for out-
bound flow control but does not process them for inbound flow
With setting 5, the M10x processes XON/XOFF characters for
inbound flow control but does not generate them for outbound
Print data format.
Set data format:
index data format
10 last command
Print local handshake setting (0: off, 1: on).
Set local handshake (0: off, 1: on).
Print operation mode.
Set operation mode:
index operation mode
0 direct connection
1 AT (PC)
2 AT (modem)
3 AVM (PC)
4 AVM (modem)
5 controlled by remote
Note: Mode 5 cannot be entered or left by the --msetmode com-
Print baud rate.
Set baud rate:
index baud rate
Sets the break characters of an M105's internal serial adapter
to chars which must specify exactly six characters, possibly
encoded as in a C string. (\nnn, \xnn, etc.)
Get adapter type (0: FP, 1: PP).
Set adapter type to FP (type=0) or PP (type=1).
Switch to registration mode, allowing a PP to register. Only
valid if adapter type is FP. Registration mode is automatically
terminated after a few minutes if no registration occurs.
--mregister PIN index
Register to a FP, using entry index in the adapter list. Only
valid if adapter type is PP.
Reset to factory settings (PIN=`0000', adapter type=`FP').
These commands access the journal log buffer in the base. Log entries
are identified and can be retrieved by consecutive numeric IDs. The
base automatically overwrites the oldest entries when the buffer is
full, so only the last couple of hundreds of messages are available.
Currently, these commands only work if the firmware is not too old.
Retrieve the ID of the most recent log entry and the number of
entries available. The set of available entries consists of
those with IDs between (<lastID> - <number> + 1) and <lastID>,
Retrieve the journal log entries corresponding to the comma-sep-
arated list of IDs. Ranges may be specified with two numbers
separated by a hyphen. If the first number of the first range
or the last number of the last range is omitted (list starts
and/or ends with a hyphen) the oldest or most recent available
log entry is assumed, respectively. In particular, just speci-
fying a hyphen dumps the entire journal log.
A dot (.) may be used to specify the most recent log entry by
Flush the journal log buffer in the base. This deletes all log
The encoding used for these commands is utf-8. These commands only work
if the firmware is not too old. These commands are very likely to
change in future versions.
--smscreate flags unknown dcs vp chain_id number file creation_flags
Create a message to number (empty string: don't set the number
yet) from the contents of file (`-': read from stdin) and set
the message flags given in the comma separated list cre-
ation_flags (valid flags: `send', `store'; empty string is
allowed). The message is selected as current message.
If chain_id is not -1, the message will be split into several
SMs with id chain_id (8 bit value), if it is too large. The
firmware we used to test this seems to create too different mes-
sage headers for the parts, which causes them to appear as sin-
gle messages to the phone we used.
flags, unknown, dcs, and vp seem to be equivalent to the first
octet of the SM header, another header byte (TP-PID?), TP-DCS,
and TP-VP (integer representation). See GSM 03.40 for details or
use the values from section `EXAMPLES'.
Set `delete' bit of the current message(s).
Dump all messages (hex dump and decoded), including header
information as date and time.
Dump all messages (decoded), including header information. Mes-
sages which are split into several SMs are concatenated.
Dump selected message(s).
Select message id as current message. This `low level version'
of --smsselect avoids reading the SM list and SMs.
Print memory usage.
List the message handles and flags of all messages.
Set number of the current message(s) to number.
Set `old' bit of the current message(s).
Delete all messages.
Select message id as current message.
Select message id and the messages which belong to the same con-
catenated message as current message(s).
Set `send' bit of the current message(s).
Set `store' bit of the current message(s).
Please consider the answering machine commands as experimental and sub-
ject to change in future releases. There is no support for replacing
the canned phrases yet, although it is theoretically possible.
List info such as date and id of all recorded messages and
Delete message id in phone memory.
Delete all messages of currently selected answering machine with
a type matching typemask. It has to be specified as the sum of
one or more of the following values:
typemask message type
1 Deleted or unknown
2 New incoming message (not yet heard)
4 Old incoming message
8 New local info (not yet heard)
16 Old incoming message
32 Greeting 1
64 Greeting 2
128 Info message
256 Final message
Select another answering machine. amindex may be 0 (default),
1, 2 or 3.
--amget id file
Retrieve message id from phone and store it (as is) in file.
Note: The structure and encoding of the audio data is yet
unknown. Conversion to and from common audio file formats and
playback of messages without the phone isn't possible. If you
think you know something about the encoding, please contribute!
Read file and transfer it (as is) as an audio message to the
The encoding used for these commands is currently latin1. This might
be changed to utf-8.
--pbdump id mode
Receive phonebook entries from handset id and dump them to the
If mode is 1 ("old" mode), the command waits for phonebook
entries to be sent via the handset menu.
If mode is 2 ("new" mode, only works with 4000 Comfort and later
handsets) the entire phonebook is retrieved without user inter-
With mode 0, the command uses "new mode" for handsets which sup-
port it, and "old mode" for all others.
--pbfile file id
Send phonebook entries from file (`-' means standard input) to
--pbent name number id
Send phonebook entry to handset id.
Delete all phonebook entries from handset id.
The data format for the --pbfile and --pbdump commands is one line per
entry, with fields separated by tab characters. The fields are, in
order: name, number, melody (0..10), alert flag (0 or 1), time (hh:mm),
date (yy-mm-dd). Unused fields may be omitted.
--cfxset msn state type service to_msn
Configure call forwarding for the given combination of msn, for-
warding type and service to state and destination number to_msn.
Possible values for state are:
0 inactive (only store the destination number for future use)
Possible values for type are:
0 unconditional [CFU]
1 on busy [CFB]
2 when not responding [CFNR]
Possible values for service are:
0 all services
2 unrestricted digital information
4 unrestricted digital information with tones and announcements
32 phone 3,1 kHz
34 fax G4 class 1
36 video phone
37 fax G2-3
38 phone 7 kHz
Note: The manufacturer documentation seems to indicate that call for-
warding should always be set identically for the three services 1
(speech), 3 (audio) and 32 (phone 3,1 kHz).
Querying the current call forwarding sessions is done via --cfgread
from the appropriate parameter IDs, see below.
Warning: Using wrong parameter ids and data types can cause serious
--cfgread pid id type
Print value of the configuration entry with parameter id pid for
unit id (0 for general settings), formatted as type.
--cfgwrite pid id type value
Set configuration entry with parameter id pid for unit id (0 for
general settings) to value, formatted as type.
Possible types are:
str NUL terminated character string; the terminating NUL character
is stripped by --cfgread and added by --cfgwrite.
dec8 integer in the range 0..255 stored in a single byte
dec32 integer in the range 0..4294967295 stored in four bytes in lit-
hex arbitrary byte sequence in hexadecimal representation; --cfgread
will print each byte as two hex digits, separating bytes by a
single space character; --cfgwrite will accept an arbitrary
sequence of hex digits and space characters, starting a new byte
every two digits or whenever it encounters one or more space
characters. The number of bytes must match exactly the size of
the configuration entry.
MISC. COMMANDS (BASE)
Print product name.
Print vendor name.
Print device name.
Print firmware version.
Print the index-th MSN.
--msnset index number
Set the index-th MSN to number.
--dial type number id
Initiate a call of the given type (0: internal, 1: external,
...) from phone id to number. For an internal call, * (a single
asterisk character) can also be given as number to call all
extensions simultaneously. This needs to be quoted to protect
it from expansion by the shell, for example:
# gigacontr --dial 0 '*'
To unconditionally forward calls for MSN 1234 to phone number
# gigacontr --cfxset 1234 1 0 0 05556666
To make the `voice message' symbol appear on cell phone 01234, try
# echo test | gigacontr --smscreate 1 0 0xd8 0 -1 01234 - send
To send the contents of the (UTF-8 encoded) file FILE to 01234, try
# gigacontr --smscreate 1 0 0xf1 0 -1 01234 FILE send
To do this with a validity period of 24 hours, try
# gigacontr --smscreate 0x11 0 0xf1 167 -1 01234 FILE send
To remove the `voice message' symbol you created before, try
# echo test | gigacontr --smscreate 1 0 0xd0 0 -1 01234 - send
To register the M101 to the base (PIN 0000), execute
# gigacontr --dev /dev/ttyGS0 --msettype 1 --mregister 0000 0
This program is incomplete and experimental. Many commands do not
check the parameters but pass them directly to the device. Many errors
are reported as numbers which can only be interpreted by consulting the
When the command --smscreate splits a long SMS message into several
chained messages, the receiving device sometimes doesn't recognize the
parts as belonging to the same message.
In order for the M10x specific commands to work with an M105, the
usb_gigaset driver must be built with support for the undocumented
Siemens USB requests. Starting with kernel release 2.6.31, that sup-
port is always built in. In older releases, the GIGASET_UNDOCREQ
option had to be set.
The commands --moccupy, --mrelease and --msetautorel are implemented
according to the Siemens documentation but don't seem to work; the M10x
always answers FAILURE.
gigaset-frontend-0.7.2 2015-02-18 gigacontr(8)
Man(1) output converted with
and manually updated to release 0.7.2.