blob: 55b2852904a40f7a042c69fd3888423d02eb4d38 [file] [log] [blame]
Tilman Schmidt27d1ac22006-04-10 22:55:15 -07001GigaSet 307x Device Driver
2==========================
3
41. Requirements
5 ------------
61.1. Hardware
7 --------
8 This release supports the connection of the Gigaset 307x/417x family of
9 ISDN DECT bases via Gigaset M101 Data, Gigaset M105 Data or direct USB
10 connection. The following devices are reported to be compatible:
Tilman Schmidt2869b232007-02-12 00:52:34 -080011
12 Bases:
13 Siemens Gigaset 3070/3075 isdn
14 Siemens Gigaset 4170/4175 isdn
15 Siemens Gigaset SX205/255
16 Siemens Gigaset SX353
17 T-Com Sinus 45 [AB] isdn
18 T-Com Sinus 721X[A] [SE]
Tilman Schmidt27d1ac22006-04-10 22:55:15 -070019 Vox Chicago 390 ISDN (KPN Telecom)
Tilman Schmidt2869b232007-02-12 00:52:34 -080020
21 RS232 data boxes:
22 Siemens Gigaset M101 Data
23 T-Com Sinus 45 Data 1
24
25 USB data boxes:
26 Siemens Gigaset M105 Data
27 Siemens Gigaset USB Adapter DECT
28 T-Com Sinus 45 Data 2
29 T-Com Sinus 721 data
Tilman Schmidt27d1ac22006-04-10 22:55:15 -070030 Chicago 390 USB (KPN)
Tilman Schmidt2869b232007-02-12 00:52:34 -080031
Tilman Schmidt27d1ac22006-04-10 22:55:15 -070032 See also http://www.erbze.info/sinus_gigaset.htm and
33 http://gigaset307x.sourceforge.net/
34
35 We had also reports from users of Gigaset M105 who could use the drivers
36 with SX 100 and CX 100 ISDN bases (only in unimodem mode, see section 2.4.)
37 If you have another device that works with our driver, please let us know.
Tilman Schmidt27d1ac22006-04-10 22:55:15 -070038
39 Chances of getting an USB device to work are good if the output of
40 lsusb
41 at the command line contains one of the following:
42 ID 0681:0001
43 ID 0681:0002
44 ID 0681:0009
45 ID 0681:0021
46 ID 0681:0022
47
481.2. Software
49 --------
50 The driver works with ISDN4linux and so can be used with any software
51 which is able to use ISDN4linux for ISDN connections (voice or data).
52 CAPI4Linux support is planned but not yet available.
53
54 There are some user space tools available at
55 http://sourceforge.net/projects/gigaset307x/
56 which provide access to additional device specific functions like SMS,
57 phonebook or call journal.
58
59
602. How to use the driver
61 ---------------------
622.1. Modules
63 -------
64 To get the device working, you have to load the proper kernel module. You
65 can do this using
66 modprobe modulename
Tilman Schmidt2869b232007-02-12 00:52:34 -080067 where modulename is ser_gigaset (M101), usb_gigaset (M105), or
68 bas_gigaset (direct USB connection to the base).
69
70 The module ser_gigaset provides a serial line discipline N_GIGASET_M101
71 which drives the device through the regular serial line driver. To use it,
72 run the Gigaset M101 daemon "gigasetm101d" (also available from
73 http://sourceforge.net/projects/gigaset307x/) with the device file of the
74 RS232 port to the M101 as an argument, for example:
75 gigasetm101d /dev/ttyS1
76 This will open the device file, set its line discipline to N_GIGASET_M101,
77 and then sleep in the background, keeping the device open so that the
78 line discipline remains active. To deactivate it, kill the daemon, for
79 example with
80 killall gigasetm101d
81 before disconnecting the device.
Tilman Schmidt27d1ac22006-04-10 22:55:15 -070082
832.2. Device nodes for user space programs
84 ------------------------------------
85 The device can be accessed from user space (eg. by the user space tools
86 mentioned in 1.2.) through the device nodes:
87
Tilman Schmidt2869b232007-02-12 00:52:34 -080088 - /dev/ttyGS0 for M101 (RS232 data boxes)
Tilman Schmidt27d1ac22006-04-10 22:55:15 -070089 - /dev/ttyGU0 for M105 (USB data boxes)
90 - /dev/ttyGB0 for the base driver (direct USB connection)
91
92 You can also select a "default device" which is used by the frontends when
93 no device node is given as parameter, by creating a symlink /dev/ttyG to
94 one of them, eg.:
95
96 ln -s /dev/ttyGB0 /dev/ttyG
97
982.3. ISDN4linux
99 ----------
100 This is the "normal" mode of operation. After loading the module you can
101 set up the ISDN system just as you'd do with any ISDN card.
102 Your distribution should provide some configuration utility.
103 If not, you can use some HOWTOs like
104 http://www.linuxhaven.de/dlhp/HOWTO/DE-ISDN-HOWTO-5.html
105 If this doesn't work, because you have some recent device like SX100 where
106 debug output (see section 3.2.) shows something like this when dialing
107 CMD Received: ERROR
108 Available Params: 0
109 Connection State: 0, Response: -1
110 gigaset_process_response: resp_code -1 in ConState 0 !
111 Timeout occurred
112 you might need to use unimodem mode:
113
1142.4. Unimodem mode
115 -------------
116 This is needed for some devices [e.g. SX100] as they have problems with
117 the "normal" commands.
118
119 If you have installed the command line tool gigacontr, you can enter
120 unimodem mode using
121 gigacontr --mode unimodem
122 You can switch back using
123 gigacontr --mode isdn
124
125 You can also load the driver using e.g.
126 modprobe usb_gigaset startmode=0
127 to prevent the driver from starting in "isdn4linux mode".
128
129 In this mode the device works like a modem connected to a serial port
130 (the /dev/ttyGU0, ... mentioned above) which understands the commands
131 ATZ init, reset
132 => OK or ERROR
133 ATD
134 ATDT dial
135 => OK, CONNECT,
136 BUSY,
137 NO DIAL TONE,
138 NO CARRIER,
139 NO ANSWER
140 <pause>+++<pause> change to command mode when connected
141 ATH hangup
142
143 You can use some configuration tool of your distribution to configure this
144 "modem" or configure pppd/wvdial manually. There are some example ppp
Hansjoerg Lipp3dda4e32006-04-22 18:43:00 +0200145 configuration files and chat scripts in the gigaset-VERSION/ppp directory
146 in the driver packages from http://sourceforge.net/projects/gigaset307x/.
Tilman Schmidt27d1ac22006-04-10 22:55:15 -0700147 Please note that the USB drivers are not able to change the state of the
148 control lines (the M105 driver can be configured to use some undocumented
149 control requests, if you really need the control lines, though). This means
150 you must use "Stupid Mode" if you are using wvdial or you should use the
151 nocrtscts option of pppd.
152 You must also assure that the ppp_async module is loaded with the parameter
153 flag_time=0. You can do this e.g. by adding a line like
154
155 options ppp_async flag_time=0
156
157 to /etc/modprobe.conf. If your distribution has some local module
158 configuration file like /etc/modprobe.conf.local,
159 using that should be preferred.
160
1612.5. Call-ID (CID) mode
162 ------------------
163 Call-IDs are numbers used to tag commands to, and responses from, the
164 Gigaset base in order to support the simultaneous handling of multiple
165 ISDN calls. Their use can be enabled ("CID mode") or disabled ("Unimodem
166 mode"). Without Call-IDs (in Unimodem mode), only a very limited set of
167 functions is available. It allows outgoing data connections only, but
168 does not signal incoming calls or other base events.
169
170 DECT cordless data devices (M10x) permanently occupy the cordless
171 connection to the base while Call-IDs are activated. As the Gigaset
172 bases only support one DECT data connection at a time, this prevents
173 other DECT cordless data devices from accessing the base.
174
175 During active operation, the driver switches to the necessary mode
176 automatically. However, for the reasons above, the mode chosen when
177 the device is not in use (idle) can be selected by the user.
178 - If you want to receive incoming calls, you can use the default
179 settings (CID mode).
180 - If you have several DECT data devices (M10x) which you want to use
181 in turn, select Unimodem mode by passing the parameter "cidmode=0" to
182 the driver ("modprobe usb_gigaset cidmode=0" or modprobe.conf).
183
184 If you want both of these at once, you are out of luck.
185
Hansjoerg Lipp3dda4e32006-04-22 18:43:00 +0200186 You can also use /sys/class/tty/ttyGxy/cidmode for changing the CID mode
187 setting (ttyGxy is ttyGU0 or ttyGB0).
Tilman Schmidt27d1ac22006-04-10 22:55:15 -0700188
Tilman Schmidt2869b232007-02-12 00:52:34 -08001892.6. M105 Undocumented USB Requests
190 ------------------------------
191
192 The Gigaset M105 USB data box understands a couple of useful, but
193 undocumented USB commands. These requests are not used in normal
194 operation (for wireless access to the base), but are needed for access
195 to the M105's own configuration mode (registration to the base, baudrate
196 and line format settings, device status queries) via the gigacontr
197 utility. Their use is disabled in the driver by default for safety
198 reasons but can be enabled by setting the kernel configuration option
199 "Support for undocumented USB requests" (GIGASET_UNDOCREQ) to "Y" and
200 recompiling.
201
Tilman Schmidt27d1ac22006-04-10 22:55:15 -0700202
2033. Troubleshooting
204 ---------------
2053.1. Solutions to frequently reported problems
206 -----------------------------------------
207 Problem:
208 You have a slow provider and isdn4linux gives up dialing too early.
209 Solution:
210 Load the isdn module using the dialtimeout option. You can do this e.g.
211 by adding a line like
212
213 options isdn dialtimeout=15
214
215 to /etc/modprobe.conf. If your distribution has some local module
216 configuration file like /etc/modprobe.conf.local,
217 using that should be preferred.
218
219 Problem:
220 Your isdn script aborts with a message about isdnlog.
221 Solution:
222 Try deactivating (or commenting out) isdnlog. This driver does not
223 support it.
224
225 Problem:
226 You have two or more DECT data adapters (M101/M105) and only the
227 first one you turn on works.
228 Solution:
229 Select Unimodem mode for all DECT data adapters. (see section 2.4.)
230
2313.2. Telling the driver to provide more information
232 ----------------------------------------------
233 Building the driver with the "Gigaset debugging" kernel configuration
234 option (CONFIG_GIGASET_DEBUG) gives it the ability to produce additional
235 information useful for debugging.
236
237 You can control the amount of debugging information the driver produces by
238 writing an appropriate value to /sys/module/gigaset/parameters/debug, e.g.
239 echo 0 > /sys/module/gigaset/parameters/debug
240 switches off debugging output completely,
241 echo 0x10a020 > /sys/module/gigaset/parameters/debug
242 enables the standard set of debugging output messages. These values are
243 bit patterns where every bit controls a certain type of debugging output.
244 See the constants DEBUG_* in the source file gigaset.h for details.
245
246 The initial value can be set using the debug parameter when loading the
247 module "gigaset", e.g. by adding a line
248 options gigaset debug=0
249 to /etc/modprobe.conf, ...
250
251 Generated debugging information can be found
252 - as output of the command
253 dmesg
254 - in system log files written by your syslog daemon, usually
255 in /var/log/, e.g. /var/log/messages.
256
2573.3. Reporting problems and bugs
258 ---------------------------
259 If you can't solve problems with the driver on your own, feel free to
260 use one of the forums, bug trackers, or mailing lists on
261 http://sourceforge.net/projects/gigaset307x
262 or write an electronic mail to the maintainers.
263
264 Try to provide as much information as possible, such as
265 - distribution
266 - kernel version (uname -r)
267 - gcc version (gcc --version)
268 - hardware architecture (uname -m, ...)
269 - type and firmware version of your device (base and wireless module,
270 if any)
271 - output of "lsusb -v" (if using an USB device)
272 - error messages
273 - relevant system log messages (it would help if you activate debug
274 output as described in 3.2.)
275
276 For help with general configuration problems not specific to our driver,
277 such as isdn4linux and network configuration issues, please refer to the
278 appropriate forums and newsgroups.
279
2803.4. Reporting problem solutions
281 ---------------------------
282 If you solved a problem with our drivers, wrote startup scripts for your
283 distribution, ... feel free to contact us (using one of the places
284 mentioned in 3.3.). We'd like to add scripts, hints, documentation
285 to the driver and/or the project web page.
286
287
2884. Links, other software
289 ---------------------
290 - Sourceforge project developing this driver and associated tools
291 http://sourceforge.net/projects/gigaset307x
292 - Yahoo! Group on the Siemens Gigaset family of devices
293 http://de.groups.yahoo.com/group/Siemens-Gigaset
294 - Siemens Gigaset/T-Sinus compatibility table
295 http://www.erbze.info/sinus_gigaset.htm
296
297
2985. Credits
299 -------
300 Thanks to
301
302 Karsten Keil
303 for his help with isdn4linux
304 Deti Fliegl
305 for his base driver code
306 Dennis Dietrich
307 for his kernel 2.6 patches
308 Andreas Rummel
309 for his work and logs to get unimodem mode working
310 Andreas Degert
311 for his logs and patches to get cx 100 working
312 Dietrich Feist
313 for his generous donation of one M105 and two M101 cordless adapters
314 Christoph Schweers
315 for his generous donation of a M34 device
316
317 and all the other people who sent logs and other information.
318