Electronic device, connection method, and storage medium

According to one embodiment, when an external device is connected, the electronic device detects devices in the external device, and setup of detected devices. When the electronic device is powered, when a power state is restored from a hibernation or a sleep state to a normal state, or when the external device is connected, it is determined whether a first device is included in the detected devices. When the first device is included and when setup of a second device is failed, detection of devices and setup of detected devices are repeated.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2018-079200, filed Apr. 17, 2018, the entire contents of which are incorporated herein by reference.

FIELD

Embodiments described herein relate generally to an electronic device, to which an external device can be connected, a method of connecting the external device and electronic device to each other, and a storage medium.

BACKGROUND

An external device may be connected to an electronic device and, the electronic device may operate while using the external device. For example, a USB (registered trade mark) memory is connected to a USB connector of a personal computer (hereinafter also referred to a PC), and the PC writes data into the USB memory or the PC reads data from the USB memory. Upon detection of connection of an external device to the USB connector, the Operating System (OS) of the PC activates driver software corresponding to the detected device to thereby set up the external device so that the external device can be operable.

In recent years, a composite device provided with a USB hub and a plurality of devices in housing has been developed. Among the plurality of devices, a device or devices are unsuccessful in setup to be carried out by the OS. In such a case, it is necessary for the user to once unplug the composite device from the USB connector and insert the device again into the USB connector.

DETAILED DESCRIPTION

The disclosure is merely an example and is not limited by contents described in the embodiments described below. Modification which is easily conceivable by a person of ordinary skill in the art comes within the scope of the disclosure as a matter of course. In order to make the description clearer, the sizes, shapes and the like of the respective parts may be changed and illustrated schematically in the drawings as compared with those in an accurate representation. Constituent elements corresponding to each other in a plurality of drawings are denoted by like reference numerals and their detailed descriptions may be omitted unless necessary.

In general, according to one embodiment, an electronic device comprising:

a connector connectable to an external device comprising a first device and a second device; and

a hardware processor that,

when the external device is connected to the connector, detects one or more devices included in the external device, performs a setup of detected one or more devices, and stores device information indicating whether the setup of each of the detected one or more devices is successful,

when the electronic device is powered, when a power state of the electronic device is restored from a hibernation state or a sleep state to a normal state, or when the external device is connected to the connector, determines whether the detected one or more devices comprise the first device, and

when the detected one or more devices comprise the first device and when the device information indicates that the setup of the second device included in the detected devices is not successful, repeats detection of devices included in the external device, and repeats the setup of detected devices, wherein

a probability of the setup of the first device being unsuccessful is less than a probability of the setup of the second device being unsuccessful.

FIG. 1is a block diagram showing an example of a remote support system which is one of application examples of an electronic device according to the embodiment. The application example of the electronic device is not limited to the remote support system. The remote support system is a system configured to support the user (for example, a worker at a job site) by an operator at the rear from a remote location. Examples of field work include complicated maintenance work, picking work in a distribution warehouse, monitoring, disaster relief/medical support, and the like. The user side at the job site is also called a front end, and the operator side at the rear is also called a back end.

The remote support system is formed of a mobile PC16carried by the user, remote support center (data center)18located at a position distant from the user, and network22configured to connect the mobile PC16and remote support center18to each other to enable communication between them. The mobile PC16and the remote support center18may be connected to the network22through wired LAN cables or may be connected to the network22through a wireless LAN, Bluetooth (registered trade mark) or the like. The mobile PC16has high degrees of general versatility and processing capability which can be used at a job site. The mobile PC16is sometimes called a mobile edge computing device.

If the mobile PC16is provided with a hardware keyboard fox text input or a display, the portability is spoiled, and it is difficult for the user to concentrate on the work. In order to solve the problem, the mobile PC16is not provided with a display or a hardware keyboard. When an eyeglass type or a goggle type wearable device is connected to the mobile PC16, a display section of the wearable device can be utilized as a display of the mobile PC16, and hence the user can confirm the display while working. Thereby, it is expected that the operational efficiency is promoted and the productivity is improved at the job site or the like, or load dispersion of data and improvement in the network environment can be achieved.

A wearable device, such as an eyeglass type wearable device23is connected to the mobile PC16. AlthoughFIG. 1shows an example in which the wearable device23is connected to the mobile PC through a cable, the wearable device23may also be connected to the mobile PC16through a wireless LAN, Bluetooth or the like. The wearable device23is provided with a display device, a touch pad, and the like. Accordingly, an image transmitted from the mobile PC16is displayed on the display, and a command or the like is input from the touch pad.

As shown inFIG. 1, it is also possible for a plurality of users to communicate with each other through the network22. In this case, communication may also be carried out through the remote support center18, and communication may also be carried out only between the users without being carried out through the operator of the remote support center18.

The remote support center18is provided with an operator terminal12and a server14. The remote support center18makes a voice call or information exchange between the mobile PC16(wearable device23) and the operator terminal12. It is possible to carry out video distribution of a real-time image shot by the wearable device23(connected to the mobile PC16) to the operator terminal12, and it is also possible to carry out mutual transmission/reception of an image between the mobile PC16and the operator terminal12. Further, it is also possible to transmit a text message from the operator terminal12to the mobile PC16. For example, in the picking operation at the distribution warehouse, a place of a picking item is displayed on the wearable device23, whereby hands-free picking can be realized.

The remote support typically includes, for example, the following functions:

A voice calls function of carrying out an interactive voice call between the mobile PC16and the operator terminal12.

