The present disclosure is generally related to networking and, more particularly, is related to wireless connectivity.
A Wireless USB (WUSB) is a Universal Serial Bus (USB) built on ultra-wideband (UWB) technology, which uses a radio frequency (RF) link, rather than cables, to transfer information between compatible USB devices. WUSB enables 127-point connections with compatible devices and has a signal radius of three to 10 meters, with signal strength ranging from 480 to 110 Mbps. Security may be ensured via transmission encryption. Key WUSB features include Plug and Play (PnP) compatibility and hot swapping with other devices, compatibility with earlier USB versions, host capability, which may be used with a PC through a Host Wire Adapter (HWA) that connects to a USB port or the MiniCard Interface, and support of a dual-role device (DRD), which works as a WUSB device, as well as a host with several features.
Wireless USB may be used in game controllers, printers, scanners, digital cameras, portable media players, hard disk drives and flash drives, among other devices. It is also suitable for transferring parallel video streams, using USB over ultra-wideband protocols.
The WUSB architecture allows up to 127 devices to connect directly to a host. Because there are no wires or ports, there is no longer a need for hubs. However, to facilitate migration from wired to wireless, WUSB introduced a new Device Wire Adapter (DWA) class. Sometimes referred to as a “WUSB hub”, a DWA allows existing USB 2.0 devices to be used wirelessly with a WUSB host.
WUSB host capability may be added to existing PCs through the use of a Host Wire Adapter (HWA). The HWA is a USB 2.0 device that attaches externally to a desktop or laptop's USB port or internally to a laptop's MiniCard interface.
WUSB also supports dual-role devices (DRDs), which in addition to being a WUSB device, can function as a host with limited capabilities. For example, a digital camera could act as a device when connected to a computer and as a host when transferring pictures directly to a printer.
UWB is a general term for radio communication using pulses of energy which spread emitted Radio Frequency (RF) energy over 500 MHz+ of spectrum or exceeding 20% fractional bandwidth within the frequency range of 3.1 GHz to 10.6 GHz as defined by the FCC ruling issued for UWB in February 2002. WUSB is a protocol promulgated by the USB Implementers Forum that uses the UWB radio platform. Other protocols that have announced their intention to use UWB radio platform include Bluetooth and the WiMedia Logical Link Control Protocol.
A few issues differentiate Wireless USB from the use of the 60 GHz band as promoted by the Wireless Gigabit Alliance: such as line of sight and mobility. At 60 GHz, radio communication is blocked by any intervening object, which implies the need for open line of sight. Wireless USB is based on the Ultra-WideBand (UWB) platform, which operates in the 3.1 to 10.6 GHz frequency range, and thus can pass through intervening bodies.
The 60 GHz technology is appealing to the wireless video market because it is supposed to deliver multi-gigabit-speed wireless communications. In order to support such heavy demands, the underlying MAC layer should be able to process this huge amount of data. For these requirements, the 60 GHz-based products need higher power consumption, and more electronics, which are less suitable for mobile units or devices.
Example embodiments of the present disclosure provide systems of wireless USB service discovery. Briefly described, in architecture, one example embodiment of the system, among others, can be implemented as follows: a semiconductor integrated circuit configured to perform wireless USB communications; and memory for storing software comprising instructions for: enabling file sharing over wireless serial bus by a first wireless device (WSB1); receiving a connection request from a second wireless device (WSB2); transmitting shareable files to WSB2 upon request from WSB1; logging the MAC address of the WSB2 and the connection time; receiving a reconnection request from WSB2; denying the reconnection request if no shareable files have later timestamps than the most recent connection time of WSB2; and allowing the reconnection request if at least one shareable file has a later timestamp than the most recent connection time of WSB2.
Embodiments of the present disclosure can also be viewed as providing methods for wireless USB service discovery. In this regard, one embodiment of such a method, among others, can be broadly summarized by the following steps: a first device (WSB1) connecting to a second device (WSB2) wirelessly over a wireless serial bus; WSB1 logging the MAC address of WSB2 and a time stamp of the connection; and WSB1 sending at least one file that has a later logged time stamp than a most previous logged connection time stamp.
Embodiments of the present disclosure will be described more fully hereinafter with reference to the accompanying drawings in which like numerals represent like elements throughout the several figures, and in which example embodiments are shown. Embodiments of the claims may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. The examples set forth herein are non-limiting examples and are merely examples among other possible examples.
Example embodiments of the systems and methods of wireless USB service discovery disclosed herein provide the querying of the MAC address of devices for available services to determine the information elements provided to the querying devices based on access categories specified by the user of the querying device. Sniffing or querying of the Wi-Fi enabled devices may subsequently determine which of the MAC addresses correspond to known friends and automatically make that content accessible to those friends by including these MAC addresses in file metadata so that a device with this MAC address can subsequently access the file. Availability of this file for download may subsequently be advertised.
Example embodiments of the systems and methods disclosed herein are implemented such that a service (for example, a mass storage USB device class) is advertised to devices of interest to make them aware that there is content available for them on another device. This content may be automatically tagged for sharing with devices having specific MAC addresses. Alternatively, the content may be tagged for sharing based on user assigned access to a given peripheral or file system directory with an associated MAC address. The user of the device may associate file system directories (which may be shared as a USB mass storage device) or other peripheral devices (for example, USB audio or video device) for access by another device based on its MAC address.
Access security may be established for a given file, directory, or peripheral by the type of connection required. Access to content on an enterprise device, for example, may require an IP connection with enhanced higher layer security (such as SSL). Other access to files may rely on Wi-Fi direct WPS PBC for security and bypass the IP stack to enable faster transfers. The discoverable state of a device may be reset through Wi-Fi direct enablement/disablement through the user interface or through an application.
Service discovery in wireless USB may occur regularly, draining the battery life with every discovery request. However, if neither side has any updates to transmit, then any discovery request/response is wasteful. If a file is changed or has been updated, then it should be made discoverable so that a user's local version of the file can be refreshed. If a file has not been changed on another device, for example, with media sharing, since the last connection, then there is no need to connect. There is no need to connect to the other user to view new pictures because the user already has them. Unwarranted connection would be a waste of time, resources, and battery life to connect the devices.
In an example embodiment, the discovery mechanism for the Wi-Fi serial bus follows a determination of whether there has been any change to any of the files that have been made available between users. If the files that were made available for sharing have changed, then the first user makes itself discoverable to the second user so that a connection is made between the two users to transmit new files or updated files. Otherwise, if there has been no change since the last connection between the users, the user (device) does not make itself discoverable.
Previously, to determine if another device has shared files that can be updated, a connection would first be made over Wi-Fi. In example embodiments of the systems and methods of wireless USB service discovery disclosed herein, the device does not make itself available to the other device until there has been a change in a shareable file. In an example embodiment, the first device takes a time stamp of the last connection between the two devices. If the time stamp of any shareable file on the first device is later than the last connection time stamp, then the first device will make itself available for connection to the second device. However, if there are no changes to the time stamp, or if there are no later time stamps for any shareable file since the last connection time stamp, then the device does not make itself available for connection to the second device.
In an example implementation, if a first device takes a picture, then that picture gets stored in the shared file system of that device. Since the first device has this file with a later time stamp than the time stamp of the last connection with the second device, the first device makes itself available for connection. For example, the second device may receive a pop up message that says “Do you want to connect and get this picture?” If the user of the second device clicks okay, the file is transferred and the connection time stamp is recorded.
A first device may record connection time stamps for several other devices through the discovery process. The first device may selectively make itself discoverable to other devices that haven't connected with the first device since shareable files have been updated. For example, a user attends a social function with friends and takes several pictures. The user's device makes itself discoverable to those friends since it has files with newer timestamps and the picture files are transferred. Then a new friend arrives and the device recognizes that the time stamps on the pictures are newer than the last connection with the new friend, so the first device makes itself discoverable to the new friend. In this case the friends that already had the pictures are not triggered to connect; only the device of the new friend is triggered.
In an example implementation, a user launches a camera application on her cellular phone which turns on WSB/Wi-Fi Direct photo sharing and enables MAC connection time entry override. An alternative implementation may be performed on a digital camera. A second WSB user connects, accesses shareable files, and disconnects. The WSB driver of the second user's device logs the MAC address and the connection time. When the second use attempts to reconnect to the device of the first user, the connection is denied because the time stamp of his MAC address is more recent than the file folder times. The mobile user then takes a picture which causes a new file to be created and a time stamp (for the file or the folder) to be updated. The second mobile user then sends another discovery request and can now connect because a relevant time stamp is more recent. The MAC connection time stamp entry is then updated.
The flow chart of
The logic of the example embodiment(s) can be implemented in hardware, software, firmware, or a combination thereof. In example embodiments, the logic is implemented in software or firmware that is stored in a memory and that is executed by a suitable instruction execution system. If implemented in hardware, as in an alternative embodiment, the logic can be implemented with any or a combination of the following technologies, which are all well known in the art: a discrete logic circuit(s) having logic gates for implementing logic functions upon data signals, an application specific integrated circuit (ASIC) having appropriate combinational logic gates, a programmable gate array(s) (PGA), a field programmable gate array (FPGA), etc. In addition, the scope of the present disclosure includes embodying the functionality of the example embodiments disclosed herein in logic embodied in hardware or software-configured mediums.
Software embodiments, which comprise an ordered listing of executable instructions for implementing logical functions, can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. In the context of this document, a “computer-readable medium” can be any means that can contain, store, or communicate the program for use by or in connection with the instruction execution system, apparatus, or device. The computer readable medium can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device. More specific examples (a nonexhaustive list) of the computer-readable medium would include the following: a portable computer diskette (magnetic), a random access memory (RAM) (electronic), a read-only memory (ROM) (electronic), an erasable programmable read-only memory (EPROM or Flash memory) (electronic), and a portable compact disc read-only memory (CDROM) (optical). In addition, the scope of the present disclosure includes embodying the functionality of the example embodiments of the present disclosure in logic embodied in hardware or software-configured mediums.
Although the present disclosure has been described in detail, it should be understood that various changes, substitutions and alterations can be made thereto without departing from the spirit and scope of the disclosure as defined by the appended claims.