CN101573876A - 用于控制多个无线电设备的系统和方法 - Google Patents
用于控制多个无线电设备的系统和方法 Download PDFInfo
- Publication number
- CN101573876A CN101573876A CNA2007800270333A CN200780027033A CN101573876A CN 101573876 A CN101573876 A CN 101573876A CN A2007800270333 A CNA2007800270333 A CN A2007800270333A CN 200780027033 A CN200780027033 A CN 200780027033A CN 101573876 A CN101573876 A CN 101573876A
- Authority
- CN
- China
- Prior art keywords
- remote radio
- radio equipment
- wireless device
- module
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/38—Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
- H04B1/40—Circuits
- H04B1/403—Circuits using the same oscillator for generating both the transmitter frequency and the receiver local oscillator frequency
- H04B1/406—Circuits using the same oscillator for generating both the transmitter frequency and the receiver local oscillator frequency with more than one transmission mode, e.g. analog and digital modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/005—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission adapting radio receivers, transmitters andtransceivers for operation on two or more bands, i.e. frequency ranges
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/7163—Spread spectrum techniques using impulse radio
- H04B1/719—Interference-related aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B2201/00—Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
- H04B2201/69—Orthogonal indexing scheme relating to spread spectrum techniques in general
- H04B2201/707—Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
- H04B2201/70707—Efficiency-related aspects
- H04B2201/7071—Efficiency-related aspects with dynamic control of receiver resources
- H04B2201/70711—Efficiency-related aspects with dynamic control of receiver resources with modular structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Selective Calling Equipment (AREA)
Abstract
一种用于控制多个无线电设备的系统和方法,其统一不同的无线电技术和通信协议并且抽象他们,使得具有多个不同的无线电设备的个人电子设备的用户不需要知道或懂得连接到远程无线设备或服务所需要的无线电技术。中间层从用户界面应用接收请求、生成针对每个无线电设备的特定驱动程序命令,并且返回从每个无线电设备接收的信息给用户界面应用模块。用户界面应用模块发起对可用的远程无线设备的搜索、提供关于可用的远程无线设备的信息给用户,并且响应于用户的选择建立到可用的远程无线设备的连接。用户界面应用模块还将通知呈现给用户,还处理断开请求和安全证书会话。
Description
美国专利商标局
Alexandria,Virginia(亚历山大市,维吉尼亚州)
用于控制多个无线电设备的系统和方法的非临时实用专利申请
发明人:
CHRISTOPHER M.SONGER,of 1425 Everett Ave#2,LouisvilleKY,40204,a citizen of the United States of America;
(克里斯多佛.M.凇尔,美国公民,地址:肯塔基州,路易斯维尔,埃弗雷特大街#2,1425号,邮编:40204)
GENE M.CHANG,of 1714 Rosewood Avenue,Louisville,KY40204,a citizen of the United States of America;
(吉恩.M.常,美国公民,地址:肯塔基州,路易斯维尔,罗斯伍德大街,1714号,邮编:40204)
PETER E.GROSET,of 2805 Carillo Way,Carlsbad,CA 92009,acitizen of the United States of America;
(彼得.E.格罗斯特,美国公民,地址:加利福尼亚州,卡尔斯班市,卡里略路,2805号,邮编:92009)
以及
PATRICK C.LANKSWERT,of 7632 White Post Way,Louisville,KY 40222,a citizen of the United States of America.
(帕特里克.C.兰斯沃特,美国公民,地址:肯塔基州,路易斯维尔,怀特泊斯特路,7632号,邮编:40222)
代理人案号:ST279/00ST8-U
相关申请的交叉引用
本申请要求2007年1月6日提交的,申请号为60/883,777的美国临时专利申请和2006年5月23日提交的,申请号为60/802,595的美国临时专利申请的优先权,将其内容通过引用全部合并在此。
关于联邦政府赞助的研究或者开发的声明
不适用
联合研究协议的各方的名称
不适用
光盘上提交的材料的引用并入
不适用
技术领域
本发明涉及对在诸如台式个人计算机、膝上型个人计算机、个人数字助理(PDA)等的单个计算设备中包含的不同无线电类型的多个无线电设备的控制。
背景技术
如图1所示,个人电子设备10,例如个人计算机(PC)、个人数字助理(PDA)或蜂窝电话,可以具有在具备远程无线设备14a-14p的环境中使用不同的无线电技术和通信协议的不同的无线电设备11a-11e。通过使用不同无线电技术的无线电设备11a-11e可访问远程的无线设备14a-14p。
例如,如图所示,个人电子设备10可以具有GSM/CDMA蜂窝无线电设备11a、Wi-Fi(IEEE 802.11)无线电设备11b、UWB(超宽带)无线电设备11c、蓝牙无线电设备11d和另一个无线电设备11e,其代表具有未预见到的但是等价的无线通信技术的未来的无线电设备。远程的无线设备可以包括:蜂窝网络14a;使用Wi-Fi技术的第一接入点14b和第二接入点14c;第三接入点14d,第四接入点14e,无线USB集线器14f,PDA 14g,第一打印机14h,第一计算机14i,第一输入设备14j,和使用UWB技术的第一音频设备14k;第二计算机141,第二输入设备14m,和使用蓝牙技术的第二打印机14n;和远程无线设备14p,其代表使用未预见到的但是等价的无线电技术的未来的远程无线设备。
每个单独无线电设备11a-11e具有用于管理和控制无线电设备的单独实用工具(utility)。这主要是因为本地的无线电类型具有不同的物理(PHY)层、数据链路层(DLL)的不同的媒介访问控制(MAC)部分,以及,因此在个人的电子设备上的用于控制本地的无线的无线电设备的不同的设备驱动程序和不同的实用工具(用户界面应用)。用户困惑是因为他们不知道为了使用远程无线设备他们将使用哪个实用工具来管理和控制哪个无线电设备。因此,需要能够用于全部本地的无线电设备11a-11e的单个实用工具,来消除用户要知道正在使用什么无线电技术来访问远程无线设备14a-14p的需求,以及允许用户识别他们希望使用的远程无线设备,而不用考虑用于访问远程设备的无线电设备或技术或用于控制无线电设备的实用工具。
此外,研发利用本地无线的无线电设备连接远程无线设备的应用的软件研发者必须在当前使用不同的命令结构来执行相似的泛型(generic)函数(例如发现设备、连接/断开设备、设置安全性等)。在另一方面,这种情况是不同的无线电设备类型在多个等级上具有基本上不同的接口的结果。因此,需要允许开发者泛型地处理不同的无线无线电设备类型的实用工具以及允许第三方应用访问这样的实用工具的功能的实用工具。
发明内容
在此描述用于控制多个无线电设备的系统和方法满足这些和其他需要,其有利地将不同的无线电技术和通信协议统一起来并且将其抽象化,使得想要使用远程无线设备或服务的、具有多个不同无线电设备的个人电子设备的用户不需要知道或者懂得连接到给定设备所需要的无线电技术。
根据本发明的一个方面,用于在个人电子设备中控制多个无线电设备的系统包括:程序接口模块,用于接收关于远程无线设备的请求并且提供对这些请求的响应;本地硬件管理器模块,用于从程序接口模块接收请求、格式化用于每个无线电设备的泛型硬件接口请求、接收对泛型硬件接口请求的泛型响应,并且提供对程序接口模块的响应;和与每个无线电设备相关联的适配层模块。每个适配层模块从本地硬件管理器模块接收泛型硬件接口请求、基于泛型硬件接口请求生成针对相关联的无线电设备驱动程序模块的特定驱动程序命令、将特定驱动程序命令发送到相关联的无线电驱动程序模块、从无线电驱动程序模块接收特定的响应、基于特定的响应生成泛型响应,并且提供泛型响应给本地硬件管理器模块。
系统还可以包括远程设备管理器模块和用户界面应用模块。远程设备管理器模块用于管理用于可用的远程无线设备的远程设备对象。用户界面应用模块用于:从用户接收改变可用的远程无线设备中的至少一个的连接状态(即,连接/断开)的请求;发送改变可用的远程无线设备中的所述至少一个的连接状态的请求给程序接口模块;从程序接口模块接收对改变所述远程无线设备中的所述至少一个的连接状态的请求的响应;并且将该响应呈现给用户。另外,用户界面应用模块还用于接收不是由用户发起的(即,未预期的断开事件)连接状态中的改变的通知,并且将这些通知呈现给用户。
相应地,根据本发明的另一个方面,一种用于在个人电子设备中控制多个无线电设备的方法包括:响应于从用户接收到搜索可用的远程无线设备的指令,搜索对于多个无线电设备中的每一个设备可用的远程无线设备;响应于接收到指示远程无线设备是可用的信息,将关于可用的远程无线设备的信息呈现给用户;以及响应于从所述用户接收到建立与所选择的远程无线设备的连接的请求,建立与远程无线设备中的至少一个的连接。
该方法还可以包括:格式化用于搜索可用的远程无线设备的泛型硬件接口请求;基于泛型硬件接口请求生成用于搜索可用的远程无线设备的针对每个无线电设备的特定驱动程序命令;将特定驱动程序命令发送到与每个无线电设备相关联的无线电设备驱动程序模块;以及从每个无线电设备驱动程序模块接收指示对于每个无线电设备可用的远程无线设备的信息。
另外,该方法还可以包括:从用户接收断开请求并且应响应断开远程无线设备;接收连接的状态改变的通知并且将该通知呈现给用户,以及确定需要安全证书来访问远程无线设备并且从用户请求/接收这样的安全证书。
通过参考下面的对示例性实施例和附图的详细描述可以获得更好的理解。
附图说明
图1是在具有通过使用不同的无线电技术的无线电设备可访问的远程无线设备的环境中的具有使用不同的无线电技术和通信协议的不同无线电设备的个人电子设备的方框图。
图2是根据本发明的用于控制多个无线电设备的示例系统的功能框图。
图3是图2的示例系统的示例性用户界面应用模块的初始屏幕的屏幕截图。
图4是图2的示例系统的示例性用户界面应用模块的连接向导屏幕的屏幕截图。
图5A是图2的示例系统的示例性用户界面应用模块的控制台屏幕的屏幕截图。
图5B是图5A的控制台屏幕的屏幕截图,在其上显示了示例性安全证书对话窗口。
图6是图2的示例系统的中间层模块的分层结构图。
图7是用于示例性本地硬件管理器模块的类图,其定义了图6的中间层模块的抽象类。
图8是用于图6的中间层模块的示例性本地硬件对象的类图。
图9是用于图6的中间层模块的示例性本地适配器对象的类图。
图10是用于图6的中间层模块的示例性远程设备管理器模块的类图。
图11是用于图6的中间层模块的示例性远程设备对象的类图。
图12是根据本发明的用于控制多个无线电设备的示例性系统和方法的“枚举可用的远程无线设备”函数的示例的时序图。
图13是根据本发明的用于控制多个无线电设备的示例性方法的用户连接流程图。
具体实施方式
根据本发明的示例性实施方式,不同的无线电和网络技术是统一和抽象的,因此希望利用远程无线设备或服务的用户不需要知道或懂得连接给定设备所需要的无线电技术。这是通过使用懂得每个底层无线电设备的单个实用工具来替换以前用于管理单独的无线电设备的多个单独的实用工具来实现的。这提供一种特别的用户体验,用户可以在使用相同方法的任何无线电设备上发现、连接和访问远程无线设备和服务。
A.逻辑软件层
图2是根据本发明的用于控制多个无线电设备的示例系统16的功能框图,包括用户界面(UI)应用模块18和中间层对象或模块(软件开发工具包(SDK))20。还有如图所示:本地无线电设备12a-12e、用于每个本地无线电设备12a-12e的无线电设备驱动程序模块22a-22g,和第三方应用24。用户界面应用模块18向用户提供单一的、统一的接口,允许用户发现和使用远程无线设备(例如,图1:14a-14p)。中间层模块20用来为每个本地无线电设备12a-12e转化或调整在用户界面应用模块18和无线电设备驱动程序模块22a-22g之间的指令和通知。另外,中间层模块20允许应用,例如第三方应用24,使用中间层模块18的指令和通知调整功能来和无线电设备驱动程序模块22a-22g通信以及控制无线电设备驱动程序模块22a-22g。
应该注意到,无线电设备驱动程序模块22a-22g代表控制特定于每个无线电设备12a-12e的操作的软件模块。这些软件模块可以采取堆栈、设备驱动程序和操作系统编程接口的形式,并且在无线电设备驱动程序模块22a-22g中的术语“驱动程序”的使用不意欲对要求保护的本发明的范围进行限制。也应注意,无线电设备驱动程序模块22a-22g通常由无线电设备硬件厂商提供。
另外,可以理解的是,在此描述的本发明的示例实施方式是通过面向对象软件实现的,并且因此,如下所述,中间层(SDK)对象20的组件是他们本身的对象。然而,本领域技术人员将认识到,这些对象的功能可以由替换的功能和结构的实施来完成。因此,示例性实施方式的一些“对象”将被称作“模块”,并且可以理解的是,出于本说明书和所附权利要求的目的,术语“对象”和“模块”涉及在此描述的软件对象的任何结构和功能的实施。
B.用户界面应用
图3到图5B是来自示例性用户界面(UI)应用模块的屏幕的屏幕截图。图3是初始屏幕30。图4是连接向导屏幕40。图5A是控制台屏幕50。图5B是控制台屏幕50的屏幕截图,在其上显示了示例性安全证书对话窗口58。
初始屏幕30(图3)为用户提供通过选择连接按钮32而使用连接向导屏幕(图4)的连接向导界面的选择,或提供通过选择查看控制台按钮34直接地到控制台屏幕50(图5A)的选择。
连接向导屏幕40(图4)为用户提供代表许多远程无线设备类别的一组设备类别图标42以允许用户将可用的远程无线设备缩窄到仅仅某一类别的设备。选择设备类别图标之一启动在用于远程无线设备的全部的本地无线电设备(远程无线设备是所选择的类别的设备)上的搜索,并且带用户到控制台屏幕50(图5A)以显示所选类别的可用的远程无线设备。另外,“选择全部”按钮44将带用户到控制台屏幕50(图5A),在那里显示全部可用的设备,而不通过设备类别过滤可用的设备。
控制台屏幕50(图5A)被再划分为可用的窗口51、连接的窗口52、以及显示控制窗口53。可用的窗口51提供了代表可用的远程无线设备的图标的显示。如果控制台屏幕50作为用户选择初始屏幕30(图3)的查看控制台按钮34的结果而被显示,那么全部可用的远程无线设备被显示在可用的窗口51中。然而,如果控制台屏幕50作为用户选择连接向导屏幕40(图4)的特定的设备类别图标的结果而被显示,那么只有所选择的设备类别的远程无线设备将被显示在可用的窗口51中,并且对应于所选择的设备类别的图标被突出显示在显示控制窗口53中。
在示例性控制台屏幕50中,已经选择了“接入点”设备类别。在显示控制窗口53中的“接入点”图标54被突出显示,并且在可用的窗口51中通过接入点图标55指示单个可用的远程接入点设备。有利地,在不考虑用于与可用的远程接入点通信的本地无线电设备或本地无线电技术的情况下,识别和显示单个可用的远程接入点设备,因此用户不需要知道或关心本地无线电设备或本地无线电技术的细节。
为了使用示例性用户界面(UI)应用18发起与可用的远程无线设备(例如单个可用的远程接入点设备)的连接,用户可以:1)从可用的窗口51拖放接入点图标55到连接的窗口52;2)双击接入点图标55;或3)右击接入点图标55并且在作为右击动作的结果而打开的弹出菜单57上点击“连接”菜单项56。
为了从已连接的设备断开,用户可以:1)从连接的窗口52拖放设备图标;或2)右击设备图标并且在作为右击动作的结果而打开的弹出菜单上点击“断开”菜单项。
显示在连接状态方面的变化是通过:1)在连接的窗口52和可用的窗口51之间移动设备图标;并且2)在屏幕的右下角显示消息(在用户界面(UI)应用18的显示被最小化时特别有用)。
图5B是控制台屏幕50的屏幕截图,在其上显示了示例性安全证书对话窗口58。如果远程设备(例如可用的远程接入点设备)要求安全证书,或如果由设备提供的服务要求安全证书,那么显示安全证书对话窗口(例如图5B的示例性安全证书对话窗口58)以允许用户输入他们的安全证书。
C.中间层(SDK)分层结构
图6是中间层(SDK)对象或模块20的分层结构图。如图所示,中间层模块20具有程序接口(应用程序接口(API))模块60、本地硬件管理器模块61、适配层模块62a-62e,和远程设备管理器模块63。每个适配层模块62a-62e由用于每个无线电设备(对应于每个物理的无线电设备12a-12e(图2))的本地硬件对象64a-64e和用于由每个无线电设备支持的每个不同的通信协议的本地适配器对象65a-65h组成。远程设备对象66a-66p是对于每个可用的远程无线设备(例如对应于图1的远程无线设备14a-14p)的具体实例。
程序接口(API)模块60将中间层(SDK)模块20的功能(functionality)暴露给UI应用模块18和第三方应用24,该中间层模块20的功能包括基本函数:枚举可用的远程无线设备、连接/断开远程设备,和通知(包括连接事件、断开事件、安全事件和错误/警告事件)。如下所述,还通过程序接口(API)模块60暴露中间层(SDK)模块20的其他的函数。
本地硬件管理器模块61保持代表本地无线电设备(即,图1的无线电设备12a-12e)的对象的集合并且为将在整个集合上执行的操作提供集合级(collection-level)服务(即,获取远程设备、断开全部远程设备、关闭全部本地无线电设备的电源(即“飞行模式”))。同样地,本地硬件管理器模块从程序接口(API)模块60接收请求、格式化对每个无线电设备的泛型硬件接口请求、从泛型硬件接口请求的响应接收泛型响应,并且将响应提供给程序接口(API)模块60。
图7是用于示例性本地硬件管理器模块(例如,图6中61)的类图,其定义抽象的本地硬件管理器类70,包括抽象的操作。表1中包含的是用于本地硬件管理器类70的示例性属性和操作的描述。
表1
LocalHardwareManager::ConnectToDevice(RemoteDevice) | 将本地无线电设备连接到对象中的远程设备。该函数将检查RemoteDevice中的无线类型。然后,它将决定使用哪一个适配层模块。 |
LocalHardwareManager::Disconnect(RemoteDevice) | 将本地无线电设备从对象中的远程设备断开。该函数将检查RemoteDevice中的无线类型。然后,它将决定使用哪一个适配层模块。 |
LocalHardwareManager::Cancelconnect() | 将发送取消给连接进程,用于被传递进来的硬件类型。 |
LocalHardwareManager::InitiateRemoteDeviceSearch(TypeOfDevices,DeviceFamilyType) | 使用TypeOfDevices和SharedProfileType过滤器,开始远程设备搜索。被传递进来的硬件类型可以是全部定义的硬件类型的逻辑或。 |
LocalHardwareManager::ConnectToDevice(RemoteDevice) | 将本地无线电设备连接到对象中的远程设备。该函数将检查RemoteDevice中的无线类型。然后,它将决定使用哪一个适配层模块。 |
返回图6,适配层模块62a-62e接收来自本地硬件管理器模块61的泛型硬件接口请求并且根据泛型硬件接口请求产生针对他们的关联的无线电设备驱动程序模块的特定驱动程序命令。然后,适配层模块62a-62e将特定的驱动程序命令发送到关联的无线电设备驱动程序模块(例如图2的22a-22g),从无线电设备驱动程序模块接收特定的响应,并且根据特定的响应产生泛型响应。适配层模块62a-62e提供泛型响应给本地硬件管理器模块61。
如提及的,每个适配层模块62a-62e由用于每个无线电设备(对应于物理的无线电设备12a-12e(图2))的本地硬件对象64a-64e和用于由每个无线电设备支持的每个不同的通信协议的本地适配器对象65a-65h组成。例如,超宽带(UWB)技术允许单个无线电设备(例如图2中的12c)使用许多通信协议(例如蓝牙3.0(例如图2中的22d)、无线USB主设备(例如图2中的22e)、无线USB设备(例如图2中的22e),和WiNet(例如图2中的22f)协议))来运行。本地硬件对象64a-64e提供物理的无线电设备特征与函数,例如MAC地址和启用/停用。本地适配器对象65a-65h提供通信协议特征与函数,例如设备名、友好名称、获取设备和连接/断开远程设备。用于适配层模块62a-62e的类属性和操作还提供用于程序接口(API)模块60的“句柄”来直接地调用适配层模块62a-62e。
图8是用于本地硬件对象(例如,图6的64a-64e)的类图,包括抽象的本地硬件类80、示例的具体的本地WiFi硬件类82,和示例的具体的本地UWB硬件类84的定义。表2中包含的是关于本地硬件类80的示例性属性和操作的描述。
表2
LocalHardware::DeviceAddress | 到给定的MacAddress_t结构的LocalHardware对象的设备地址。 |
LocalHardware::Enabled | 如果LocalHardware被启用,那么函数返回TRUE,否则,返回FALSE。 |
LocalHardware::RadioEnabled | 无线电设备启用状态。TRUE:无线电设备被启用,FALSE:无线电设备没有被启用。 |
LocalHardware::ErrorState | LocalHardware对象的HardwareErrorState_t,该函数应该仅在接收LocalHardware对象在错误状态中的回调之后被调用。 |
LocalHardware::DeviceName | 用户的设备名称 |
LocalHardware::DevicePath | 被设备驱动器识别的设备路径 |
LocalHardware::GetAdapters(DeviceList) | 该函数获取该LocalHardware的全部子适配器 |
LocalHardware::EnableHardware() | EnableHardware将使用SetupDI***函数以便手动将硬件强制设为实际启用状态。只有Hardware当前在停用状态中时,才应该调用该函数。 |
LocalHardware::DisableHardware() | 使用SetupDI***函数以便手动将硬件强制设为实际停用状态。该函数应该仅在Hardware当前处于启用状态下被调用。 |
图9是用于本地适配器对象(例如图6的65a-65h)的类图,包括抽象的本地适配器类90、示例的具体的本地WiFi适配器类92,和示例的具体的本地UWB硬件类94的定义。表3中包括的是关于抽象的本地适配器类90的示例性属性和操作的描述。
表3
LocalAdapter::GetDevices(...) | 从该LocalAdapter获取全部可连接的设备。 |
LocalAdapter::GetConnectedDevices(DeviceList) | 获取已连接的设备的列表,所述设备具有LocalAdapter对象作为他们的父硬件,并且是已连接的。 |
LocalAdapter::ParentHardware | 与该本地设备相关联的硬件 |
LocalAdapter::Enabled | 如果LocalAdapter的硬件状态是HardwareState_Enabled,那么函数返回TRUE,否则,返回FALSE。 |
LocalAdapter::ActivityState | 该LocalAdapter对象的当前活动状态 |
LocalAdapter::MaximumNumberOfConnectionsAllowed | 对派生的硬件类型所允许的最大连接数 |
LocalAdapter::IsNewConnectionAllowed | 是否允许新连接 |
LocalAdapter::HardwareType | 本地无线电设备的硬件类型 |
LocalAdapter::HardwareState | LocalAdapter对象的HardwareState_t |
LocalAdapter::ErrorState | LocalAdapter对象的HardwareErrorState_t,该函数应该仅在接收LocalHardware对象在错误状态中的回调之后被调用。 |
LocalAdapter::DeviceName | 设备名称 |
LocalAdapter::FriendlyName | 该设备的友好名称 |
LocalAdapter::DevicePath | 设备路径 |
LocalAdapter::SearchTime | 在执行发现时,该LocalAdapter对象将要花费的时间量。 |
LocalAdapter::EnableHardware() | 使用SetupDI***函数以便手动将硬件强制设为实际启用状态。该函数应该仅在硬件当前处于停用状态中时被调用。 |
LocalAdapter::DisableHardware() | 使用SetupDI***函数以便手动将硬件强制设为实际停用状态。该函数应该仅在硬件当前处于启动状态中时被调用。 |
LocalAdapter::Start() | 使用Start来开始WiCenterSDK管理该LocalAdapter对象。这是在与驱动程序通信的句柄或者设备自身被打开的时候。如果成功,该函数将该ILocalAdapter对象的HardwareState设置为启用状态。 |
LocalAdapter::Stop() | 使用Stop来停止WiCenterSDK管理该LocalAdapter对象。因此,到设备的全部句柄和任何与设备正在进行的活动被中止,并且不尝试与设备的任何进一步的通信。这会使该对象的HardwareState被设置为停用状态。 |
LocalAdapter::ConnectToDevice(RemoteDevice) | ConnectToDevice是基类的纯虚函数,其必须被派生类覆盖。该派生类将执行硬件特定的连接请求。 |
LocalAdapter::DisconnectFromDevice(RemoteDevice) | Disconnect to device将断开RemoteDevice,RemoteDevice是从本地硬件无线电设备传递给函数的。这个定义用于基虚类。 |
LocalAdapter::CancelConnect() | 被用来取消连接尝试。如果该函数在LocalAdapter对象正尝试连接到RemoteDevice时被调用,那么连接尝试将被停止。 |
LocalAdapter::DisconnectAllDevices() | DisconnectAllDevice将全部远程设备从本地硬件无线电设备断开。该定义用于基虚类。 |
LocalAdapter::InitiateRemoteDeviceSearch() | IntiateRemoteDeviceSearch被用于开始在LocalAdapter对象上搜索远程设备。只有在我们处于启用硬件状态时该函数才会成功。该函数将最有可能产生线程来执行搜索,并且使用回调来指示它在发现进程中发现的任何RemoteDevice对象。 |
LocalAdapter::Unauthenticate(RemoteDevice) | 其将使指定的RemoteDevice变成未认证,将移除我们保存的任何安全信息。 |
表4中包含的是关于具体的本地WiFi适配器类92的示例性属性和操作的描述。
表4
LocalWiFiAdapter::WifiRunState | 该wifi设备的当前运行状态 |
LocalWiFiAdapter::ConnectToDevice(RemoteDevice) | 尝试连接到RemoteDevice对象。必须在调用该函数之前在该设备对象上设置全部属性。这包括诸如SSID、加密、认证之类等。该函数将不会阻滞,因为它创建新线程。 |
LocalWiFiAdapter::CancelConnect() | 尝试取消当前正在进行的任何连接尝试。 |
LocalWiFiAdapter::DisconnectFromDevice(RemoteDevice) | 断开RemoteDevice,该RemoteDevice是从本地硬件无线电设备传递给函数的。该定义用于LocalWifiDevice。在Wifi设备中,实际上远程设备没有用在该调用中。 |
LocalWiFiAdapter::Disconnect() | 断开远程接入点连接到其的任何本地设备。这可以在远程设备是未知的时候被使用。 |
LocalWiFiAdapter::EnableHardware() | 使用SetupDI***函数以便手动将硬件强制设为实际启用状态。该函数应该只在硬件当前处于停用状态下被调用。 |
LocalWiFiAdapter::DisableHardware() | 使用SetupDI***函数以便手动将硬件强制设为实际停用状态。该函数应该只在硬件当前处于启用状态下被调用。 |
LocalWiFiAdapter::Stop() | 使用Stop停止该WiCenterSDK管理该LocalHardware对象。因此到设备的全部句柄和与设备正在进行的任何活动被停止,并且不尝试与设备进行进一步的通信。这应该将该对象的HardwareState设置为停用状态。 |
LocalWiFiAdapter::Start() | 使用Start开始WiCenterSDK管理该LocalHardware对象。这是在与驱动程序通信的句柄或设备自身被打开的时候。如果成功,该函数将该LocalHardware对象的HardwareState设置为启用状态。 |
LocalWiFiAdapter::DisconnectAllDevices() | DisconnectAllDevices将从本地硬件无线电设备断开全部远程设备。该定义用于LocalWifiDevice。 |
LocalWiFiAdapter::InitiateRemoteDeviceSearch() | InitiateRemoteDeviceSearch被用于开始在该LocalHardware对象上搜索远程设备。只有当我们在启用硬件状态下时,该函数将是成功的。该函数将最可能产生线程来执行搜索,并且使用回调来指示它在发现进程中发现的任何RemoteDevice对象。 |
LocalWiFiAdapter::PriorityList | 用于该设备的优先权设备集合列表 |
LocalWiFiAdapter::PriorityConnectionsEnabled | 自动优先权连接是否被启用 |
LocalWiFiAdapter::IPAddress | 与该无线网卡相关联的IP地址 |
再返回图6,远程设备管理器模块63是主要用于远程设备对象66a-66p的“容器”,远程设备对象66a-66p包含了可用的远程无线设备的属性。因此,诸如通过类来过滤远程设备列表和增加/删除远程设备的操作是远程设备管理器模块63的示例性操作。
远程设备管理器还通过消除重复条目和实施预定的优选连接方法逻辑来防止单一的远程无线设备被“看到”和在可用的远程设备描述中被多次显示。当远程无线设备(例如,图l的14a-14p)本身具有使用不同的无线电技术的不同的无线电设备的时候可以发生这种情况,并且每个远程无线设备无线电设备通过不同的无线电(例如,图2的12a-12e)被看到。
图10是用于示例性远程设备管理器模块(例如图6中的63)的类图,其定义抽象的远程设备管理器类100,包括抽象的操作。表5中包含的是关于远程设备管理器类100的示例性属性和操作的描述。
表5
RemoteDeviceManager::GetDevices(Filter,Devicelist) | 基于过滤器将设备返回到用户 |
RemoteDeviceManager::AddDevice(RemoteDevice) | 将给定设备加入远程设备对象的内部向量 |
RemoteDeviceManager::DeleteDevice(RemoteDevice) | 从我们的设备内部列表中移除给定的RemoteDevice对象。该函数还将删除RemoteDevice。 |
RemoteDeviceManager::FindOrCreateDevice(HardwareType,RemoteDevice,Deviceparent,Options) | 创建远程设备对象。它将首先检查看是否设备列表中存在具有相同地址的设备。如果存在,它将返回现有的远程设备。如果不存在,它将创建新的远程设备对象,将它插入列表,然后返回对象给用户。 |
RemoteDeviceManager::CreateNewDevice(HardwareType,RemoteDevice,Deviceparent)- | 创建新设备。这被用于创建没有通过远程设备搜索发现的设备。这将通常被用于不广播他们的AP的远程接入点。将使用回调将该返回设备发送到SDK。 |
图11是用于远程设备对象(例如,66a-66p)的类图,包括示例的抽象的远程设备类110、示例的具体的远程接入点设备类112、和示例的具体的远程无线USB设备类114的定义。表6中包含的是用于远程设备对象类110的示例性属性和操作的描述。
表6
RemoteDevice::TimeLastSeen | 除了未知状态之外,在任何状态中该设备最后被看到的时间 |
RemoteDevice::TimeLastConnected | 该设备最后处于连接状态的时间 |
RemoteDevice::DeviceAddress | 用于该RemoteDevice对象的Mac地址。不是全部无线远程设备都有一个。 |
RemoteDevice::ErrorState | 用于该设备的Remote Error State。这应该仅在状态被报告为出错之后被查询。 |
RemoteDevice::Manager | RemoteDevice管理器 |
RemoteDevice::AuthenticationState | RemoteDevice的当前认证状态。 |
RemoteDevice::ConnectionState | RemoteDevice的当前连接状态。 |
RemoteDevice::ActivityState | RemoteDevice的当前活动状态。 |
RemoteDevice::DeviceFamily | RemoteDevice的DeviceFamily。 |
RemoteDevice::DeviceType | RemoteDevice的硬件类型。 |
RemoteDevice::Connected | 如果设备具有已连接状态,则为TRUE。 |
RemoteDevice::DeviceName | RemoteDevice的名称 |
RemoteDevice::UniqueID | 表示该设备的UniqueID。由于全部无线设备似乎具有不同的方式来确定其唯一性,该函数已经被设为虚。例如,它可以是:Mac地址,SSID,或者CDID。在RemoteAccessPoint中被实现。 |
RemoteDevice::SignalStrength | 该RemoteDevice的信号强度。该函数为虚,因为从RSSI值映射到该SignalStrength_t枚举将对于每个远程无线设备类型是不同的。 |
RemoteDevice::Disconnect() | 从该RemoteDevice对象断开。 |
RemoteDevice::Connect() | 连接到该RemoteDevice对象。这不是在全部无线设备上都可能。 |
RemoteDevice::CancelConnect() | 用于取消连接。如果该RemoteDevice处于连接状态中,那么连接将尝试被停止。设备连接状态的回调应该在调用该函数之后被接收,以便指示取消尝试是否是成功的。 |
RemoteDevice::RepairConnection() | 修复与该RemoteDevice对象的连接,通常在用户看到连接问题,但是由于我们不知道的某种原因时,调用该函数。该函数应该实质上结束现有的连接,并且如果可能,尝试重新连接。 |
表7中包含的是关于具体的远程接入点设备对象类112的示例性属性和操作的描述。
表7
RemoteAccessPoint::SignalStrength | RSSI值是标准枚举,因此全部远程设备报告相似的连接类型。 |
RemoteAccessPoint::DataTransferRate | 该设备的数据传输速率。 |
RemoteAccessPoint::DeviceSecurity | 该函数将报告该RemoteAccessPoint是否是安全的。只要加密模式不是WEPDisabled,那么该设备将被报告为安全的。因此,WEP,WPA等也将被报告为安全的。 |
RemoteAccessPoint::UniqueID | 该RemoteAccessPoint的UniqueID。RemoteAccessPoint的UniqueID是该设备的SSID。该函数确保我们没有具有相同SSID的多个设备。 |
RemoteAccessPoint::UseNetworkInformation | 获取该RemoteAccessPoint是否应该在它连接到网络信息结构时使用网络信息结构。 |
RemoteAccessPoint::APParameters | 将WLANAPParameters结构中的全部参数放入该RemoteAccessPoint对象中。 |
RemoteAccessPoint::NetworkInformation | 该RemoteAccessPoint正在使用的网络信息结构。 |
RemoteAccessPoint::KeyIndex | 用于该RemoteAccessPoint的密钥索引。 |
RemoteAccessPoint::HexKey[] | 用于该RemoteAccessPoint的十六进制密钥。 |
RemoteAccessPoint::StringKey[] | 用于该RemoteAccessPoint的串密钥。 |
RemoteAccessPoint::NetworkMode | 用于该RemoteAccessPoint的网络模式。 |
RemoteAccessPoint::Encryption | 用于该RemoteAccessPoint的加密模式。 |
RemoteAccessPoint::AuthenticationMode | 用于该RemoteAccessPoint的认证模式。 |
RemoteAccessPoint::SupportedDataRates[] | 用于该RemoteAccessPoint的所支持的数据速率。 |
RemoteAccessPoint::Connect() | 该函数将调用它的本地wifi设备父辈以便连接该设备。该设备必须没有处于连接状态,否则该调用将失败。 |
RemoteAccessPoint::Disconnect() | 该函数将断开设备,如果设备当前被报告为已连接。该父辈硬件变量必须被设置,因为该函数将需要父辈本地wifi设备以执行实际的断开。 |
RemoteAccessPoint::RepairConnection() | 该函数将调用其本地wifi设备父辈,并且确保该设备已经被连接。然后,它将断开,并且重新连接。 |
RemoteAccessPoint::Unauthenticate() | 该函数将删除存储在该设备上的全部密钥。从它可以位于其中的任何自动连接列表中移除它,或者将状态改变为未认证状态。 |
表8中包含的是关于具体的远程无线USB设备对象类114的示例性属性和操作的描述。
表8
RemoteWirelessUSBDevice::AuthenticationPINCode | |
RemoteWirelessUSBDevice::CDID | 用于该设备的CDID。 |
RemoteWirelessUSBDevice::CK | 用于该设备的CK。 |
RemoteWirelessUSBDevice::SignalStrength | 该设备的信号强度。 |
RemoteWirelessUSBDevice::RSSI | 该设备的信号强度。 |
RemoteWirelessUSBDevice::DataTransferRate | |
RemoteWirelessUSBDevice::USBDeviceType | 用于该设备的USB设备类型。 |
RemoteWirelessUSBDevice::USBClassOfDevice | 用于该设备的USB设备类。 |
RemoteWirelessUSBDevice::DeviceSecurity | 如果该设备是安全的,那么返回TRUE,这将总是被返回,因为全部无线USB设备都是安全的。 |
RemoteWirelessUSBDevice::UniqueID | 该设备的UniqueID,就是CDID。 |
RemoteWirelessUSBDevice::Disconnect() | 从该设备断开。该函数将只在设备已经被连接,并且具有合法的父辈本地无线USB设备的情况下是成功的。 |
D.枚举可用的远程无线设备
图12是根据本发明用于多个无线电设备控制的示例性方法的“枚举可用的远程无线设备”函数的示例的时序图或调用流程图。如图所示,用户界面应用模块18(或图2中的第三方应用24)通过程序接口(API)模块60调用中间层(SDK)模块20。程序接口模块60将搜索可用的远程无线设备的请求发送到本地硬件管理器模块61。本地硬件管理器模块61接收请求和格式化泛型硬件接口请求,并且将泛型硬件接口请求发送到每个适配层模块62a-62e。每个适配层模块62a-62e异步地生成合适的驱动程序命令给它的关联的无线电设备驱动程序模块(图2中的22a-22g)。然后,无线电设备驱动程序模块促使他们的关联的无线电设备轮询可用的远程无线设备,并且返回可用的远程无线设备的列表给关联的适配层模块62a-62e。然后每个适配层模块62a-62e生成标识可用的远程无线设备的泛型响应,并且返回泛型响应给本地硬件管理器模块61,本地硬件管理器模块61通过程序接口(API)模块60提供远程设备列表给用户界面应用模块18(或图2中的第三方应用24)。
E.连接到远程无线设备
图13是根据本发明的用户连接流程图,包括步骤:S1302用户请求可用的远程无线设备的列表;S1304用户选择待连接的可用的远程无线设备;S1306确定是否需要安全证书来连接远程无线设备;如果是这样的话,S1308用户输入安全证书;S1310为所选择的设备设置安全证书;S1312请求连接到远程设备;S1314确定连接是否需要安全证书;如果是这样的话,S1316用户输入安全证书;S1318将安全证书发送到中间层模块;S1320试着连接到远程无线设备;S1322确定是否完成连接过程;如果没有完成,S1324通知用户并且返回步骤S1302,或者,如果完成,返回步骤S1302。
本领域技术人员将认识到,在不脱离本发明的教示的情况下,额外的步骤和配置是可允许的。为了清楚地理解,主要给出了详细说明,特别是所公开的示例性实施方式的具体细节,并且从中将明白没有不必要的限制,是因为,本领域技术人员在阅读了所公开的内容后,各种修改应该是明显的并且在不脱离本发明所要求的范围或者精神的情况下,可以进行各种修改。
Claims (21)
1.一种在具有不同的无线电技术的多个无线电设备的个人电子设备中控制多个无线电设备的方法,在具有通过所述多个无线电设备中的至少一个可访问的至少一个远程无线设备的环境中,所述方法包括:
响应于从用户接收到搜索可用的远程无线设备的指令,搜索对于所述多个无线电设备中的每个无线电设备可用的远程无线设备;
响应于接收到指示可用的远程无线设备的信息,将关于可用的远程无线设备的信息呈现给所述用户;以及
响应于从所述用户接收到建立与所述远程无线设备中的至少一个的连接的请求,建立与所述远程无线设备中的所述至少一个的连接。
2.根据权利要求1所述的用于控制多个无线电设备的方法,其中搜索远程无线设备的所述步骤包括:
格式化用于搜索可用的远程无线设备的泛型硬件接口请求;
根据所述泛型硬件接口请求生成用于搜索可用的远程无线设备的针对每个无线电设备的特定驱动程序命令;
将所述特定驱动程序命令发送到与每个无线电设备相关联的无线电设备驱动程序模块;以及
从每个无线电设备驱动程序模块接收指示对于每个无线电设备可用的远程无线设备的信息。
3.根据权利要求2所述的用于控制多个无线电设备的方法,还包括从所述用户接收从远程无线设备断开的断开请求,以及响应于接收到所述断开请求,从所述远程无线设备连接的所述无线电设备断开所述远程无线设备。
4.根据权利要求2所述的用于控制多个无线电设备的方法,还包括从所述相关联的无线电设备驱动程序模块接收在所述个人电子设备和所述远程无线设备之间的所述连接的状态变化的通知,以及将所述连接的状态变化的所述通知呈现给所述用户。
5.根据权利要求1所述的用于控制多个无线电设备的方法,还包括确定对所述用户已请求连接的所述远程无线设备的访问是否需要安全证书,以及,如果是这样的话,从所述用户请求用于访问所述远程无线设备的安全证书,以及响应于从所述用户接收到所述安全证书,为所述用户提供用于访问所述远程无线设备的安全证书。
6.根据权利要求5所述的用于控制多个无线电设备的方法,还包括确定由所述用户已请求连接的所述远程无线设备提供的服务是否需要安全证书,从所述用户请求用于所述远程无线设备提供的所述服务的安全证书,以及响应于从所述用户接收到用于所提供的所述服务的所述安全证书,为所述用户提供用于所提供的所述服务的安全证书。
7.一种在具有通过所述多个无线电设备中的至少一个可访问的至少一个远程无线设备的环境中、在具有不同的无线电技术的多个无线电设备的个人电子设备中控制多个无线电设备的方法,所述方法包括:
从用户接收用于搜索对于每个无线电设备可用的远程无线设备的请求;
格式化用于搜索可用的远程无线设备的泛型硬件接口请求;
根据所述泛型硬件接口请求生成用于搜索可用的远程无线设备的针对每个无线电设备的特定驱动程序命令;
将所述特定驱动程序命令发送到与每个无线电设备相关联的无线电设备驱动程序模块;
从每个无线电设备驱动程序模块接收指示对每个无线电设备可用的远程无线设备的信息;以及
将指示所述可用的远程无线设备的所述信息呈现给所述用户而不考虑所述无线电设备,所述远程无线设备对于所述无线电设备是可用的。
8.根据权利要求7所述的用于控制多个无线电设备的方法,还包括从所述用户接收连接到从所述可用的远程无线设备中选择的远程无线设备的请求,以及使用所述无线电设备来建立在所述个人电子设备和所述远程无线设备之间的连接,所述远程无线设备对于所述无线电设备是可用的。
9.根据权利要求8所述的用于控制多个无线电设备的方法,还包括从所述用户接收从远程无线设备断开的请求,以及从所述远程无线设备连接的所述无线电设备断开所述远程无线设备。
10.根据权利要求8所述的用于控制多个无线电设备的方法,还包括从所述相关联的无线电设备驱动程序模块接收在所述个人电子设备和所述远程无线设备之间的所述连接的状态变化的通知,以及将所述连接的状态变化的所述通知呈现给所述用户。
11.一种在具有远程无线设备的环境中、在具有不同的无线电技术的多个无线电设备的个人电子设备中控制多个无线电设备的系统,每个所述无线电设备具有相关联的无线电驱动程序模块,所述系统包括:
程序接口模块,用于接收关于所述远程无线设备的请求和提供对所述请求的响应;
本地硬件管理器模块,用于从所述程序接口模块接收请求、格式化用于每个无线电设备的泛型硬件接口请求、接收对所述泛型硬件接口请求的泛型响应,和提供所述响应到所述程序接口模块;以及
适配层模块,其与每个无线电设备相关联,每个适配层模块:
从所述本地硬件管理器模块接收所述泛型硬件接口请求;
根据所述泛型硬件接口请求生成针对所述相关联的无线电设备驱动程序模块的特定驱动程序命令;
将所述特定驱动程序命令发送到所述相关联的无线电设备驱动程序模块;
从所述无线电设备驱动程序模块接收特定响应;
根据所述特定响应生成泛型响应;以及
提供所述泛型响应给所述本地硬件管理器模块。
12.根据权利要求11所述的用于控制多个无线电设备的系统,还包括用于管理用于可用的远程无线设备的远程设备对象的远程设备管理器模块。
13.根据权利要求12所述的用于控制多个无线电设备的系统,还包括用户界面应用模块用于:
从用户接收改变所述可用的远程无线设备中的至少一个的所述连接状态的请求;
将改变所述可用的远程无线设备中的所述至少一个的所述连接状态的所述请求发送到所述程序接口模块;
从所述程序接口模块接收对改变所述远程无线设备中的所述至少一个的所述连接状态的所述请求的响应;以及
将所述响应呈现给所述用户。
14.根据权利要求13所述的用于控制多个无线电设备的系统,其中所述用户界面应用模块还用于接收在所述个人电子设备和远程无线设备之间的连接的状态变化的通知,以及将所述连接的状态变化的所述通知呈现给所述用户。
15.根据权利要求13所述的用于控制多个无线电设备的系统,其中来自用户的改变所述可用的远程无线设备中的至少一个的所述连接状态的所述请求是连接到所述可用的远程无线设备中的一个的请求,其中所述用户界面应用模块还用于确定对所述可用的远程无线设备中的所述一个的访问是否需要安全证书,以及,如果是的话,从所述用户请求安全证书。
16.一种用于在具有不同的无线电技术的多个无线电设备的个人电子设备中控制多个无线电设备的系统,所述系统包括:
搜索装置,用于响应于接收到来自用户的搜索可用的远程无线设备的指令,使用所述多个无线电设备搜索可用的远程无线设备;
指示装置,用于响应于接收到指示远程无线设备是可用的信息,向所述用户指示所述可用的远程无线设备;以及
连接装置,用于响应于接收到建立与所述远程无线设备中的至少一个的连接的指令,建立与所述可用的远程无线设备中的所述至少一个的连接。
17.根据权利要求16所述的用于控制多个无线电设备的系统,还包括装置,用于响应于接收到从所述远程无线设备中的所述至少一个断开的指令,从所述远程无线设备中的所述至少一个断开。
18.根据权利要求16所述的用于控制多个无线电设备的系统,还包括装置,用于响应于接收到所述连接的状态变化的通知,将所述连接的状态变化的通知与所述远程无线设备中的所述至少一个进行通信。
19.一种用于在具有不同的无线电技术的多个无线电设备的个人电子设备中控制多个无线电设备的系统,每个所述无线电设备具有无线电设备驱动程序模块,所述系统包括:
具有程序接口模块的中间层模块、本地硬件管理器模块、与每个无线电设备相关联的适配层模块,以及远程设备管理器模块,其中:
所述程序接口模块:
接收用于搜索对于每个无线电设备可用的远程无线设备的请求;
发送请求到所述本地硬件管理器模块以搜索可用的远程无线设备;
接收可用的远程无线设备的列表;以及
为每个可用的远程设备实例化远程设备对象;
所述本地硬件管理器模块:
从所述API模块接收用于搜索可用的远程无线设备的所述请求;
格式化用于搜索可用的远程无线设备的泛型硬件接口请求;以及
将搜索远程无线设备的所述泛型硬件接口请求发送到每个适配层模块;
每个适配层模块:
接收用于搜索远程无线设备的所述泛型硬件接口请求;
生成用于搜索可用的远程设备的针对所述相关联的无线电设备驱动程序模块的合适的驱动程序命令;
从所述相关联的无线电设备驱动程序模块接收可用的远程设备的列表;以及
将可用的远程设备的所述列表发送到所述本地硬件管理器模块;
所述远程设备管理器模块管理用于所述可用的远程设备的所述远程设备对象;以及
用户界面应用模块被配置用于:
使用所述多个无线电设备中的一个从用户接收查看对于所述个人电子设备是可用的远程无线设备的请求;
将搜索远程无线设备的请求发送到所述中间层模块;
从所述中间层模块接收指示对于所述个人电子设备可用的所述远程无线设备的信息;
从所述用户接收连接到所选择的远程无线设备的请求;以及
将所述个人电子设备连接到所述所选择的远程无线设备。
20.根据权利要求19所述的用于控制多个无线电设备的系统,其中所述用户界面应用模块还用于从用户接收从所选择的远程无线设备断开的请求,以及响应于接收到所述断开请求,从所选择的远程无线设备断开。
21.根据权利要求19所述的用于控制多个无线电设备的系统,其中:
所述适配层模块中的一个从所述相关联的无线电设备驱动程序模块接收所述相关联的无线电设备的状态变化的特定通知、格式化所述相关联的无线电设备的所述状态变化的泛型通知,以及将所述泛型通知发送到所述本地硬件管理器模块;
所述本地硬件管理器模块接收所述相关联的无线电设备的所述状态变化的所述泛型通知以及将所述泛型通知发送到所述用户界面应用模块;以及
所述用户界面应用模块将所述无线电设备的状态变化的所述通知通信给所述用户。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US80259506P | 2006-05-23 | 2006-05-23 | |
US60/802,595 | 2006-05-23 | ||
US88377707P | 2007-01-06 | 2007-01-06 | |
US60/883,777 | 2007-01-06 | ||
US11/751,903 | 2007-05-22 | ||
US11/751,903 US8504100B2 (en) | 2006-05-23 | 2007-05-22 | System and method for multi-radio control |
PCT/US2007/069519 WO2007140198A2 (en) | 2006-05-23 | 2007-05-23 | System and method for multi-radio control |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101573876A true CN101573876A (zh) | 2009-11-04 |
CN101573876B CN101573876B (zh) | 2013-11-27 |
Family
ID=38750120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800270333A Expired - Fee Related CN101573876B (zh) | 2006-05-23 | 2007-05-23 | 用于控制多个无线电设备的系统和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US8504100B2 (zh) |
EP (1) | EP2030329A4 (zh) |
JP (1) | JP5188497B2 (zh) |
CN (1) | CN101573876B (zh) |
CA (1) | CA2687108A1 (zh) |
HK (1) | HK1138442A1 (zh) |
IL (1) | IL195462A0 (zh) |
WO (1) | WO2007140198A2 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104216839A (zh) * | 2014-08-29 | 2014-12-17 | 宇龙计算机通信科技(深圳)有限公司 | 一种信息交互的方法、装置及终端 |
CN104320830A (zh) * | 2014-10-20 | 2015-01-28 | 小米科技有限责任公司 | 无线设备列表的显示方法和装置、无线设备及其广播方法 |
CN106657101A (zh) * | 2016-12-29 | 2017-05-10 | 欧普照明股份有限公司 | 远程控制不同协议类型的无线通信模块的sdk和方法 |
CN107117121A (zh) * | 2015-11-24 | 2017-09-01 | 福特全球技术公司 | 实现对车辆特征进行姿势控制的方法和系统 |
CN112330845A (zh) * | 2019-07-19 | 2021-02-05 | 珠海汇金科技股份有限公司 | 接入相同设备的处理方法、装置及设备 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5086867B2 (ja) * | 2008-03-31 | 2012-11-28 | オリンパスイメージング株式会社 | デジタルカメラ |
WO2010041412A1 (ja) * | 2008-10-09 | 2010-04-15 | 株式会社日立製作所 | 移動端末 |
TWM357099U (en) * | 2008-11-26 | 2009-05-11 | Azurewave Technologies Inc | System and apparatus of wireless remote universal serial bus hub |
JP2010152815A (ja) * | 2008-12-26 | 2010-07-08 | Seiko Epson Corp | 情報処理装置、情報処理システム、情報処理装置の制御方法 |
US20110307831A1 (en) * | 2010-06-10 | 2011-12-15 | Microsoft Corporation | User-Controlled Application Access to Resources |
KR101717584B1 (ko) * | 2010-08-14 | 2017-03-20 | 삼성전자주식회사 | 휴대 단말기의 통신 설정 제어 방법 및 이를 기반으로 운용되는 휴대 단말기 |
US11405969B2 (en) * | 2010-09-29 | 2022-08-02 | International Business Machines Corporation | Enabling interface aggregation of mobile broadband network interfaces |
US9189753B2 (en) * | 2011-10-24 | 2015-11-17 | Blackberry Limited | Multiplatform management system and method for mobile devices |
US8989094B2 (en) * | 2011-11-22 | 2015-03-24 | Wifiname, Inc. | Systems and methods for generating and displaying application information on a wireless station |
EP2803242A1 (en) * | 2012-01-12 | 2014-11-19 | Marvell World Trade Ltd. | Systems and methods for establishing a wi-fi display (wfd) session |
US8725808B2 (en) | 2012-05-10 | 2014-05-13 | Intel Mobile Communications GmbH | Method for transferring data between a first device and a second device |
US20140075037A1 (en) * | 2012-09-12 | 2014-03-13 | Robert M. Cole | Network stack and network addressing for mobile devices |
KR102309027B1 (ko) * | 2014-02-17 | 2021-10-06 | 삼성전자 주식회사 | 통합 표시 방법 및 휴대장치 |
US10039145B2 (en) * | 2015-11-19 | 2018-07-31 | Nike, Inc. | System, apparatus, and method for received signal strength indicator (RSSI) based authentication |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6628965B1 (en) | 1997-10-22 | 2003-09-30 | Dynamic Mobile Data Systems, Inc. | Computer method and system for management and control of wireless devices |
EP1295436B1 (en) | 2000-06-28 | 2013-11-27 | Broadcom Corporation | Multi-mode controller |
JP4801849B2 (ja) * | 2001-06-25 | 2011-10-26 | 株式会社東芝 | 情報処理装置及び通信方式切替方法 |
DE10135527A1 (de) | 2001-07-20 | 2003-02-13 | Infineon Technologies Ag | Mobilstation eines Mobilkommunikationssystems und Verfahren zum Zugreifen auf einen Dienst und/oder einen Datensatz im Bereitschaftsmodus der Mobilstation |
US20030046586A1 (en) | 2001-09-05 | 2003-03-06 | Satyam Bheemarasetti | Secure remote access to data between peers |
US20030078011A1 (en) | 2001-10-18 | 2003-04-24 | Integrated Programmable Communications, Inc. | Method for integrating a plurality of radio systems in a unified transceiver structure and the device of the same |
US6801777B2 (en) | 2001-11-27 | 2004-10-05 | Intel Corporation | Device and method for intelligent wireless communication selection |
JP2003289313A (ja) * | 2002-03-28 | 2003-10-10 | Hewlett Packard Japan Ltd | 仮想ローカル・エリア・ネットワーク(vlan)を設定する方法 |
US20030236890A1 (en) | 2002-06-25 | 2003-12-25 | Intel Corporation | Wireless communication device and method for sharing device resources |
US7106816B2 (en) | 2002-12-18 | 2006-09-12 | Qualcomm Incorporated | Supporting multiple wireless protocols in a wireless device |
KR100530233B1 (ko) * | 2003-02-17 | 2005-11-22 | 삼성전자주식회사 | 애드호크 네트워크로 연결가능한 기기를 사용자에게알려주어 사용자의 선택에 의해 효율적인 연결 설정을가능하게 해주는 블루투스 무선통신 장치 및 통신방법 |
JP2004304399A (ja) | 2003-03-31 | 2004-10-28 | Nec Corp | 通信端末、基地局、サーバ、ネットワークシステム及びハンドオーバ方法 |
US8180275B2 (en) * | 2003-07-24 | 2012-05-15 | Sirius Xm Radio Inc. | Computer based multi-channel radio system and user interface |
US8285855B2 (en) * | 2004-08-02 | 2012-10-09 | Microsoft Corporation | System, method and user interface for network status reporting |
US7804783B2 (en) * | 2004-12-23 | 2010-09-28 | David Jones | Automatic detection and testing of new networking connections |
-
2007
- 2007-05-22 US US11/751,903 patent/US8504100B2/en active Active - Reinstated
- 2007-05-23 WO PCT/US2007/069519 patent/WO2007140198A2/en active Search and Examination
- 2007-05-23 JP JP2009512279A patent/JP5188497B2/ja active Active
- 2007-05-23 CA CA002687108A patent/CA2687108A1/en not_active Abandoned
- 2007-05-23 CN CN2007800270333A patent/CN101573876B/zh not_active Expired - Fee Related
- 2007-05-23 EP EP07797671A patent/EP2030329A4/en not_active Withdrawn
-
2008
- 2008-11-23 IL IL195462A patent/IL195462A0/en active IP Right Revival
-
2010
- 2010-05-04 HK HK10104372.8A patent/HK1138442A1/zh unknown
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104216839A (zh) * | 2014-08-29 | 2014-12-17 | 宇龙计算机通信科技(深圳)有限公司 | 一种信息交互的方法、装置及终端 |
CN104320830A (zh) * | 2014-10-20 | 2015-01-28 | 小米科技有限责任公司 | 无线设备列表的显示方法和装置、无线设备及其广播方法 |
CN104320830B (zh) * | 2014-10-20 | 2018-09-04 | 小米科技有限责任公司 | 无线设备列表的显示方法和装置、无线设备及其广播方法 |
CN107117121A (zh) * | 2015-11-24 | 2017-09-01 | 福特全球技术公司 | 实现对车辆特征进行姿势控制的方法和系统 |
US11023049B2 (en) | 2015-11-24 | 2021-06-01 | Ford Global Technologies, Llc | Methods and systems for enabling gesture control for a vehicle feature |
CN107117121B (zh) * | 2015-11-24 | 2022-02-08 | 福特全球技术公司 | 实现对车辆特征进行姿势控制的方法和系统 |
CN106657101A (zh) * | 2016-12-29 | 2017-05-10 | 欧普照明股份有限公司 | 远程控制不同协议类型的无线通信模块的sdk和方法 |
CN112330845A (zh) * | 2019-07-19 | 2021-02-05 | 珠海汇金科技股份有限公司 | 接入相同设备的处理方法、装置及设备 |
CN112330845B (zh) * | 2019-07-19 | 2023-01-24 | 珠海汇金科技股份有限公司 | 接入相同设备的处理方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
US8504100B2 (en) | 2013-08-06 |
EP2030329A4 (en) | 2013-01-02 |
JP2010504654A (ja) | 2010-02-12 |
CN101573876B (zh) | 2013-11-27 |
JP5188497B2 (ja) | 2013-04-24 |
WO2007140198A3 (en) | 2008-04-03 |
IL195462A0 (en) | 2009-08-03 |
HK1138442A1 (zh) | 2010-08-20 |
WO2007140198A2 (en) | 2007-12-06 |
US20070275683A1 (en) | 2007-11-29 |
CA2687108A1 (en) | 2007-12-06 |
EP2030329A2 (en) | 2009-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101573876B (zh) | 用于控制多个无线电设备的系统和方法 | |
CN108476060B (zh) | 用于双模蓝牙设备之间建立经典蓝牙连接的方法和双模蓝牙设备 | |
EP2130327B1 (en) | Method, system and mobile device for prioritizing a discovered device list | |
US7940732B2 (en) | Automatic wireless network device configuration | |
US8718554B2 (en) | Means for provisioning and managing mobile device configuration over a near-field communication link | |
EP3739842B1 (en) | System and method for providing secure network access | |
US7184707B2 (en) | Communication device and a method for controlling the communication device | |
US8892038B2 (en) | Method for searching and connecting Bluetooth devices and apparatus using the same | |
EP3893109B1 (en) | Method and device for connecting bluetooth devices | |
US7509417B1 (en) | Method for intelligently selecting a wireless communication access point | |
US20100015919A1 (en) | Method, apparatus and system for managing multi-type short-range wireless communications | |
US20070123194A1 (en) | System and method providing connection point and communication profile management | |
US20130336161A1 (en) | Terminal and method for p2p connection in wifi network | |
EP2100436A2 (en) | System capability discovery for software defined radio | |
CN104661326A (zh) | 用于在无线对接环境中管理无线对接设备之间的并行连接的方法、装置和计算机程序产品 | |
US9426278B2 (en) | Location based mobile communications device auto-configuration | |
CN103781158A (zh) | 无线网络接入方法及接入装置 | |
CN103067050A (zh) | 一种通信系统及方法 | |
US20220060924A1 (en) | Information reporting method, information receiving method, terminal, and network control entity | |
JP2012239199A (ja) | 設定可能なモードを有する無線デバイス | |
CN103916977A (zh) | 控制终端连接短距离无线网络的方法 | |
JP2009224876A (ja) | 携帯端末装置、そのアクセス方法、およびプログラム | |
US8331922B2 (en) | Remote host controller interface control for devices | |
CN114258002A (zh) | 一种遥控器定位方法及系统 | |
CN112637936A (zh) | 一种移动终端及注册专网频段的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1138442 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1138442 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131127 Termination date: 20150523 |
|
EXPY | Termination of patent right or utility model |