A live image distribution function of carrying out video distribution of a real-time image shot by the wearable device23to the operator terminal12during a voice call.

A function of carrying out transmission/reception of a still image between the mobile PC16and the operator terminal12during a voice call (The mobile PC16transmits a shot still image or a captured image being video-distributed to the operator terminal12. The operator terminal12edits the received image by writing characters or pictures, and transmits the edited image to the mobile PC16. The still image received by the mobile PC16is stored in a folder in the mobile PC16, and can be browsed).

A screen sharing function of displaying the entire desk-top screen of the operator terminal12or a window of an arbitrary application program on the wearable device23during a voice call.

A text message transmitting function of transmitting a text message from the operator terminal12to the mobile PC16.

The server14carries out processing for remote support in place of or in cooperation with the operator terminal12, and is provided with a hardware processor (CPU)28, ROM30, RAM32, and a storage device34such as a hard disk drive (HDD) or solid-state drive (SSD), and interface36. The operator terminal12may be made to have all the functions of the server14, and the server14may be omitted.

FIG. 2is a block diagram showing an exemplary structure of the operator terminal12. The operator terminal12is formed of a desktop PC, notebook PC or the like. The operator issues an instruction to the user having the mobile PC16with a conversation or an image while confirming the situation of the workplace on the basis of a real-time image by using the operator terminal12. The operator can write pictures or characters to the image file received from the mobile PC16by using the operator terminal12to edit the image file, transmit the edited image file to the mobile PC16, and store the edited image file into the operator terminal12.

The operator terminal12is provided with a system controller42including a hardware processor. A main memory44, a BIOS-ROM50, a storage device52such as an HDD or an SSD, an audio codec54, a graphics controller62, a touch panel70, a USB (registered trade mark) connector72, a wireless LAN device74, a Bluetooth device76, a wired LAN device78, a PCI Express (registered trade mark) card controller80, a memory card controller82, an embedded controller/keyboard controller (EC/KBC)84, and the like are connected to the system controller42.

The system controller42executes various programs to be loaded from the storage device52into the main memory44. These programs include an operating system (OS)46, and back-end application program48for remote support. The system controller42also executes the Basic Input/Output System (BIOS) stored in the BIOS-ROM50which is a nonvolatile memory. The BIOS is a system program for hardware control.

The audio codec54converts a digital audio signal which is an object to be reproduced into an analog audio signal, and supplies the converted analog audio signal to headphones58or a speaker60. Further, the audio codec54converts an analog audio signal input thereto from a microphone56into a digital signal. The microphone56and headphones58may be provided singly, and may also be provided in an integrated manner as an intercom.

The graphics controller62controls a liquid crystal display (LCD)64to be used as a display monitor of the operator terminal12. The touch panel70is overlaid on the screen of the LCD64, and allows a handwriting input operation to be carried out on the screen of the LCD64by means of a touch-pen or the like. An HDMI (registered trade mark) controller66is also connected to the graphics controller62. The HDMI controller66is connected to an HDMI connector68for connection to an external display device (not shown).

The wireless LAN device74executes wireless LAN communication of the IEEE 802.11 standard for the purpose of connection to the network22. The Bluetooth device76executes wireless communication of the Bluetooth standard for the purpose of connection to an external device (not shown). The wired-LAN device78executes wired LAN communication of the IEEE 802.3 standard for the purpose of connection to the network22. As described above, the connection between the operator terminal12and the network22may be made by wireless communication or may be made by wired communication.

The PCI Express card controller80carries out communication of the PCI Express standard between the operator terminal.12and an external device (not shown). The memory card controller82writes data into a storage medium (not shown), for example, a memory card such as an SD (Secure Digital) card (registered trade mark), and reads data from the memory card.

The EC/KBC84is a power management controller, and is realized as a one-chip microcomputer incorporating therein also a keyboard controller that controls a hardware input keyboard88. The EC/KBC84has a function of setting the operator terminal12to a power-on state, a power-off state, a sleep state, or a hibernation state and a function of restoring the operator terminal12from the sleep state or the hibernation state to the normal state according to an operation of a power switch86. Control of the power-on state, the power-off state, the sleep state, or the hibernation state is executed by cooperation between the EC/KBC84and a power circuit90. Even while the operator terminal12is in the power-off state, the EC/KBC84operates by power from a battery92or an AC adaptor94(to be connected as an external electric power supply). The power circuit90uses the power from the battery92or from the AC adaptor94to generate the power to be supplied to each component.

FIG. 3shows an example of an external appearance of the wearable device23to be connected to the mobile PC16. The wearable device23is formed of an eyeglass frame142and a wearable device main body24. The eyeglass frame142may have a shape obtained by removing lenses from general eyeglasses and is worn on the face of the user. The eyeglass frame142may have a structure to which eyeglasses can be attached. When the user habitually uses eyeglasses at all times, lenses of degrees identical to the habitually used eyeglasses may be attached to the eyeglass frame142.

The eyeglass frame142is provided with mounting brackets144on both the right and left temples thereof. The wearable device main body24is attached to and detached from one of the mounting brackets144on the right temple or the left temple. InFIG. 3, the wearable device main body24is attached to the mounting bracket144on the right temple of the user so that the mounting bracket144on the right temple is hidden behind the wearable device main body24, and hence is not shown.

