None.
None.
The field of the disclosure is that of radio communications, and more precisely of digital radio communication terminals (also referred to as radio communication devices), whether entailing radio telephones or devices or means of all types able to exchange signals using a radio communication system, implanted for example in machines or vehicles.
More precisely, the disclosure relates to a technique for controlling a radio communication terminal by a device that is connected to it. The device is for example a microcomputer executing a client application. The device is connected to the radio communication terminal, either locally (for example via a serial link or USB), or remotely (for example through a wired or wireless radio communication network).
Most radio communication devices include, conventionally, a set of electronic components implanted on a printed circuit. The purpose of these various components is to provide the various necessary functions, from the reception of a RF signal to the generation of an audible signal (in the case of a radiotelephone), and inversely. Certain of these functions are analogue, and other are digital.
Much research is being devoted to the manufacture of these radio communication devices. Indeed, the aim concerns at least three objectives that are difficult to reconcile: miniaturising the devices, increasing and adapting the functionalities, and simplifying assembly. It is known in particular that the implantation of the various components on the printed circuit is a relatively complex operation, many components have to be set in place on a surface that is smaller and smaller, due to the requirements concerning miniaturisation.
The design of these systems is therefore complex, since it further requires associating diverse components, often from multiple sources, that have to be made to operate together, while complying with the specificities of each one. Moreover, after the assembly of all of the components, calibration and testing phases, often long and complex, are necessary in order to guarantee the proper operation of the device. Finally, despite the reduction in size of certain components, the whole occupies a certain surface area, which is difficult to reduce.
The holder of this application has proposed an approach that overcomes a certain number of these disadvantages, consisting in regrouping in a single module (called electronic radio communication module), all or at least most of the functions of a digital radio communication device.
Such a module is shown in the form of a single housing, preferentially shielded, that the device manufacturers can implant directly, without having to take a multitude of components into account.
This module (still sometimes referred to as “macro component”) is indeed formed of a grouping of several components on a substrate, in such a way as to be embedded in the form of a single element. It includes the components (in particular a processor and a memory) and the essential software needed for the operation of a radio communication device (also referred to as radio communication terminal or wireless terminal) using radio frequencies. Therefore, there are no longer any complex steps in the designing, and in the validating of the latter. It is sufficient to reserve the necessary space for the module.
Such a module thus makes it possible to integrate all of the components into wireless terminals (portable telephones, modems, or any other device making use of a wireless standard) easily, rapidly and in an optimised manner.
Moreover, this module grouping together all of the essential functions and having been designed as a whole, the problems with calibration and testing are no longer issues in the same way, or are in the least, greatly simplified.
As such, the modules distributed by the holder of this application are fully tested from a hardware as well as a software standpoint on most of the networks on which they can then be used. Furthermore, the module advantageously encompasses the aspects of intellectual property (or IPRs, for “Intellectual Property Rights”) (all of the functions have been grouped together, it is the manufacturer of the module who handles aspects concerning the corresponding industrial property rights) and technical assistance.
The aforementioned module is for example a module of the Wismo type (registered trademark) distributed by the applicant of this patent application.
Despite these undeniable advantages, this technique has several disadvantages.
A first disadvantage resides in the difficulties encountered by developers of applications intended to be executed by the devices driving the modules.
Indeed, the developer of an application for a device intended to drive a given radio communication module must know the available control interface(s) on this module. For this, he must consult the documents that are specific to this given module, which describe the control interfaces for it.
As such, in the conventional case wherein the radio communication module is driven with AT commands, the developer must imperatively become aware, without any way of automating this, of the documents that textually define the AT commands supported by this module, as well as the physical interfaces (for example RS232, USB, etc. for a wired interface, and Zigbee, Wifi, GPRS, etc. for a wireless interface) and the protocols (for example Raw data, http/TCP/IP, etc.) on which these commands are supported. These documents are issued by the supplier (manufacturer) of the module in question. Recall that the AT commands (for “ATtention command”) make it possible for the device to require the radio communication module to which it is connected to execute certain predetermined actions. For more details concerning these AT commands, reference can be made in particular to the “GSM 07.07” standard from ETSI and the V25ter recommendation from ITU-T.
This acknowledgement by the developer is further complicated by the fact that, even if a standardised set of commands exists (for example in the aforementioned “GSM 07.07” standard), it may be that the module to be driven does not support all of them and that this has to be taken into account in the development of the application executed by the device.
This acknowledgement by the developer is also complicated by the fact that certain commands may be proprietary (i.e. specific to a radio communication module supplier) and are described only in the technical documentation provided by this supplier for the module in question.
Another disadvantage with prior art is that an application that is already developed, and that makes it possible for a device to drive a module with a given control interface of this module, must be at least partially written (and therefore cannot be reused as is) in order to allow a device to drive the same module with another control interface, or another module.
Yet another disadvantage with prior art is that during the usage phase (i.e. when the device is connected to a radio communication module in order to drive it by executing an application developed beforehand), the device cannot dynamically adapt its operation according to the module to which it is effectively connected (and to the available control interface of this module).
In a particular embodiment of the invention, a method is proposed for controlling an electronic radio communication module by a first device comprising a step of discovery by a second device of the available control interface(s) of said module, said second device being the same as or separate from said first device. Said step of discovery comprises a step of obtaining by the second device of a description file containing the available control interface(s) of said module, said description file being a WSDL file describing the available control interface(s) of said module in the form of at least one Web service hosted par said module.
The general principle of an embodiment of the invention therefore consists in automatically exporting, to the device, the information relating to the control interface(s) of the module.
The module acts, in the sense of Web services technologies, as an end point that can be accessed by any Web client (i.e. any device desiring to drive it). The control interface(s) of the module are described in a service contract materialised in a WSDL file.
Advantageously, each available control interface of said module is defined by:
Advantageously, said second device obtains the description file:
In a particular embodiment, said module hosts and executes a main radio communication software and an on-board client software. Furthermore, said WSDL file describes at least one Web service which is provided by said client software and which uses at least one available control interface of the module.
The context (known) here is herein the supplier of the radio communication module allows each client to embed on the module a client application which is proper to it. The novelty comes from the fact that the supplier of the module further offers to each client the possibility of integrating one or several Web services in the client application. In other words, an exporting of the business interfaces of the customer is allowed, in the form of Web services.
Advantageously, said at least one Web service is described, in said WSDL file, by reusing the AT command syntax.
As such, in this case, compatibility is maintained with the current AT commands, by encapsulating them in generic Web services. In this way, the device drives the module by sending it commands that, due to the fact that they comply with the syntax of AT commands, can be processed by the portion of the main software of the module that processes the AT commands. In other words, it is not necessary for the module to further include a software layer specific for the Web services.
In the case where the client application is on board the module and that this client application exposes new AT commands, the latter can be exposed in the same way as those supported natively on the module.
According to an advantageous alternative, said at least one Web service is described, in said WSDL file, by using a syntax that is separate from that of the AT commands.
In this alternative, this entails an implementation that makes a clean sweep of the current AT commands, the interfaces of the module being redefined in the Web services format. It is necessary for the module to include a software layer that is specific to the Web services (called hereinafter “Modem UF” or “Web Services API”, for “Web Services Application Programming Interface”).
According to an advantageous alternative, said step of discovery is followed by the following steps:
In a first particular embodiment of the invention, said steps of discovering and of selecting are carried out with said second device, during a development phase of an application and/or a software layer (Modem Driver) on which said application is based, intended to be hosted and executed by said first device, said step of selection being carried out by a developer, said development being according to the control interface selected. Furthermore, said step of driving is carried out during a later usage phase of said first device in cooperation with said module.
As such, the development of the application executed by the device is facilitated.
In a second particular embodiment of the invention, the second device is the same as the first device. Furthermore, said steps of discovering, selecting and driving are carried out during a usage phase of said first device in cooperation with said module, said step of selection being carried out automatically and dynamically by said first device, according on the one hand to a predetermined selection policy and on the other hand to the available control interface(s) discovered.
In this way, the device can dynamically adapt its operation according to the module to which it is effectively connected (and the available control interface of this module).
For example, an application can provide for managing right from the design stage modules coming from several suppliers, each having specificities. In the step of discovering of the interfaces, the application adapts if the case has been provided for in the design stage. For example, a remote application server can be provided to have a compatibility with a maximum of different possible modules and therefore decide, after the step of discovering, the interfaces to be used according to those available on the module in question.
In another embodiment, the invention relates to a device of the type making it possible to cooperate with an electronic radio communication module. This device comprises means of discovering the available control interface(s) of said module, in such a way as to allow for the controlling of said module by said device or by another device. Said means of discovering include means of obtaining via said device of a description file containing the available control interface(s) of said module, said description file being a WSDL file describing the available control interface(s) of said module in the form of at least one Web service hosted by said module.
More generally, the device according to an embodiment of the invention comprises means of implementing the method of control such as described hereinabove (in any one of its various embodiments).
In another embodiment, the invention relates to an electronic radio communication module, of the type able to be controlled by a first device, said module hosting at least one Web service, a WSDL file describing the available control interface(s) of said module in the form of said at least one Web service.
In another embodiment, the invention relates to a recording support containing a description file associated to an electronic radio communication module, said module being of the type able to be controlled by a first device, said description file being a WSDL file describing the available control interface(s) of said module in the form of at least one Web service hosted by said module, said description file being intended to be stored locally on the module or remotely on another device,
said file being intended to be obtained by a second device, the same as or separate from said first device, in such a way as to allow the first device to control the module.
Other characteristics and advantages of embodiments of the invention shall appear during the reading of the following description of several particular embodiments of the invention, given by way of an informative and non-limiting example, and the annexed drawings, wherein:
On all of the figures in this document, the identical elements and steps are designated by a same numerical reference.
An embodiment of the invention therefore relates to a method of controlling an electronic radio communication module by a device.
As shown in the flow chart in
For the exchanges between the module and the device, different command formats can be considered for the steps of discovering, selecting and driving, while still remaining within the scope of this invention.
By way of example, the three following cases are described hereinafter in more detail:
During the development phase of a first client application 511 intended to be executed by the water meter 51, the latter, or more often in practice another device (for example a PC) specific to the development, communicates with the module 52 in order to know the available control interface of the module (step 1 of discovering).
Then, in this same development phase, the developer selects one of the available control interfaces discovered beforehand (step 2 of selecting), and takes into account the interface selected in the development that he is carrying out.
During a later usage phase of the water meter 51, the driving of the module takes place for example as follows (step 3 of driving). At a fixed frequency (once a month for example), the first client application 511 executed by the water meter 51 obtains from a sensor 512 information relating to the quantity of water consumed. Then it drives the module 52, by sending commands to a main radio communication application 521 executed by the module, in order to send this information to a second client application 531 executed by the collection server 53. This transmission takes place for example in the form of sending a message of the SMS type by the module 52.
In an alternative of this first example of an application of the method of the invention, the steps of discovering and of selecting are carried out during the usage phase. More precisely, the step of selecting is carried out automatically and dynamically by the water meter 51, according on the one hand to a predetermined selection policy and on the other hand to the available control interface(s) discovered.
This here lies within one of the possible contexts of the “Open AT” technique (registered trademark), such as is described in detail in French patent FR 2 822 627 published on 27 Sep. 2002, and of which the applicant of this patent application is the holder. In this second example, and in accordance with one of the possible contexts of the “Open AT” technique (registered trademark), the radio communication module 62 executes on the one hand a main radio communication application 621 and on the other hand the first aforementioned client application 622.
During the development phase of a second client application 631 executed by the collection server 63, the latter (or another device, for example a PC, specific to the development) communicates with the module 62 in order to know the available control interface of the module (step 1 of discovering).
Possibly, the available control interface also make it possible to expose the AT commands by the on-board application.
Then, in this same development phase, the developer selects one of the available control interfaces discovered beforehand (step 2 of selecting), and takes into account the interface selected in the development that he is carrying out.
During a later usage phase of the collection server 63, the driving of the module takes place for example as follows (step 3 of driving). At a fixed frequency (once a month for example), the second client application 631 executed by the collection server 63 drives the module 62, so that the first client application 622 obtains from a sensor 612 (comprised in the water meter 61) information relating to the quantity of water consumed and sends this information back to the second client application 631. The sending of this response takes place for example in the form of sending a message of the SMS type by the module 62.
In an alternative of this second example of an application of the method of the invention, the steps of discovering and of selecting are carried out during the usage phase. More precisely, the step of selecting is carried out automatically and dynamically by the collection server 63, according on the one hand to a predetermined selection policy and on the other hand to the available control interface(s) discovered.
In relation with
The radio communication module 21 comprises:
The local device 22 comprises a local client application 221, a “USB” interface 222, an “RS232” interface 223 and an “Ethernet” interface 224. It is connected to the module 21 by the intermediary of a local link 24 (USB, RS232 or Ethernet link in this example), on which the AT commands transit.
The remote device 23 comprises a remote client application 231 and a “HTTP-TCP-IP” layer 232, above a “GPRS” interface 233. It is connected to the module 21 by the intermediary of a remote link 25 (GPRS/IP link in this example), on which the AT commands transit (the latter are encapsulated in IP packets).
With a concern for simplification, the storage (memory) and execution (CPU) resources of the local 221 and remote 231 client applications, within the local device 22 and the remote device 23 respectively, are not shown in
In order to implement the step of discovering (referenced as 1 in
A new command, called for example “AT+HELP ATCmdSet”, is such that if the device sends it to the module, the latter sends as a response the list of AT commands that it supports, such as for example:
In an alternative, the new command “AT+HELP ATCmdSet” is replaced/supplemented by a set of three new AT commands, called for example “AT+HELP ATCmdFirst”, “AT+HELP ATCmdNext” and “AT+HELP ATCmdPrevious”. The latter make it possible for the device to request that the module send it the AT commands that it supports, one by one. As such:
Another new command, called for example “AT+HELP Command”, is such that if the device sends it to the module, the latter sends back as a response a list of input parameters (IN) and/or responses (OUT) associated with the command (of which the name is “Command”) indicated as an attribute of the new command “AT+HELP Command”.
Example: if the device sends the command “AT+HELP CPIN?”, the module responds by sending:
Another example: if the device sends the command “AT+HELP CPIN=”, the response from the module may be one of the following responses:
Yet another new command, called for example “AT+HELP ATCmdItf”, is such that if the device sends it to the module, the latter sends back as a response an indication of the protocols and of the interface types on which the module supports AT commands.
For example, the AT commands supported by the module are by default as Raw Data protocol, but it can be considered to encapsulate them in the IP frames in order to have a module seen as a generic IP peripheral device.
Example: if the device sends the command “AT+HELP ATCmdItf”, the response from the module may be one of the following responses:
As such, in the first and second embodiments shown in
In relation with
The radio communication module 31 comprises:
In an alternative, the WSDL file 339 is stored on an external server, which can be accessed via an Internet address (referenced as 340 in
The local device 33 comprises:
The local device 33 is connected to the module 31 by the intermediary of a local link 35 (USB, RS232 or Ethernet link in this example), on which transit the requests and responses of the Web services type (exchanges according to the SOAP protocol).
The remote device 32 comprises:
The “Modem Driver” layer 322, 332 of each of the devices 32, 33 is generated by a WSDL analyser 338, using the WSDL file.
The remote equipment 32 is connected to the module 31 by the intermediary of a remote link 34 (GPRS/IP link in this example), on which transit the requests and responses of the Web services type (exchanges according to the SOAP protocol).
With a concern for simplification, the storage (memory) and execution (CPU) resources of the local 331 and remote 321 client applications, within the local device 33 and remote device 32 respectively, are not shown in
In order to implement the step of discovering (referred to as 1 in
The “SOAP” layers 313, 323 and 333 implement the SOAP protocol which is a message transmission protocol. It defines all of the rules for structuring messages that can be used in simple mono-directional transmissions, but it is particularly useful for executing RPC (Remote Procedure Call) request-response dialogs. This is the protocol for Web services messages.
The “Modem UF” layer 312 is a software layer implementing the service contract supported by the modem software, materialised by the WSDL file. In an embodiment, these are the AT commands exposed as Web services, which makes it possible to reuse existing commands. In another embodiment, it is an implementation of new interfaces supported by the modem software.
The “Modem Driver” layers 322, 332 are software interface layers created (for example automatically) using the WSDL file. They offer as a high interface the Web services discovered and encapsulate them in the SOAP protocol.
The set formed of the “SOAP” 323 and “Modem Driver” 322 layers (or “SOAP” 333 and “Modem Driver” 332) is the corollary for the set formed by the “SOAP” 313 and “Modem I/F” 312 layers: the first sends requests and the other processes them and sends back responses which are in turn processed by the first.
As such, in the third and fourth embodiments shown in
In an alternative (not shown), the step of discovering is carried out thanks to the Web services technology (operating in “Web service” mode) and making it possible to discover the AT interfaces, then the device switches to “AT command” mode on the link that was used to detect the commands (i.e. discover the AT interfaces). Finally, the device carries out the step of driving the module thanks to the AT commands. In other words, the available control interfaces of the module are described, in the WSDL file, by using the AT command syntax.
In relation with
For the purposes of information, these two devices 22, 33 are local and identical to the devices bearing the same references in
One 22 is connected to the module 41 by the intermediary of a first local link 44, on which AT commands transit. The other 33 is connected to the module 41 by the intermediary of a second local link 45, on which transit requests and responses of the Web services type (exchanges according to the SOAP protocol).
The module 41 comprises a combination of means (not described again) included in the modules 21 (
The diverted use, according to an embodiment of the invention, of the Web services technology for controlling a radio communication module by a device offers the following advantages:
In summary, at least one embodiment of the present disclosure therefor provides a technique for controlling a radio communication module by a device, making it possible to facilitate the development of the application executed by this device.
At least one embodiment provides such a technique making it possible to drive the module by the device, through any type of interface, locally or remotely.
At least one embodiment provides such a technique, that is simple to implement and of low cost.
At least one embodiment provides such a technique making it possible for the device to dynamically adapt its operation according to the module to which it is effectively connected (and the available control interfaces of this module).
Command:
Response:
1) WSDL Description of the Pin Modem Service without Reusing the AT Command Syntax
2) WSDL Description of the PIN Modem Service by Reusing the AT Command Syntax
Although the present disclosure has been described with reference to one or more examples, workers skilled in the art will recognize that changes may be made in form and detail without departing from the scope of the disclosure and/or the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
0605065 | Jun 2006 | FR | national |
This application is a Section 371 National Stage Application of International Application No. PCT/EP2007/055417, filed Jun. 1, 2007 and published as WO 2007/141215 on Dec. 13, 2007, not in English.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP07/55417 | 6/1/2007 | WO | 00 | 5/7/2009 |