Siemens 7 Developer's Manual
Siemens 7 Developer's Manual

Siemens 7 Developer's Manual

Multiplexer driver
Hide thumbs Also See for 7:
Table of Contents

Advertisement

Quick Links

s
Multiplexer Driver
Developer's Guide
(Windows XP/2000)
Siemens Cellular Engines
Version:
DocId:
07
Mux_Drv_DevGuide_v07

Advertisement

Table of Contents
loading

Summary of Contents for Siemens 7

  • Page 1 Multiplexer Driver Developer’s Guide (Windows XP/2000) Siemens Cellular Engines Version: DocId: Mux_Drv_DevGuide_v07...
  • Page 2 Furthermore, all safety instructions regarding the use of mobile technical systems, including GSM products, which also apply to cellular phones must be followed. Siemens or its suppliers shall, regardless of any legal the- ory upon which the claim is based, not be liable for any consequential, incidental, direct, indirect, punitive or other...
  • Page 3: Table Of Contents

    Multiplexer Driver Developer’s Guide Contents Contents Document History... 7 Introduction... 9 Supported Product Versions ... 10 Related Documents... 11 Abbreviations... 11 Architecture... 12 Hierarchy Chart in the System ... 12 Handling of the Physical Serial Port ... 13 Module Detection ... 13 Handling of Control Lines on Virtual Ports ...
  • Page 4 Multiplexer Driver Developer’s Guide Contents Shutdown of the Operating System... 35 Standby of the Operating System ... 35 Wake on Ring... 35 Special Environments... 36 Operation on Virtual USB Port ... 36 Automatic Shutdown in case of Emergency... 36 Mux_Drv_DevGuide_v07 Confidential / Released Page 4 of 36 2006-9-27...
  • Page 5 Virtual serial port with Multiplexer Protocol version 3 ... 14 Table 4: Module initialization of supported modules... 15 Table 5: Required driver files... 18 Table 6: Registry values ... 21 Table 7: Registry values for trace outputs ... 24 Mux_Drv_DevGuide_v07 Confidential / Released Page 5 of 36 2006-9-27...
  • Page 6 Driver internal buffer handling... 29 Figure 6: Block flow diagram for data received by the module ... 30 Figure 7: Block flow diagram for data sent to the module via a virtual port ... 31 Figure 8: SerMuxSend function ... 32 Figure 9: Send function from the virtual communication ports...
  • Page 7: Document History

    Enhanced list of supported products. Table 6: Added optional Registry values supported as of Multiplexer Protocol version 4. Table 7: Added value 0x0002 0000 Frame information, HDLC. 6.1, Updated requirements for Windows environment. Preceding document: "Multiplexer Driver Developer’s Guide", Version 05 New document: "Multiplexer Driver Developer’s Guide"...
  • Page 8: Mux_Drv_Devguide_V07

    Multiplexer Driver Developer’s Guide Preceding document: "Multiplexer Driver Developer’s Guide", Version 02 New document: "Multiplexer Driver Developer’s Guide" Version 03 Chapter What is new 1.1, Updated list of supported products and information about version control. Throughout Complete revision of all chapters. Added information specific to TC35i and TC45. manual Updated Description of Registry values.
  • Page 9: Introduction

    As such, it has been tested by Siemens using a variety of applications and platforms, but naturally, even the most extensive test setup can never be adequate to cover all conceivable configurations.
  • Page 10: Supported Product Versions

    • WinMux2k driver as of version 3.000 Where differences occur between the two Multiplexer Protocol versions or between the supported Siemens wire- less modules they are particularly noted. The Multiplexer sources are available on request. In the case you wish to receive the source code of the MinMux2k driver packed into a zip file containing the complete source files together with corresponding MS Visual Studio 6.0 project files, see...
  • Page 11: Related Documents

    Equipment to Mobile Station (TE-MS) multiplexer protocol Digital Cellular Telecommunications Systems (Phase 2+); Terminal Equipment to Mobile Station (TE-MS) “Multiplexer Protocol”; ETSI TS 101 369 V7.1.0 (1999-11), GSM 07.10 Version 7.1.0, Release 1998 AT Command Set of your Siemens wireless engine Hardware Interface Description of your Siemens wireless engine Multiplexer User’s Guide...
  • Page 12: Architecture

    RS-232 connection Figure 1: Driver architecture Page 12 of 36 Terminal COM1 direct connection File object for physical COM1 port Serial.sys port COM1 Phys. serial port Modem Siemens GSM engine with Multiplexer Protocol 2006-9-27...
  • Page 13: Handling Of The Physical Serial Port

    Multiplexer Driver Developer’s Guide 2.2 Handling of the Physical Serial Port Figure 1 shows the driver architecture of winmux2k.sys in the operating system. The device driver winmux2k.sys emulates virtual serial ports. The lower layer of the WinMux2k driver is the physical serial port driver (serial.sys). The WinMux2k driver is loaded during system startup.
  • Page 14: Handling Of Control Lines On Virtual Ports

    Multiplexer Driver Developer’s Guide 2.4 Handling of Control Lines on Virtual Ports Handling of Control Lines on Virtual Ports Summary of control line handling. Table 2: Virtual serial port with Multiplexer Protocol version 2 Signal Description RING Read from hardware port, distributed to the first virtual port Read from hardware port, distributed to the first virtual port Received with Modem Status Command Set by user, sent with Modem Status Command, initialized with 1...
  • Page 15: Module Initializing Sequence

    Multiplexer Driver Developer’s Guide 2.6 Module Initializing Sequence Module Initializing Sequence Due to different requirements of the supported products the initialization sequence varies with the module type. This means that when you migrate to another module type you are required to uninstall the driver and reinstall it with the new module.
  • Page 16: Module Re-Initialization

    Multiplexer Driver Developer’s Guide 2.7 Module Re-initialization Module Re-initialization If the module is disconnected or powered off during normal operation, the driver detects this and tries to reinitial- ize the module. Because the module state can be changed while disconnected the multiplexer mode has to be completely initialized.
  • Page 17: Power Down On Pc Shutdown

    Multiplexer Driver Developer’s Guide 2.8 Power Down 2.8.3 Power Down on PC Shutdown When the PC is shut down, the multiplexer mode is turned off and the strings from the Registry value “ShutDown” are sent to the module, if a virtual port is in use. Note: During shutdown, some PCs may generate an impulse on the lines of the serial interface.
  • Page 18: Installation

    Ensure that the module is connected to a serial port and turn the module power on. Press the “Scan” button of the application. All Siemens modules found will be listed in a box. If no modem has been installed yet, the virtual ports can be selected. If it is properly installed, the virtual ports are shown. If at least one modem is found, the “Install”...
  • Page 19: Deinstalling The Driver

    Multiplexer Driver Developer’s Guide 3.3 Deinstalling the Driver Deinstalling the Driver In order to uninstall the Windows Multiplexer Driver perform the following steps: Windows 2000 Start the Control Panel. Select System. Select the Hardware property sheet. Double click the Device Manager button. Under Multi-port serial adapters right click Serial Multiplexer.
  • Page 20: Device Settings And Properties

    Multiplexer Driver Developer’s Guide 4 Device Settings and Properties Device Settings and Properties Settings on the Serial Multiplexer Properties Page From the Serial Multiplexer Properties page (see Settings tab. The baud rate used on the physical serial port can be changed individually. Mux_Drv_DevGuide_v07 Confidential / Released Section 3.3...
  • Page 21: Settings Stored In The Windows Registry

    Multiplexer Driver Developer’s Guide 4.2 Settings Stored in the Windows Registry Settings Stored in the Windows Registry The WinMux2k driver parameters are located in the registry path HKLM\System\CurrentControlSet\Enum\Root\winmux\000X\Device Parameters. X is the number of the device instance. All values listed below will be created during the installation of the WinMux2k driver. The settings are provided by the winmux2k.inf file.
  • Page 22 Siemens products. If you prefer to use one of the more efficient CYCLIC SLEEP modes it can be replaced with AT+CFUN=5 or 6 or 7 or 8 or 9. See to verify the SLEEP mode types supported by your product.
  • Page 23 HDLC window which defines the maximal number of outstanding HDLC packets. It can be between 2 and 7. This Registry value is not mandatory. If it is not added to the Registry the value 4 will be assumed by default. Please note that the value is negotiated with the module.
  • Page 24: Table 7: Registry Values For Trace Outputs

    The following Registry values in the path HKLM \System\CurrentControlSet\Services\winmux2k\Parameters are used to configure the TRACE out- puts. These values are only valid for the debug version of the device driver. Table 7: Registry values for trace outputs Values Data (Example)
  • Page 25: Settings For Applications

    Multiplexer Driver Developer’s Guide 5 Settings for Applications Settings for Applications Dial-up Network Settings The dial-up network settings must be configured according to the requirements of the network provider. The WinMux2k driver has no special requirements. Fax Settings There are no special settings for the fax service of the operating systems. Note: If the fax service is enabled for receiving fax messages, the virtual port is opened all the time.
  • Page 26: Translate Source Code

    Multiplexer Driver Developer’s Guide 6 Translate Source Code Translate Source Code Software Requirements The WinMux build environment has been designed to work together with a Microsoft Visual Studio 6.0 SP3 or higher and the Microsoft Windows XP SP1 DDK. It is possible to use a Windows 2000 DDK as well, but in this case adaptations to the different build control files might be necessary.
  • Page 27: Additional Source Documentation

    Multiplexer Driver Developer’s Guide 7 Additional Source Documentation Additional Source Documentation This chapter contains additional flow charts and state diagrams which give more detailed information on the structure and the content of the sources. Interaction of the Different Driver Objects Object chart of the device driver winmux2k.sys...
  • Page 28: Internal Driver States

    Multiplexer Driver Developer’s Guide 7.2 Internal Driver States Internal Driver States SerMux internal states STATE_CLOSE_ DOWN initial state rcv. a DM-Frame send a SABM-Frame STATE_ DISCONNECT WrConnectPort() send aSABM-Frame STATE_ DISCONNECT REQUEST rcv. a DM (Disconnect) Frame STATE_ CONNECT_ REQUEST...
  • Page 29: Buffer Handling

    Multiplexer Driver Developer’s Guide 7.3 Buffer Handling Buffer Handling SerMux SerPortN Channel number Priority with MaxSequence Send Queue Timeouts (Request Timeouts and Scanning Timeouts) Requests Statistics V24 Status from itself and the Modem Handshake Status Circular buffer Current Read and Write Status...
  • Page 30: Data Transfer

    Multiplexer Driver Developer’s Guide 7.4 Data Transfer Data Transfer 7.4.1 Block Flow Diagram for Data Received by the Module S e rM u x fu n c tio n s s e q u e n c e , if c h a ra c te rs fro m th e p h y s ic a l D e v ic e...
  • Page 31: Block Flow Diagram For Data Sent To The Module Via Virtual Port

    Block Flow Diagram for Data Sent to the Module via Virtual Port Send Request Flow of a virtual Channel with scanning of Break Signal '+++' Figure 7: Block flow diagram for data sent to the module via a virtual port Mux_Drv_DevGuide_v07 Confidential / Released...
  • Page 32: Sermuxsend Function

    Multiplexer Driver Developer’s Guide 7.4 Data Transfer 7.4.3 SerMuxSend Function The figure shows the flow diagram of the SerMuxSend function which sends the data to the module. SerMuxSend and SerMuxSendPort0 Functions Locations from where to call the SerMuxSend Functions Function that calls from SerMux...
  • Page 33: Figure 9: Send Function From The Virtual Communication Ports

    Multiplexer Driver Developer’s Guide 7.4 Data Transfer Send function from the virtual Communication Ports Function SerMuxSend() only sends UIH-Frames (unnumbered information) which come in from WriteRequest to the virtual serial communication port. WrGetWriteBuffer GetBuffer? asked all Port two times and no Frames...
  • Page 34: The +++-Parser

    Multiplexer Driver Developer’s Guide 7.5 The +++-Parser The +++-Parser The following state diagram shows the states of the +++-parser. Internal states of the ScanRequest Object for scanning each character in a Send Request for one Port Object if BreakCount > 0, then send first the breaks.
  • Page 35: Known Problems

    Multiplexer Driver Developer’s Guide 8 Known Problems Known Problems Booting Operating System Windows 2000 and Windows XP toggle the signals of the serial interfaces. As a result, the module will be switched on, even if the WinMux2 driver is not active. The driver accesses the connected module only when the virtual ports are accessed.
  • Page 36: Special Environments

    In the case of TC45 and XC18, there is no need to alter the value “ClosePort” in the Registry. Operation on Virtual USB Port This section applies only to Siemens GSM modules equipped with a USB interface. To configure the USB interface for use with the WinMux2k driver the virtual COM port assigned to the module’s USB interface shall be set to max.

Table of Contents