As described above, the wearable device main body24is provided with a display device124(shown inFIG. 4). The display device124is viewed by one eye. Therefore, the mounting brackets144are provided on both the right temple and the left temple so that the wearable device main body24can be attached to the mounting bracket on the dominant eye side. The wearable device main body24need not be detachably attached to the eyeglass frame142by means of the mounting bracket144. The wearable device for the right eye only may be prepared in which the wearable device main body24is fixed to the right temple of the eyeglass frame142. The wearable device for the left eye only may be prepared in which the wearable device main body24is fixed to the left temple of the eyeglass frame142. Furthermore, the wearable device main body24may not be attached to the eyeglass frame142, but may be attached to the head of the user by using a helmet or a goggle.

An engaging piece128(shown inFIG. 4) of the wearable device main body24is forced between upper and lower frames of the mounting bracket144, whereby the wearable device main body24is attached to the eyeglass frame142. When the wearable device main body24is to be detached from the eyeglass frame142, the wearable device main body24is plucked out of the mounting bracket144. In a state where the wearable device main body24is attached to the mounting bracket144, the engaging piece128is somewhat movable backward and forward in the mounting bracket144. Accordingly, the wearable device main body24is adjustable in the front-back direction so that the user's eye can be brought to a focus on the display device124.

Furthermore, the mounting bracket144is rotatable around an axis144A perpendicular to the temple. After the wearable device main body24is attached to the eyeglass frame142, the wearable device main body24is adjustable in the upward or the downward direction so that the display device124can be positioned on the user's line of sight. Moreover, the rotational angle of the mounting bracket144is about 90 degrees and, by largely rotating the mounting bracket144in the upward direction, the wearable device main body24can be flipped up from the eyeglass frame142. Thereby, even when it is difficult to watch the real thing because the field of view is obstructed by the wearable device main body24or even when the wearable device main body24interferes with surrounding objects in a small space, it is possible to temporarily divert/restore the wearable device main body24from/to the field of view of the user without detaching/reattaching the entire wearable device23from/to the face of the user.

The wearable device main body24is formed of a side part to be along the temple of the eyeglass frame142, and a front part to be positioned on the line of sight of one eye of the user. The angle which the front part forms with the side part is adjustable.

As shown inFIG. 3, on the outside surface of the front part, a camera116, a light118, and a camera LED120are provided. The light118is an auxiliary lighting fixture emitting light at the time of shooting a dark object. The camera LED120is turned on at the time of shooting a photograph or a video to thereby cause the objective person to be shot to recognize that he or she is to be shot.

On the top surface of the side part of the wearable device main body24attached to the right side temple, first, second, and third buttons102,104, and106are provided. When the dominant eye of the user is the left eye, the wearable device main body24is attached to the left side temple. The top and the bottom of the wearable device main body24are reversed according to whether the wearable main body24is attached to the right side temple or the left side temple. Therefore, the first, second, and third buttons102,104, and106may be provided on both the top surface and the bottom surface of the side part.

On the outside surface of the side part, a touch pad110, a fourth button108, a microphone112, and an illuminance sensor124are provided. The touch pad110and the fourth button108can be operated by a forefinger. When the wearable device main body24is attached to the right side temple, the buttons102,104, and106are arranged such that the buttons102,104, and106can be operated by a forefinger, a middle finger, and a third finger, respectively. The touch pad110detects the movement of finger in up and down directions or back and forth directions on the surface on the touch pad110as indicated by arrows. The movement to be detected includes flicking of a finger for grazing the surface quickly in addition to dragging of a finger for moving the finger with the finger kept in contact with the surface. Upon detection of up-and-down or back-and-forth movement of the user's finger, the touch pad110inputs a command. In this description, the command implies an executive instruction to execute specific processing to be issued to the wearable device main body24. Operation procedures for the first to fourth buttons102,104,106, and108, and the touch pad110are determined in advance by the application program.

For example,

when the third button106is pressed once, item selection/item execution is carried out,

when the third button106is pressed for a long time, a list of activated application programs is displayed,

when the second button104is pressed once, the screen returns to the home screen,

when the second button104is pressed for a long time, a menu of quick settings is displayed, and

when the first button102is pressed once, cancellation (operation identical to the operation of the Esc key of the hardware input keyboard) of an operation is executed.

Regarding the operation of the touch pad110, for example,

when the touch pad110is dragged up or down, the cursor is moved up or down,

when the touch pad110is flicked forward (to the front of the head), the left icon is selected (continuously scrolled),

when the touch pad110is flicked backward (to the back of the head), the right icon is selected (continuously scrolled),

when the touch pad110is dragged forward, the left icon is selected (items are scrolled one by one), and

when the touch pad110is dragged backward, the right icon is selected (items are scrolled one by one).

The first button102is arranged at such a position as to be operated by a forefinger, the second button104at a position by a middle finger, the third button106at a position by a third finger, and the fourth button108at a position by a little finger. The reason why the fourth button108is provided not on the top surface of the side part, but on the outside surface of the side part inFIG. 3is that there is no space for the fourth button108on the top surface. The fourth button108may be provided on the top surface of the side part in the same manner as the first to third buttons102,1.04, and106if the top surface has an enough space. The illuminance sensor114detects the illuminance of the surrounding area in order to automatically adjust the brightness of the display device124.

FIG. 4shows an example of an external appearance of the back side of the wearable device main body24. On the inner side of the front part, the display device124is provided. On the inner side of the side part, a microphone126, a speaker130, and the engaging piece128are provided. The microphone126is provided at a front position of the side part, and the speaker130and the engaging piece128are provided at a rear position of the side part. Headphones may be used in place of the speaker130. In this case, the microphone126and the headphones may also be provided in an integrated manner as an intercom in the same manner as the operator terminal12.

FIG. 5shows an example of connection between the mobile PC16and the wearable device main body24. At a rear position of the side part, a receptacle132into which a plug146A at one end of a USB type-c (registered trade mark) cable146conforming to the USB type-C standard is to be inserted is provided. The receptacle132and the plug146A may be generally called a connector. A plug146B at the other end of the USB type-C cable146is inserted into a receptacle207conforming to the USB type-C standard provided on an upper end face of the mobile PC16. The receptacle207and the plug146B may be generally called a connector. As described above, the wearable device main body24is connected to the mobile PC16through the USB type-C cable146, and an image signal and the USB signal are transmitted from/to the wearable device main body24to/from the mobile PC16through the USB type-C cable146. The wearable device main body24may also be connected to the mobile PC16by means of wireless communication such as a wireless LAN, Bluetooth, and the like.

In the embodiment, the wearable device main body24is not provided with a battery or a DC terminal serving as a drive power supply, and the drive power is supplied from the mobile PC16to the wearable device main body24through the USB type-C cable146. However, the wearable device main body24may also be provided with a drive power supply.

FIG. 6is a block diagram showing an exemplary structure of the wearable device main body24. The USE type-C connector132is connected to a mixer166. A display controller170and a USE hub164are respectively connected to a first terminal and a second terminal of the mixer166. The display device124is connected to the display controller170. A camera controller168, an audio codec172, and a sensor controller162are connected to the USB hub164. The camera116, the light118, and the camera LED120are connected to the camera controller168. Audio signals from the microphones112and126are input to the audio codec172, and an audio signal from the audio codec172is input to the speaker130through an amplifier174. The display124is built-in the wearable device main body24in this example. An external display may be connected to the display controller170through a cable, such as an HDMI cable.

A camera controller168, an audio codec172, and a sensor controller162are connected to the USB hub164. The camera116, the light118, and the camera LED120are connected to the camera controller168. Audio signals from the microphones112and126are input to the audio codec172, and the audio signals from the audio codec172are input to the speaker130through an amplifier174. In the example ofFIG. 6, although the camera116, the audio codec172, the sensor controller162, and the like are built-in the wearable device main body24, these devices may also be external devices. For example, a USB standard connector (receptacle) may be provided in the device main body24, and the camera, the audio codec, the sensor controller, and other USB devices which are external devices may be connected to the USB hub164through a USB standard cable.

A motion sensor (for example, an acceleration sensor, a geomagnetism sensor, a gravitation sensor, a gyroscopic sensor, etc.)176, the illuminance sensor114, a proximity sensor178, the touch pad110, the first to fourth buttons102,1.04,106, and108, and a GPS sensor180are connected to the sensor controller162. The sensor controller162processes detection signals from the motion sensor176, the illuminance sensor114, the proximity sensor178, the touch pad110, the first to fourth buttons102,104,106and108, and the GPS sensor180, and supplies a command to the mobile PC16. Although not shown inFIG. 4, the motion sensor176and the proximity sensor178are arranged inside the wearable device main body24. The motion sensor176detects a motion, a direction, a posture and the like of the wearable device main body24. The proximity sensor178detects attachment of the wearable device23on the basis of approach of a face, a finger and the like of the user thereto.

Although the wearable device main body24is one device, the wearable device main body24is a composite device in which the plurality of devices described above are accommodated in housing.

FIG. 7shows an example of an external appearance of the mobile PC16. The mobile PC16is a small-sized PC that can be held by one hand, and has a small size and light weight, i.e., a width thereof is about 10 cm or less, a height thereof is about 18 cm or less, a thickness thereof is about 2 cm or less, and a weight thereof is about 300 gram or less. Accordingly, the mobile PC16can be held in a pocket of the work clothing of the user, a holster to be attached to a belt, or a shoulder case, and is wearable. Although the mobile PC16incorporates therein semiconductor chips such as a CPU, a semiconductor memory and the like, and storage devices such as an SSD and the like, the mobile PC16is not provided with a display device and a hardware input keyboard for inputting characters or numerals.

On the front surface of the mobile PC16, five buttons202constituted of an up button202a, a right button202b, a down button202c, a left button202d, and a decision button202e(also called a center button or an enter button) are arranged. A fingerprint sensor204is arranged below the five buttons202. The mobile PC16is not provided with a hardware input keyboard for inputting characters or numerals. Thus, a password (also called a PIN) cannot be input. Therefore, the fingerprint sensor204is used for user authentication at the time of sign-in of the mobile PC16. The five buttons202can input a command.

User authentication at the time of sign-in may be carried out by assigning numeric values or alphabets to the buttons202ato202dof the five buttons202, and by inputting a password using the five buttons202. In this case, the fingerprint sensor204can be omitted. Numeric values or alphabets are assigned to the four buttons202ato202dother than the decision button202e, and the assignable number of the numeric values or alphabets is only four. Thus, there is a possibility of numeric values or alphabets input in a random manner being coincident with the password. However, by making the digit number of the password large, it is possible to make the probability that the numeric values or alphabets input in a random manner will be coincident with the password low. Authentication by the five buttons202may be enabled in also the mobile PC16provided with the fingerprint sensor204. Although one mobile PC16may be shared among a plurality of users, it is not possible to cope with such a case by only the fingerprint authentication.

The operations identical to those of the buttons102,104,106and108, and the touch pad110of the wearable device main body24can also be applied to the five buttons202. The user cannot watch the state where the buttons102,104,106and108, and the touch pad110of the wearable device main body24are being operated. Therefore, it may be necessary for a user to become accustomed to carrying out an intended operation depending on the user. Further, the buttons102,104,106and108and the touch pad110are small in size, and thus they may be difficult to operate. In the embodiment, the five buttons202of the mobile PC16can also be operated in the manner same as the buttons102,104,106and108and the touch pad110, and hence the above-mentioned difficulty may be overcome. The operation procedures of the five buttons202are determined by the application program.

For example,

when the decision button202eis pressed once, item selection/item execution is carried out (corresponding to pressing once of the third button106in the wearable device main body24),

when the decision button202eis pressed for a long time, ending or cancellation of an operation is carried out (corresponding to pressing once of the first button102in the wearable device main body24),

when the up button202ais pressed once, the cursor is moved upward (corresponding to upward drag on the touch pad110in the wearable device main body24),

when the up button202ais pressed for a long time, a list of activated application programs is displayed (corresponding to pressing the third button106for a long time in the wearable device main body24),

when the down button202cis pressed once, the cursor is moved downward (corresponding to downward drag on the touch pad110in the wearable device main body24),

when the down button202cis pressed for a long time, a menu of quick settings is displayed (corresponding to pressing of the second button104for a long time in the wearable device main body24),

when the left button202dis pressed once, the right icon is selected (corresponding to backward drag/flick on the touch pad110in the wearable device main body24), and

when the right button202bis pressed once, the left icon is selected (corresponding to forward drag/flick on the touch pad110in the wearable device main body24).

On the upper side face of the mobile PC16, a USB 3.0 connector206, the USB type-C connector207, and an audio jack208are provided.

On one side face (side face on the left side when viewed from the front) of the mobile PC16, a memory card slot218for a memory card is provided. The memory card includes, for example, an SD card (registered trade mark), a micro SD card (registered trade mark), and the like.

On the other side face (side face on the right side when viewed from the front) of the mobile PC16, a slot210for Kensington Lock (registered trade mark), a power switch212, a power LED213, a DC IN/battery LED214, a DC terminal216, and ventilation holes222for cooling are provided. The power LED213is arranged around the power switch212, and turned on during the period of power-on. The DC IN/battery LED214indicates the state of the mobile PC16such as whether or not the battery352is being charged, and the remaining battery level. Although the mobile PC16can be driven by the battery352, the mobile PC16can also be driven in the state where the AC adaptor (not shown) is connected to the DC terminal216. Although not shown, the back side of the mobile PC16is configured such that the battery352can be replaced with a new one by a one-touch operation.

FIG. 8is a block diagram showing an exemplary structure of the mobile PC16. The mobile PC16can carry out video distribution of an image shot by the wearable device main body24to the operator terminal12, and enables browse of the image received from the operator terminal12. For this reason, the mobile PC16is provided with a camera function and a viewer function. The camera function is a function of shooting a photograph or a video by means of the camera116of the wearable device main body24. The shot photograph and video are stored in a camera folder (not shown) in the mobile PC16, and can be browsed by the viewer function. The viewer function is a function of enabling browse of a file stored in the camera folder. The types of the files include still images, moving images, PDF files, photographs and videos shot by the camera function, images received from the operator terminal12, images transmitted to the operator terminal12, and files stored in a user folder (not shown) in the mobile PC16.

The mobile PC16is provided with a system controller302. The system controller302is formed of a hardware processor (CPU) and a controller/hub (not shown inFIG. 8). A main memory308, a BIOS-ROM310, the power LED213, the DC IN/battery LED214, and a USB controller322are connected to the hardware processor of the system controller302. A flash memory326, a memory card controller328, a storage device330such as an HDD or an SSD, a USB switching device324, an audio codec334, a 3G/LTE/GPS device336, the fingerprint sensor204, the USB 3.0 connector206, a Bluetooth/wireless LAN device340, and an EC/KBC344are connected to the controller/hub of the system controller302.

The system controller302executes various programs to be loaded from the storage device330into the main memory308. These programs include an OS316, a front-end application program314for remote support, a connection monitoring program318, and the like. The connection monitoring program318is a program configured to, in a case where connection detection or a device setup to be carried out by the OS314when the wearable device main body24is connected to the mobile PC16has failed, automatically carry out detection of connection and device setup again. The system controller302also executes the Basic Input/Output System (BIOS) stored in the BIOS-ROM310which is a nonvolatile memory. The BIOS is a system program for hardware control.

The audio codec334converts a digital audio signal which is an object to be reproduced into an analog audio signal, and supplies the converted analog audio signal to the audio jack208. Further, the audio codec334converts an analog audio signal input from the audio jack208into a digital signal.

The memory card controller328accesses to a memory card such as an SD card to be inserted into the memory card slot218, and controls read/write of data from/to the SD card. The USB controller322carries out control of transmission/reception of data to/from the USB type-C cable146(shown inFIG. 5) connected to the USE type-C connector207or the USE 3.0 cable (not shown) connected to the USE 3.0 connector206.

The Bluetooth/wireless LAN device340executes wireless communication conforming to the Bluetooth/IEEE 802.11 standard for the purpose of connection to the network22. The connection to the network22may not depend on wireless communication, and may depend on wired LAN communication conforming to the IEEE 802.3 standard.

The fingerprint sensor204is used for fingerprint authentication at the time of startup of the mobile PC16. A sub-processor346, a USB Power Delivery Controller (called PDC)348, the power switch212, and the five buttons202are connected to the EC/KBC344. The EC/KBC344has a function of turning on or turning off the power to the mobile PC16according to the operation of the power switch212. The control of power-on and power-off is executed by cooperative operation of the EC/KBC344and the power circuit350. Even during a power-off period of the mobile PC16, the EC/KBC344operates by the power from a battery352or an AC adaptor358(connected as an external power supply). The power circuit350uses the power from the battery352or the AC adaptor358to thereby generate power to be supplied to each component. The power circuit350includes a voltage regulator module356. The voltage regulator module356is connected to the hardware processor in the system controller302.

The PDC348is connected the USB type-C connector207, and carries out power-supply control for the USB type-C connector207according to the control from the EC/KBC344. Upon receipt of a USB reconnection command (HCI command to be described later) from the EC/KBC344, the PDC348once turns off the power supplied by the mobile PC16to the USB type-C connector207, and carries out device scanning for detecting a device or devices connected to the USB type-C connector207. The device scanning can be carried out even when the USB type-C connector207is not powered.

The PDC348carries out communication with the device detected by the device scanning to determine whether power should be supplied to the device from the mobile PC16or power should be supplied to the mobile PC16from the device. The wearable device main body24of the example has no power supply capability, and hence power is supplied from the mobile PC16to the wearable device main body24at all times in the example. When power is supplied from the mobile PC16to the wearable device main body24, the OS314of the mobile PC16detects that the wearable device main body24has been connected to the mobile PC16.

Although the mobile PC16is constituted as a body separate from the wearable device main body24, the mobile PC16may be incorporated into the wearable device main body24, and both of them may also be integrated into one body. Although not shown, a port extension adaptor including ports or connectors according to several interfaces can be connected also to the USB type-C connector207, and an interface which is not provided in the mobile PC16, such as the HDMI, RGB, wired LAN, and the like, can be used.

The connection monitoring program318will be described below. When an external device is connected to the USB type-C connector207of the mobile PC16, when the power to the mobile PC16is turned on, when the power state of the mobile PC16is restored from the hibernation state to the normal state, or when the power state of the mobile PC16is restored from the sleep state to the normal state, the OS314of the mobile PC16first detects, in order to make the external device connected to the USE type-C connector207operable, the external device connected to the USB type-C connector207, activates a driver software corresponding to the detected external device, and sets up the external device so that the external device can become operable.

When the external device is a composite device as shown inFIG. 6, the OS314of the mobile PC16detects connection for each device, and carries out a setup for each device. In the case of the composite device, one or more devices may not be detected, driver software corresponding to the detected device may not be successfully read, or one or more devices may not be successfully set up. When there is such a composite device, although the OS314displays a message to the effect that there is such a composite device, the OS314does not automatically carry out detection of connection or setup again. The connection monitoring program318is prepared for the purpose of executing detection of connection or setup again in such a case. The connection monitoring program318is configured to carry out second detection of connection or second setup of a specific composite device, i.e., the device main body24shown inFIG. 6in this case.

In order to execute the second detection or second setup, it is necessary for the connection monitoring program318to determine whether or not there is an undetectable device or whether or not there is a device detectable but unsuccessful in driver reading or in setup. The connection monitoring program318has information about the devices included in the device main body24, and hence the connection monitoring program318can determine which device is not detected, which device is unsuccessful in driver reading or in setup, on the basis of a result of the setup of the device carried out by the OS314.

Timing for determining whether or not there is such a device, i.e., timing for determining whether or not second detection or second setup should be executed may include the timing at which the OS314detects connection of the external device and sets up the external device. The timing includes a timing when the external device is connected to the USB type-C connector207, a timing when the power to the mobile PC16is turned on, a timing when the power state of the mobile PC16is restored from the hibernation state to the normal state, or a timing when the power state of the mobile PC16is restored from the sleep state to the normal state.

The processing of determining whether or not second detection or second setup should be executed makes the operation load of the mobile PC16heavier according to the number of devices included in the device main body24. Hence, it is not desirable to carry out the processing of the above determination at all the timings for all the devices included in the device main body24. Accordingly, it is first confirmed at these timings whether or not a device serving as an essential device for connection between the mobile PC16and those devices, such as the USB hub164, has been detected by the OS314. When the OS314has not detected the USB hub164, the processing of determining whether or not second detection or second setup of the device should be executed is not carried out. Only when the OS314has detected the USB hub164, the processing of determining whether or not second detection or second setup of the device should be executed is carried out, whereby it is possible to restrain the processing load of the mobile PC16.

Because the mobile PC16is desired to be driven by the battery352for as long a period of time as possible, when not operated for a fixed period of time, the mobile PC16is in the hibernation state. When the mobile PC16is in the hibernation state, the device main body24is also powered off. Further, when the device main body24is disconnected from the mobile PC16, the device main body24is first in the power-off state and, thereafter the mobile PC16is also in the sleep state.

Furthermore, the user can change the power state of the mobile PC16or restore the power state to the normal state at arbitrary timing. The mobile PC16is provided with the five buttons202in place of a hardware keyboard for text input, and hence it is possible to input a command to change the power state by a combination of the buttons of the five buttons202. Further, the mobile PC16is not provided with a display, and hence it is not possible to confirm the contents of the command or power state on the basis of screen display. However, the mobile PC16is provided with the power LED213, and hence the mobile PC16can notify the user of the contents of the command or power state by changing the display color or lighting state of the power LED213.

FIG. 9shows examples of the power state of the mobile PC16changed by operating the five buttons202. By simultaneously operating any of the power switch212and the five buttons202, the power state is changed. When the power switch212is pressed for one second during the power-off period, the power is turned on. While the power is turned on and during the power-on period, the power LED213lights in a white color. When the power switch212is pressed for one second during the sleep state or hibernation state, the power state is restored to the normal state. While the power state is being restored from the sleep state, the power LED213lights in the white color. While the power state is being restored from the hibernation state, the power LED213lights. When the restoration is completed and the power is in the on-state, the power LED213lights in the white color.

When the up button202aand the power switch212are simultaneously pressed for one second, the power state is shifted to the sleep state. At this time, the power LED213blinks. When the right button202band the power switch212are simultaneously pressed for one second, the power state is shifted to the hibernation state. At this time, the power LED213does not light. When the down button202cand the power switch212are simultaneously pressed for one second, the power is shut down or is forcibly turned off. At this time, the power LED213does not light.

FIG. 10is a flowchart showing an example of connection detection/setup processing to be executed by the OS314of the mobile PC16. The OS314determines in step S102whether or not the mobile PC16has been powered (i.e., whether or not the power state has been shifted from the off-state to the on-state). When the power state has been shifted from the off-state to the on-state, step S112is executed. When the power state has not been shifted from the off-state to the on-state, the OS314determines in step S104whether or not the power state of the mobile PC16has been restored from the sleep state to the normal state.

When the power state has been restored from the sleep state to the normal state, step S112is executed. When the power state has not been restored from the sleep state to the normal state, the OS314determines in step3106whether or not the power state of the mobile PC16has been restored from the hibernation state to the normal state. When the power state has been restored from the hibernation state to the normal state, step S112is executed. When the power state has not been restored from the hibernation state to the normal state, the OS314determines in step S108whether or not an external device has been connected to the USB type-C connector207while the mobile PC16is powered.

When an external device has been connected to the USB type-C connector207while the mobile PC16is powered, step S112is executed. When an external device has not been connected to the USB type-C connector207while the mobile PC16is powered, steps (S102, S104, S106, and S108) for checking transition of the power state are executed again. Connection of the external device to the USB type-C connector207can be detected by monitoring the voltage of the D+ terminal or D− terminal of the USB type-C connector207. When the external device is connected to the connector207, the voltage of the D+ terminal or D− terminal becomes, for example, 3.3 V.

The OS314scans in step S112all the devices included in the external device to thereby detect a device or devices connected to the USB type-C connector207. The OS314activates the driver software corresponding to the detected device or devices and carries out setups of the detected device or devices so that the detected device or devices can become operable in step S114. The OS314creates, in step S116, a device setup table indicative of successful/failure in setup for each device, and stores the device setup table in the main memory308.

An example of the device setup table is shown inFIG. 11. The device setup table consists of device names of devices connections of which have been detected, and information items each of which indicates successful/failure in setup of each device.FIG. 11shows the device setup table of a case where the device main body24shown inFIG. 6is connected to the USB type-C connector207of the mobile PC16.

Here, it is assumed that, among the devices included in the device main body24, connection of each of the USB hub164, the light118, the camera116, the camera LED120, the microphones112and126, the speaker130, the motion sensor176, the illuminance sensor114, the proximity sensor178, and the buttons102,104,106and108is detected (indicated by the device name ofFIG. 11) and connection of each of the display124, the touch pad110, and the GPS sensor180is not detected (not indicated by the device name ofFIG. 11).

Among the devices connections of which are detected, with respect to each of the USB hub164, the light118, the camera LED120, the microphones112and126, the speaker130, the illuminance sensor114, the proximity sensor178, and the buttons102,104,106and108, setup has been successful (indicated as “success” in the setup success/failure column ofFIG. 11) and, with respect to each of the camera116, and the motion sensor176, setup has been unsuccessful (indicated as “failure” in the setup success/failure column ofFIG. 11).

The OS314creates the device setup table, and displays the contents of the table as the need arises (displays the contents by, for example, the display124of the device main body24), but does not execute second detection or second setup. The connection monitoring program318which is one of the application programs of the mobile PC16can carry out second detection or second setup by referring to the device setup table.

With reference toFIG. 12, an example of the processing to be carried out by the connection monitoring program318will be described below. The connection monitoring program318determines in step S122whether or not the mobile PC16has been powered (i.e., the power state of the mobile PC16has been shifted from the off-state to the on-state).

When the power state has been shifted from the off-state to the on-state, step S138is executed. When the power state has not been shifted from the off-state to the on-state, the connection monitoring program318determines in step S126whether or not the power state of the mobile PC16has been restored from the sleep state to the normal state.

When the power state has been restored from the sleep state to the normal state, step S138is executed. When the power state has not been restored from the sleep state to the normal state, the connection monitoring program318determines in step S130whether or not the power state of the mobile PC16has been restored from the hibernation state to the normal state.

When the power state has been restored from the hibernation state to the normal state, step S138is executed. When the power state has not been restored from the hibernation state to the normal state, the connection monitoring program318determines in step S134whether or not an external device has been connected to the USB type-C connector207while the mobile PC16is powered.

When the external device has been connected to the USB type-C connector207while the mobile PC16is powered, step S138is executed. When the external device has not been connected to the USB type-C connector207while the mobile PC16is powered, steps (S122,3126, S130, and S134) for checking transition of the power state are executed again.

As described above, when the mobile PC16has been powered, when the power state of the mobile PC16has been restored from the sleep state to the normal state, when the power state of the mobile PC16has been restored from the hibernation state to the normal state, or when an external device has been connected to the USB type-C connector207while the mobile PC16is powered, step S138is executed.

In step S138, it is determined whether or not the external device connected to the USB type-C connector207is the device main body24which is a composite device. Whether or not the external device is the device main body24can be determined, on the basis of whether or not the OS314has detected a device serving as an essential device for connection between the mobile PC16and those devices, i.e., the USB hub164in this case.

The device serving as the essential device is, among the devices included in the device main body24, a concentrator or a relay which is positioned in the center in terms of connection, and is a device configured not to carry out complicated processing (having no controller function). A degree of a complexity of the protocol for connection detection differs from device to device, the protocol for connection detection of the USB hub164is on the lowest level among the devices shown inFIG. 6, and the probability that connection detection of the USB hub164will end in failure is the lowest.

Accordingly, when the connection of the USB hub164is detected, it is possible to determine that the external device connected to the USB type-C connector207is the device main body24. That is, in step S138, it is determined whether or not the device setup table created by the OS314includes information concerning the USB hub164. In the example of the device setup table ofFIG. 11, information concerning the USB hub164is included in the table, and hence it is determined that the external device connected to the USB type-C connector207is the device main body24.

It should be noted that it is sufficient for the connection detection of the device main body24if the device setup table includes information concerning the USB hub164and, even when a setup of the USB hub164has failed, it can be determined that the device main body24is connected to the USB type-C connector207.

When it is determined in step S138that the external device connected to the USB type-C connector207is not the device main body24, i.e., when it is determined that the device setup table does not include information concerning the USB hub164, steps (S122,8126, S130, and S134) for checking transition of the power state are executed again.

When it is determined in step S138that the external device connected to the USB type-C connector207is the device main body24, i.e., when it is determined that the device setup table includes information concerning the USB hub164, the connection monitoring program318determines in step S142whether or not setups of all the devices included in the device main body24have been successful. The devices included in the device main body24are known to the connection monitoring program318and the connection monitoring program318stores a device table of the device main body24as shown inFIG. 13. By copying the information of the device setup table shown inFIG. 11(created by the OS314) into this device table, it is possible to determine presence/absence of connection detection, and success/failure in setup concerning each of all the devices included in the device main body24.

In the example ofFIG. 13, connection is not detected by the OS314with respect to the display124, the touch pad110and the GPS sensor180, and hence it is shown that setups of these devices are also not successful. Further, regarding the camera116and the motion sensor176, it is shown that although their connections are detected, setups of these devices are not successful. As described above, in the example ofFIG. 13, it is shown that it is not detected that setups of all the devices included in the device main body24are successful (it is detected that setup of at least one device is failed).

When it is detected in step S142that setups of all the devices included in the device main body24are successful, steps (S122, S126, S130, and S134) for checking transition of the power state are executed again. When it is not detected in step S142that setups of all the devices included in the device main body24are successful (it is detected that setup of at least one device is failed), the connection monitoring program318issues, in step S146, a Host Controller Interface (HCI) command for exercising second detection/second setup of the device main body24connected to the USB type-C connector207to the BIOS (Basic Input/Output System stored in the BIOS-ROM310). In step S150, the BIOS issues the HCI command to the EC/KBC344. In step S154, the EC/KBC344issues the HCI command to the PDC348.

Upon receipt of the HCI command from the EC/KBC344in step S158, the PDC348once turns off the power supplied to the USB type-C connector207by the mobile PC16, and carries out device scanning for detecting a device or devices connected to the USB type-C connector207. The device scanning can be carried out even when the USB type-C connector207is not powered. The PDC348carries out communication with the device detected by the device scanning to determine whether power should be supplied to the device or power should be supplied from the device. The device main body24has no power supply capability, and hence power is supplied from the mobile PC16to the device main body24at all times. When power is supplied from the mobile PC16to the device main body24, the OS314of the mobile PC16detects that the device main body24has been connected to the mobile PC16. The connection monitoring program318activates drivers corresponding to the detected devices, and carries out setups of the devices again so that the devices can become operable.

It should be noted that in step S142ofFIG. 12, it is determined whether or not setups of all the devices included in the device main body24are successful. However, it may be determined whether or not connections of all the devices included in the device main body24are detected. As shown in the device table ofFIG. 13, when connections of all the devices included in the device main body24are not detected (when connection of at least one device is undetected), it is also apparent that setups of all the devices are not successful (setup of the at least one device is failed). Accordingly, in this case, step S146is executed.

As described above, even when the setup carried out by the OS316is unsuccessful, a second setup is carried out by the connection monitoring program318. Accordingly, even when setups of some of the devices of the device main body24are failed, it is possible to set up the device main body24again without physically reconnecting the device main body24by the user.

Furthermore, it is not determined at all times whether or not there is the necessity of setting up the device main body24again and, by limiting the execution of the determination to the timing when the power to the mobile PC16is in the on-state, the timing when the power state of the mobile PC16is restored from the sleep state or hibernation state to the normal state, or the timing when the mobile PC16detects that an external device is connected to the USB type-C connector207, it is possible to restrain the processing load of the mobile PC16.

Moreover, the connection monitoring program318detects the connection of a device (for example, the USB hub164) having the least likely probability of failure in connection detection to thereby determine the connection of the device main body24, and hence the connection monitoring program318can securely determine the connection of the device main body24. Consequently, the connection monitoring program318determines whether or not there is the necessity of setting up the device main body24again only when the connection of the device main body24is detected, and hence it is possible to further restrain the processing load of the mobile PC16.

The processing of this embodiment can be realized by means of a computer program, and hence it is possible to easily realize an advantage identical to this embodiment by only installing this computer program into a computer through a computer-readable storage medium storing therein this computer program, and executing this computer program.