Patent Description:
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is Information Handling Systems (IHSs). An IHS generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, IHSs may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in IHSs allow for IHSs to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, IHSs may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.

Nowadays, users can choose among many different types of mobile IHS devices. Each type of device (e.g., tablets, <NUM>-in-<NUM>, mobile workstations, notebooks, netbooks, ultra-books, etc.) has unique portability, performance, and usability features; however, each also has its own trade-offs and limitations. For example, tablets have less compute power than notebooks and workstations, while notebooks and workstations lack the portability of tablets. A conventional <NUM>-in-<NUM> device combines the portability of a tablet with the performance of a notebook, but with a small display-an uncomfortable form factor in many use-cases.

The inventors hereof have determined that, as productivity continues to be a core tenet of modern computing, mobile IHS devices should provide versatility for many use-cases and display postures in use today (e.g., tablet mode, laptop mode, etc.), as well as future display postures (e.g., digital notebooks, new work surfaces, etc.). Additionally, mobile IHS devices should provide larger display area with reduced size and weight. In US patent application <CIT> a system and method is introduced for using a physical keyboard with a computing device that has a display which may be a touch sensitive display. In the preferred embodiment the keyboard may be situated on top of the display covering part of the display or rotated behind the display allowing the entire display to be used. When the keyboard is placed over part the display the computing device automatically resizes the displayed information according to the visible part of the display and when the keyboard is rotated to the back of the device the computing device resizes the displayed information to make use of the entire display. The preferred embodiment provides a natural intuitive way to use a physical keyboard with a touch screen device in a similar manner to the operation of virtual keyboards on such devices. US patent application <CIT> relates to a configurable portable computing device having a first display panel and a second display panel, a first user input device and a second user input device. Where the second user input device is incorporated into the second display panel and the first user input device being selectively mountable over the second display panel or detached from the computing device.

Embodiments of a multi-form factor Information Handling System (IHS) with a removable keyboard are described. In an illustrative, non-limiting embodiment, an IHS may include a processor and a memory coupled to the processor, the memory having program instructions stored thereon that, upon execution by the processor, cause the IHS to: identify a physical arrangement of: (i) a first display, (ii) a second display coupled to the first display, and (iii) a keyboard; and execute an operation associated with the physical arrangement.

For example, the physical arrangement may include: a first spacial relationship between: (i) the first display, and (ii) the second display; and a second spacial relationship between: (i) at least one of the first or second displays, and (ii) the keyboard.

The first spacial relationship may indicate a laptop posture, where a first display surface of the first display is at an obtuse angle with respect to a second display surface of the second display, and where the second display is disposed in a horizontal position with the second display surface facing up. Additionally, or alternatively, the first spacial relationship may indicate a book or tablet posture, where the first display is at a straight angle with respect to the second display, and where the first and second displays are disposed in a horizontal position with first and second display surfaces facing up.

Additionally, or alternatively, the first spacial relationship may indicate a display posture, where the first display is at an acute angle with respect to the second display, and where the first and second displays have first and second display surfaces opposing each other. Additionally, or alternatively, the first spacial relationship may indicate a closed posture, where at least a portion of a first display surface of the first display is disposed against at least a portion of a second display surface of the second display.

In some cases, executing the operation may include providing a Graphical User Interface (GUI) feature displayed by the first or second displays in response to the second spacial relationship indicating that the keyboard rests over a display surface of the first or second displays. In these cases, providing the GUI feature may include, for example, rendering an image on a selected portion of the display surface around an edge of the keyboard and/or providing a touch input area on another selected portion of the display surface uncovered by the keyboard.

The program instructions, upon execution by the processor, may cause the IHS to: identify a change to the second spacial relationship whereby the keyboard is moved next to the display surface; and modify at least one of: (i) the image, or (ii) the selected portion. Additionally, or alternatively, the program instructions, upon execution by the processor, may cause the IHS to: identify a change to the second spacial relationship whereby the keyboard is moved atop the display surface; and modify the image.

In other cases, executing the operation may include providing a GUI feature displayed by the first or second displays in response to the second spacial relationship indicating that the keyboard rests next to a display surface of the first or second displays. In those cases, providing the GUI feature may include, for example, rendering an image along an edge of the display surface nearest the keyboard.

In some implementations, a hinge may be configured to accommodate the keyboard between the first and second display surfaces. The hinge may include a compartment configured to accommodate an accessory device. At least one of the first or second displays may include a compartment located on a non-display surface that is configured to cradle or charge the keyboard. The compartment may be configured to cradle or charge a battery. And, in some cases, the keyboard may be mechanically coupled to at least one of the first or second displays via a foldable case.

In another illustrative, non-limiting embodiment, a method may include: identifying a posture in use by an IHS, providing a user interface feature, via a display, in response to the identification; detecting a position of an input device relative to the display, and modifying the user interface feature in response to the detection. In yet another illustrative, non-limiting embodiment, a hardware memory device may have program instructions stored thereon that, upon execution by a processor of an IHS, cause the IHS to: detect a spacial configuration among: (i) a first display, (ii) a second display, and (iii) a wireless keyboard; and provide a user interface feature selected in response to the detection.

The present invention(s) is/are illustrated by way of example and is/are not limited by the accompanying figures, in which like references indicate similar elements.

Embodiments described herein provide a multi-form factor Information Handling System (IHS) with a removable keyboard. In various implementations, a mobile IHS device may include a dual-display, foldable IHS. Each display may include, for example, a Liquid Crystal Display (LCD), Organic Light-Emitting Diode (OLED), or Active Matrix OLED (AMOLED) panel or film, equipped with a touchscreen configured to receive touch inputs. The dual-display, foldable IHS may be configured by a user in any of a number of display postures, including, but not limited to: laptop, tablet, book, clipboard, stand, tent, and/or display.

A user may operate the dual-display, foldable IHS in various modes using a virtual, On-Screen Keyboard (OSK), or a removable, physical keyboard. In some use cases, a physical keyboard may be placed atop at least one of the screens to enable use of the IHS as a laptop, with additional User Interface (UI) features (e.g., virtual keys, touch input areas, etc.) made available via the underlying display, around the keyboard. In other use cases, the physical keyboard may be placed in front of the IHS to expose a larger display area. The user may also rotate the dual-display, foldable IHS, to further enable different modalities with the use of the physical keyboard. In some cases, when not in use, the physical keyboard may be placed or stored inside the dual-display, foldable IHS.

<FIG> is a perspective view of multi-form factor Information Handling System (IHS) <NUM> with removable keyboard <NUM>. As shown, first display <NUM> is coupled to second display <NUM> via hinge <NUM>, and keyboard <NUM> sits atop second display <NUM>. The current physical arrangement of first display <NUM> and second display <NUM> creates a laptop posture, such that first display <NUM> becomes primary display area <NUM> presented by IHS <NUM>, where video or display frames may be rendered for viewing by a user.

In operation, in this particular laptop posture, second display <NUM> may sit horizontally on a work surface with its display surface facing up, and keyboard <NUM> may be positioned on top of second display <NUM>, occluding a part of its display surface. In response to this posture and keyboard position, IHS <NUM> may dynamically produce a first UI feature in the form of at least one configurable secondary display area <NUM> (a "ribbon area" or "touch bar"), and/or a second UI feature in the form of at least one configurable touch input area <NUM> (a "virtual trackpad"), using the touchscreen of second display <NUM>.

To identify a current posture of IHS <NUM> and a current physical relationship or spacial arrangement (e.g., distance, position, speed, etc.) between display(s) <NUM>/<NUM> and keyboard <NUM>, IHS <NUM> may be configured to use one or more sensors disposed in first display <NUM>, second display <NUM>, keyboard <NUM>, and/or hinge <NUM>. Based upon readings from these various sensors, IHS <NUM> may then select, configure, modify, and/or provide (e.g., content, size, position, etc.) one or more UI features.

In various embodiments, displays <NUM> and <NUM> may be coupled to each other via hinge <NUM> to thereby assume a plurality of different postures, including, but not limited, to: laptop, tablet, book, or display.

When display <NUM> is disposed horizontally in laptop posture, keyboard <NUM> may be placed on top of display <NUM>, thus resulting in a first set of UI features (e.g., ribbon area or touch bar <NUM>, and/or touchpad <NUM>). Otherwise, with IHS <NUM> still in the laptop posture, keyboard <NUM> may be placed next to display <NUM>, resulting in a second set of UI features.

As used herein, the term "ribbon area" or "touch bar" <NUM> refers to a dynamic horizontal or vertical strip of selectable and/or scrollable items, which may be dynamically selected for display and/or IHS control depending upon a present context, use-case, or application. For example, when IHS <NUM> is executing a web browser, ribbon area or touch bar <NUM> may show navigation controls and favorite websites. Then, when IHS <NUM> operates a mail application, ribbon area or touch bar <NUM> may display mail actions, such as replying or flagging. In some cases, at least a portion of ribbon area or touch bar <NUM> may be provided in the form of a stationary control strip, providing access to system features such as brightness and volume. Additionally, or alternatively, ribbon area or touch bar <NUM> may enable multitouch, to support two or more simultaneous inputs.

In some cases, ribbon area <NUM> may change position, location, or size if keyboard <NUM> is moved alongside a lateral or short edge of second display <NUM> (e.g., from horizontally displayed alongside a long side of keyboard <NUM> to being vertically displayed alongside a short side of keyboard <NUM>). Also, the entire display surface of display <NUM> may show rendered video frames if keyboard <NUM> is moved alongside the bottom or long edge of display <NUM>. Conversely, if keyboard <NUM> is removed of turned off, yet another set of UI features, such as an OSK, may be provided via display(s) <NUM>/<NUM>. As such, in many embodiments, the distance and/or relative position between keyboard <NUM> and display(s) <NUM>/<NUM> may be used to control various aspects the UI.

During operation, the user may open, close, flip, swivel, or rotate either of displays <NUM> and/or <NUM>, via hinge <NUM>, to produce different postures. In each posture, a different arrangement between IHS <NUM> and keyboard <NUM> results in different UI features being presented or made available to the user. For example, when second display <NUM> is folded against display <NUM> so that the two displays have their backs against each other, IHS <NUM> may be said to have assumed a tablet posture (e.g., <FIG>) or book posture (e.g., <FIG>), depending upon whether IHS <NUM> is stationary, moving, horizontal, resting at a different angle, and/ or its orientation (landscape vs. portrait).

In many of these scenarios, placement of keyboard <NUM> upon or near display(s) <NUM>/<NUM>, and subsequent movement or removal, may result in a different set of UI features than when IHS <NUM> is in laptop posture.

In many implementations, different types of hinges <NUM> may be used to achieve and maintain different display postures, and to support different keyboard arrangements. Examples of suitable hinges <NUM> include, but are not limited to: a <NUM>-hinge (<FIG>), a jaws hinge (<FIG>), a yoga hinge (<FIG>), a gear hinge (<FIG>), and a slide hinge (<FIG>). One or more of these hinges <NUM> may include wells or compartments (<FIG>) for docking, cradling, charging, or storing accessories. Moreover, one or more aspects of hinge <NUM> may be monitored via one or more sensors (e.g., to determine whether an accessory is charging) when controlling the different UI features.

In some cases, a folio case system (<FIG>) may be used to facilitate keyboard arrangements. Additionally, or alternatively, an accessory backpack system (<FIG>) may be used to hold keyboard <NUM> and/or an extra battery or accessory.

For purposes of this disclosure, an IHS may include any instrumentality or aggregate of instrumentalities operable to compute, calculate, determine, classify, process, transmit, receive, retrieve, originate, switch, store, display, communicate, manifest, detect, record, reproduce, handle, or utilize any form of information, intelligence, or data for business, scientific, control, or other purposes. For example, an IHS may be a personal computer (e.g., desktop or laptop), tablet computer, mobile device (e.g., Personal Digital Assistant (PDA) or smart phone), server (e.g., blade server or rack server), a network storage device, or any other suitable device and may vary in size, shape, performance, functionality, and price. An IHS may include Random Access Memory (RAM), one or more processing resources such as a Central Processing Unit (CPU) or hardware or software control logic, Read-Only Memory (ROM), and/or other types of nonvolatile memory. Additional components of an IHS may include one or more disk drives, one or more network ports for communicating with external devices as well as various I/O devices, such as a keyboard, a mouse, touchscreen, and/or a video display. An IHS may also include one or more buses operable to transmit communications between the various hardware components.

<FIG> is a block diagram of components <NUM> of multi-form factor IHS <NUM>. As depicted, components <NUM> include processor <NUM>. In various embodiments, IHS <NUM> may be a single-processor system, or a multi-processor system including two or more processors. Processor <NUM> may include any processor capable of executing program instructions, such as a PENTIUM series processor, or any general-purpose or embedded processors implementing any of a variety of Instruction Set Architectures (ISAs), such as an x86 ISA or a Reduced Instruction Set Computer (RISC) ISA (e.g., POWERPC, ARM, SPARC, MIPS, etc.).

IHS <NUM> includes chipset <NUM> coupled to processor <NUM>. In certain embodiments, chipset <NUM> may utilize a QuickPath Interconnect (QPI) bus to communicate with processor <NUM>. In various embodiments, chipset <NUM> may provide processor <NUM> with access to a number of resources. Moreover, chipset <NUM> may be coupled to communication interface(s) <NUM> to enable communications via various wired and/or wireless networks, such as Ethernet, WiFi, BLUETOOTH, cellular or mobile networks (e.g., CDMA, TDMA, LTE, etc.), satellite networks, or the like. For example, communication interface(s) <NUM> may be coupled to chipset <NUM> via a PCIe bus.

Chipset <NUM> may be coupled to display controller(s) <NUM>, which may include one or more or graphics processor(s) (GPUs) on a graphics bus, such as an Accelerated Graphics Port (AGP) or Peripheral Component Interconnect Express (PCle) bus. As shown, display controller(s) <NUM> provide video or display signals to first display device <NUM> and second display device <NUM>. In other implementations, any number of display controller(s) <NUM> and/or display devices <NUM>/<NUM> may be used.

Each of display devices <NUM> and <NUM> may include a flexible display that is deformable (e.g., bent, folded, rolled, or stretched) by an external force applied thereto. For example, display devices <NUM> and <NUM> may include LCD, OLED, or AMOLED, plasma, electrophoretic, or electrowetting panel(s) or film(s). Each display device <NUM> and <NUM> may include a plurality of pixels arranged in a matrix, configured to display visual information, such as text, two-dimensional images, video, three-dimensional images, etc..

Display device(s) <NUM>/<NUM> may be configured to sense haptic and/or physical touch events, and to generate touch information. To this end, display device(s) <NUM>/<NUM> may include a touchscreen matrix (e.g., a layered capacitive panel or the like) and/or touch controller configured to receive and interpret multi-touch gestures from a user touching the screen with a stylus or one or more fingers. In some cases, display and touch control aspects of display device(s) <NUM>/<NUM> may be collectively operated and controlled by display controller(s) <NUM>.

In some cases, display device(s) <NUM>/<NUM> may also comprise a deformation or bending sensor configured to generate deformation or bending information including, but not limited to: the bending position of a display (e.g., in the form of a "bending line" connecting two or more positions at which bending is detected on the display), bending direction, bending angle, bending speed, etc. In these implementations, display device(s) <NUM>/<NUM> may be provided as a single continuous display, rather than two discrete displays.

Chipset <NUM> may also provide processor <NUM> and/or display controller(s) <NUM> with access to memory <NUM>. In various embodiments, system memory <NUM> may be implemented using any suitable memory technology, such as static RAM (SRAM), dynamic RAM (DRAM) or magnetic disks, or any nonvolatile/Flash-type memory, such as a solid-state drive (SSD) or the like. Memory <NUM> may store program instructions that, upon execution by processor <NUM> and/or controller(s) <NUM>, present a UI interface to a user of IHS <NUM>.

Chipset <NUM> may further provide access to one or more hard disk and/or solid-state drives <NUM>. In certain embodiments, chipset <NUM> may also provide access to one or more optical drives or other removable-media drives. In certain embodiments, chipset <NUM> may also provide access to one or more Universal Serial Bus (USB) ports <NUM>.

Upon booting of IHS <NUM>, processor(s) <NUM> may utilize Basic Input/Output System (BIOS) <NUM> instructions to initialize and test hardware components coupled to IHS <NUM> and to load an Operating System (OS) for use by IHS <NUM>. BIOS <NUM> provides an abstraction layer that allows the OS to interface with certain hardware components that are utilized by IHS <NUM>. Via the hardware abstraction layer provided by BIOS <NUM>, software stored in memory <NUM> and executed by the processor(s) <NUM> of IHS <NUM> is able to interface with certain I/O devices that are coupled to the IHS <NUM>. The Unified Extensible Firmware Interface (UEFI) was designed as a successor to BIOS. As a result, many modern IHSs utilize UEFI in addition to or instead of a BIOS. As used herein, BIOS is intended to also encompass UEFI.

Chipset <NUM> may also provide access to one or more user input devices <NUM>, for example, using a super I/O controller or the like. For instance, chipset <NUM> may provide access to a keyboard (e.g., keyboard <NUM>), mouse, trackpad, stylus, totem, or any other peripheral input device, including touchscreen displays <NUM> and <NUM>. These input devices may interface with chipset <NUM> through wired connections (e.g., in the case of touch inputs received via display controller(s) <NUM>) or wireless connections (e.g., via communication interfaces(s) <NUM>). In some cases, chipset <NUM> may be used to interface with user input devices such as keypads, biometric scanning devices, and voice or optical recognition devices.

In certain embodiments, chipset <NUM> may also provide an interface for communications with one or more sensors <NUM>. Sensors <NUM> may be disposed within displays <NUM>/<NUM> and/or hinge <NUM>, and may include, but are not limited to: electric, magnetic, radio, optical, infrared, thermal, force, pressure, acoustic, ultrasonic, proximity, position, deformation, bending, direction, movement, velocity, rotation, and/or acceleration sensor(s).

<FIG> is a block diagram of components <NUM> of keyboard IHS <NUM>. As depicted, components <NUM> include keyboard controller or processor <NUM>, coupled to keyboard sensor(s) <NUM> and wireless communication module <NUM>. In various embodiments, keyboard controller <NUM> may be configured to detect keystrokes made by user upon a keyboard matrix, and it may transmit those keystrokes to IHS <NUM> via wireless module <NUM> using a suitable protocol (e.g., BLUETOOTH). Keyboard sensors <NUM>, which may also include any of the aforementioned types of sensor(s), may be disposed under keys and/or around the keyboard's enclosure, to provide information regarding the location, arrangement, or status of keyboard <NUM> to IHS <NUM> via wireless module <NUM>.

In various embodiments, IHS <NUM> and/or keyboard <NUM> may not include all of components <NUM> and/or <NUM> shown in <FIG>, respectively. Additionally, or alternatively, IHS <NUM> and/or keyboard <NUM> may include components in addition to those shown in <FIG>, respectively. Additionally, or alternatively, components <NUM> and/or <NUM>, represented as discrete in <FIG>, may be integrated with other components. For example, all or a portion of the functionality provided by components <NUM> and/or <NUM> may be provided as a System-On-Chip (SOC), or the like.

<FIG> is a block diagram of multi-form factor configuration engine <NUM>. Particularly, multi-form factor configuration engine <NUM> may include electronic circuits and/or program instructions that, upon execution, cause IHS <NUM> to perform a number of operation(s) and/or method(s) described herein.

In various implementations, program instructions for executing multi-form factor configuration engine <NUM> may be stored in memory <NUM>. For example, engine <NUM> may include one or more standalone software applications, drivers, libraries, or toolkits, accessible via an Application Programming Interface (API) or the like. Additionally, or alternatively, multi-form factor configuration engine <NUM> may be included the IHS's OS.

In other embodiments, however, multi-form factor configuration engine <NUM> may be implemented in firmware and/or executed by a co-processor or dedicated controller, such as a Baseband Management Controller (BMC), or the like.

As illustrated, multi-form factor configuration engine <NUM> receives Graphical User Interface (GUI) input or feature <NUM>, and produces GUI output or feature <NUM>, in response to receiving and processing one or more or: display sensor data <NUM>, hinge sensor data <NUM>, and/or keyboard sensor data <NUM>. Additionally, or alternatively, multi-form factor configuration engine <NUM> may produce touch control feature <NUM> and/or other commands <NUM>.

In various embodiments, GUI input <NUM> may include one or more images to be rendered on display(s) <NUM>/<NUM>, and/or one or more entire or partial video frames. Conversely, GUI output <NUM> may include one or more modified images (e.g., different size, color, position on the display, etc.) to be rendered on display(s) <NUM>/<NUM>, and/or one or more modified entire or partial video frames.

For instance, in response to detecting, via display and/or hinge sensors <NUM>/<NUM>, that IHS <NUM> has assumed a laptop posture from a closed or "off" posture, GUI OUT <NUM> may allow a full-screen desktop image, received as GUI IN <NUM>, to be displayed first display <NUM> while second display <NUM> remains turned off or darkened. Upon receiving keyboard sensor data <NUM> indicating that keyboard <NUM> has been positioned over second display <NUM>, GUI OUT <NUM> may produce a ribbon-type display or area <NUM> around the edge(s) of keyboard <NUM>, for example, with interactive and/or touch selectable virtual keys, icons, menu options, pallets, etc. If keyboard sensor data <NUM> then indicates that keyboard <NUM> has been turned off, for example, GUI OUT <NUM> may produce an OSK on second display <NUM>.

Additionally, or alternatively, touch control feature <NUM> may be produced to visually delineate touch input area <NUM> of second display <NUM>, to enable its operation as a user input device, and to thereby provide an UI interface commensurate with a laptop posture. Touch control feature <NUM> may turn palm or touch rejection on or off in selected parts of display(s) <NUM>/<NUM>. Also, GUI OUT <NUM> may include a visual outline displayed by second display <NUM> around touch input area <NUM>, such that palm or touch rejection is applied outside of the outlined area, but the interior of area <NUM> operates as a virtual trackpad on second display <NUM>.

Multi-form factor configuration engine <NUM> may also produce other commands <NUM> in response to changes in display posture and/or keyboard sate or arrangement, such as commands to turn displays <NUM>/<NUM> on or off, enter a selected power mode, charge or monitor a status of an accessory device (e.g., docked in hinge <NUM>), etc..

<FIG> is a flowchart of method <NUM> for configuring multi-form factor IHSs. In various embodiments, method <NUM> may be performed by multi-form factor configuration engine <NUM> under execution of processor <NUM>. At block <NUM>, method <NUM> includes identifying a display posture-that is, a relative physical arrangement between first display <NUM> and second display <NUM>. For example, block <NUM> may use sensor data received from displays <NUM>/<NUM> and/or hinge <NUM> to distinguish among the various postures shown below.

At block <NUM>, method <NUM> selects a UI feature corresponding to the identified posture. Examples of UI features include, but are not limited to: turning a display on or off; displaying a full or partial screen GUI; displaying a ribbon area; providing a virtual trackpad area; altering touch control or palm rejection settings; adjusting the brightness and contrast of a display; selecting a mode, volume, and/or or directionality of audio reproduction; etc..

At block <NUM>, method <NUM> may detect the status of keyboard <NUM>. For example, block <NUM> may determine that keyboard <NUM> is on or off, resting between two closed displays, horizontally sitting atop display(s) <NUM>/<NUM>, or next to display(s) <NUM>/<NUM>. Additionally, or alternatively, block <NUM> may determine the location or position of keyboard <NUM> relative to display <NUM>, for example, using Cartesian coordinates. Additionally, or alternatively, block <NUM> may determine an angle between keyboard <NUM> and displays <NUM>/<NUM> (e.g., a straight angle if display <NUM> is horizontal, or a right angle if display <NUM> is vertical).

Then, at block <NUM>, method <NUM> may modify the UI feature in response to the status of keyboard <NUM>. For instance, block <NUM> may cause a display to turn on or off, it may change the size or position of a full or partial screen GUI or a ribbon area, it may change the size or location of a trackpad area with changes to control or palm rejection settings, etc. Additionally, or alternatively, block <NUM> may produce a new interface feature or remove an existing feature, associated with a display posture, in response to any aspect of the keyboard status meeting a selected threshold of falling within a defined range of values.

<FIG>, <FIG>, <FIG>, and <FIG> illustrate examples of laptop, tablet, book, and display postures which may be detected by operation of block <NUM> of method <NUM> during execution of multi-form factor configuration engine <NUM> by IHS <NUM>.

Particularly, <FIG> show a laptop posture, where a first display surface of first display <NUM> is facing the user at an obtuse angle with respect to a second display surface of second display <NUM>, and such that second display <NUM> is disposed in a horizontal position, with the second display surface facing up. In <FIG>, state <NUM> shows a user operating IHS <NUM> with a stylus or touch on second display <NUM>. In <FIG>, state <NUM> shows IHS <NUM> with keyboard <NUM> positioned off the bottom edge or long side of second display <NUM>, and in <FIG>, state <NUM> shows the user operating keyboard <NUM> atop second display <NUM>.

<FIG> show a tablet posture, where first display <NUM> is at a straight angle with respect to second display <NUM>, such that first and second displays <NUM> and <NUM> are disposed in a horizontal position, with the first and second display surfaces facing up. Specifically, <FIG> shows state <NUM> where IHS <NUM> is in a side-by-side, portrait orientation without keyboard <NUM>, <FIG> shows state <NUM> where keyboard <NUM> is being used off the bottom edges or short sides of display(s) <NUM>/<NUM>, and <FIG> shows state <NUM> where keyboard <NUM> is located over both displays <NUM> and <NUM>. In <FIG>, state <NUM> shows IHS <NUM> in a side-by-side, landscape configuration without keyboard <NUM>, in <FIG> state <NUM> shows keyboard <NUM> being used off the bottom edge or long side of second display <NUM>, and in <FIG> state <NUM> shows keyboard <NUM> on top of second display <NUM>.

In <FIG>, state <NUM> shows first display <NUM> rotated around second display <NUM> via hinge <NUM> such that the display surface of second display <NUM> is horizontally facing down, and first display <NUM> rests back-to-back against second display <NUM>, without keyboard <NUM>; and in <FIG>, state <NUM> shows the same configuration, but with keyboard <NUM> placed off the bottom or long edge of display <NUM>. In <FIG>, states <NUM> and <NUM> correspond to states <NUM> and <NUM>, respectively, but with IHS <NUM> in a portrait orientation.

<FIG> show a book posture, similar to the tablet posture of <FIG>, but such that neither one of displays <NUM> or <NUM> is horizontally held by the user and/or such that the angle between the display surfaces of the first and second displays <NUM> and <NUM> is other than a straight angle. In <FIG>, state <NUM> shows dual-screen use in portrait orientation, in <FIG> state <NUM> shows dual-screen use in landscape orientation, in <FIG> state <NUM> shows single-screen use in landscape orientation, and in <FIG> state <NUM> shows single-screen use in portrait orientation.

<FIG> show a display posture, where first display <NUM> is at an acute angle with respect to second display <NUM>, and/or where both displays are vertically arranged in a portrait orientation. Particularly, in <FIG> state <NUM> shows a first display surface of first display <NUM> facing the user and the second display surface of second display <NUM> horizontally facing down, whereas in <FIG> state <NUM> shows the same configuration but with keyboard <NUM> used off the bottom edge or long side of display <NUM>. In <FIG>, state <NUM> shows a display posture where display <NUM> props up display <NUM> in a stand configuration, and in <FIG>, state <NUM> shows the same configuration but with keyboard <NUM> used off the bottom edge or long side of display <NUM>. In <FIG>, state <NUM> shows both displays <NUM> and <NUM> resting vertically or at display angle, and in <FIG> state <NUM> shows the same configuration but with keyboard <NUM> used off the bottom edge or long side of display <NUM>.

It should be noted that the aforementioned postures, and their various respective keyboard states, are described for sake of illustration. In different embodiments, however, other postures and keyboard states may be used, for example, depending upon the type of hinge coupling the displays, the number of displays used, or other accessories. For instance, when IHS <NUM> is chargeable via a charging or docking station, the connector in the docking station may be configured to hold IHS <NUM> at angle selected to facility one of the foregoing postures (e.g., keyboard states <NUM> and <NUM>).

<FIG> illustrate a first example use-case of method <NUM> in the context of a laptop posture. In state 1000A of <FIG>, first display <NUM> shows primary display area <NUM>, keyboard <NUM> sits atop second display <NUM>, and second display <NUM> provides UI features such as first ribbon area <NUM> (positioned between the top long edge of keyboard <NUM> and hinge <NUM>) and touch area <NUM> (positioned below keyboard <NUM>). As keyboard <NUM> moves up or down on the surface of display <NUM>, ribbon area <NUM> and/or touch area <NUM> may dynamically move up or down, or become bigger or smaller, on second display <NUM>. In some cases, when keyboard <NUM> is removed, a virtual OSK may be rendered (e.g., at that same location) on the display surface of display <NUM>.

In state 1000B of <FIG>, in response to execution of method <NUM> by multi-form factor configuration engine <NUM>, first display <NUM> continues to show main display area <NUM>, but keyboard <NUM> has been moved off of display <NUM>. In response, second display <NUM> now shows secondary display area <NUM> and also second ribbon area <NUM>. In some cases, second ribbon area <NUM> may include the same UI features (e.g., icons, etc.) as also shown in area <NUM>, but here repositioned to a different location of display <NUM> nearest the long edge of keyboard <NUM>. Alternatively, the content of second ribbon area <NUM> may be different from the content of first ribbon area <NUM>.

In state 1000C of <FIG>, during execution of method <NUM> by multi-form factor configuration engine <NUM>, IHS <NUM> detects that physical keyboard <NUM> has been removed (e.g., out of wireless range) or turned off (e.g., low battery), and in response display <NUM> produces a different secondary display area <NUM> (e.g., smaller than <NUM>), as well as OSK <NUM>.

<FIG> illustrate a second example use-case of method <NUM> in the context of a tablet posture. In state 1100A of <FIG>, second display <NUM> has its display surface facing up, and is disposed back-to-back with respect to second display <NUM>, as in states <NUM>/<NUM>, but with keyboard <NUM> sitting atop second display <NUM>. In this state, display <NUM> provides UI features such primary display area <NUM> and first ribbon area <NUM>, positioned as shown. As keyboard <NUM> is repositioned up or down on the surface of display <NUM>, display area <NUM>, first ribbon area <NUM>, and/or touch area <NUM> may also be moved up or down, or made bigger or smaller, by multi-form factor configuration engine <NUM>.

In state 1100B of <FIG>, keyboard <NUM> is detected off of the surface of display <NUM>. In response, first display <NUM> shows modified main display area <NUM> and modified ribbon area <NUM>. In some cases, modified ribbon area <NUM> may include the same UI features as area <NUM>, but here repositioned to a different location of display <NUM> nearest the long edge of keyboard <NUM>. Alternatively, the content of second ribbon area <NUM> may be different from the content of first ribbon area <NUM>. In some cases, the content and size of modified ribbon area <NUM> may be selected in response to a distance between keyboard <NUM> and display <NUM>.

In state 1100C of <FIG>, during continued execution of method <NUM>, multi-form factor configuration engine <NUM> detects that physical keyboard <NUM> has been removed or turned off, and in response display <NUM> produces yet another display area <NUM> (e.g., larger than <NUM> or <NUM>), this time without an OSK.

In various embodiments, the different UI behaviors discussed in the aforementioned use-cases may be set, at least in part, by policy and/or profile, and stored in a preferences database for each user. In this manner, UI features and modifications of blocks <NUM> and <NUM>, such as whether touch input area <NUM> is produced in state 1000A (and/or its size and position on displays <NUM>/<NUM>), or such as whether ribbon area <NUM> is produced in state 1100A (and/or its size and position on displays <NUM>/<NUM>), may be configurable by a user.

<FIG> illustrate a <NUM>-hinge implementation, usable as hinge <NUM> in IHS <NUM>, in four different configurations 1200A-D, respectively. Particularly, <NUM>-hinge <NUM> may include a plastic, acrylic, polyamide, polycarbonate, elastic, and/or rubber coupling, with one or more internal support, spring, and/or friction mechanisms that enable a user to rotate displays <NUM> and <NUM> relative to one another, around the axis of <NUM>-hinge <NUM>.

Hinge configuration 1200A of <FIG> may be referred to as a closed posture, where at least a portion of a first display surface of the first display <NUM> is disposed against at least a portion of a second display surface of the second display <NUM>, such that the space between displays <NUM>/<NUM> accommodates keyboard <NUM>. When display <NUM> is against display <NUM>, stylus or accessory <NUM> may be slotted into keyboard <NUM>. In some cases, stylus <NUM> may have a diameter larger than the height of keyboard <NUM>, so that <NUM>-hinge <NUM> wraps around a portion of the circumference of stylus <NUM> and therefore holds keyboard <NUM> in place between displays <NUM>/<NUM>.

Hinge configuration 1200B of <FIG> shows a laptop posture between displays <NUM>/<NUM>. In this case, <NUM>-hinge <NUM> holds first display <NUM> up, at an obtuse angle with respect to first display <NUM>. Meanwhile, hinge configuration 1200C of <FIG> shows a tablet, book, or display posture (depending upon the resting angle and/or movement of IHS <NUM>), with <NUM>-hinge <NUM> holding first and second displays <NUM>/<NUM> at a straight angle (<NUM>°) with respect to each other. And hinge configuration 1200D of <FIG> shows a tablet or book configuration, with <NUM>-hinge <NUM> holding first and second displays <NUM> and <NUM> at a <NUM>° angle, with their display surfaces in facing opposite directions.

<FIG> illustrate a jaws hinge implementation, usable as hinge <NUM> in IHS <NUM>, in two different configurations 1300A and 1300B. Specifically, jaws hinge <NUM> has two rotation axes, parallel to each other, one axis for each respective one of displays <NUM>/<NUM>. A solid bar element <NUM> between the two rotation axes may be configured to accommodate docking compartment <NUM> for stylus <NUM>, audio speaker(s) <NUM> (e.g., monaural, stereo, a directional array), and one or more ports <NUM> (e.g., an audio in/out jack).

Hinge configuration 1300A of <FIG> shows the laptop posture. In this case, jaws hinge <NUM> holds first display <NUM> up, at an obtuse angle with respect to second display <NUM>. In contrast, hinge configuration 1300B of <FIG> shows a tablet or book posture, with jaws hinge <NUM> holding first and second displays <NUM> and <NUM> at a <NUM>° angle with respect to each other, with keyboard <NUM> stored in between displays <NUM> and <NUM>, in a back-to-back configuration, such that stylus <NUM> remains accessible to the user.

<FIG> illustrates accessory charging system <NUM>, with accessory wells <NUM> and <NUM> shown on hinge <NUM> that couples first display <NUM> to second display <NUM>. In various embodiments, accessory wells <NUM> and <NUM> may be formed of molded or extruded plastic. In this example, accessory well <NUM> is shaped to hold pen or stylus <NUM>, and accessory well <NUM> is shaped to hold earbud <NUM>. In some implementations, wells <NUM> and/or <NUM> may include electrical terminals for charging a battery within the accessory, and/or to check a status of the accessory (e.g., presence, charge level, model or name, etc.).

<FIG> illustrates a yoga hinge implementation, usable as hinge <NUM> in IHS <NUM>, in configuration <NUM>. Specifically, yoga hinge <NUM> comprises a plurality of metal cylinders or rods, with axes parallel to each other, held together by bracket <NUM> and/or fabric <NUM>. In operation, bracket <NUM> may include notches and/or detents configured to hold cylinders <NUM> at predetermined positions corresponding to any available IHS posture.

<FIG> illustrate a gear hinge implementation, usable as hinge <NUM> in IHS <NUM>, in configurations 1600A-C. Specifically, configuration 1600A of <FIG> shows gear hinge <NUM> with bar <NUM> having teeth or gears <NUM> fabricated thereon, as IHS <NUM> begins to assume a laptop posture. Display <NUM> has teeth or gears <NUM> alongside its bottom edge, whereas display <NUM> has teeth or gears <NUM> alongside its top edge. Bracket(s) <NUM> hold gears <NUM> and/or <NUM> against gear <NUM>, therefore provides two parallel rotation axes between displays <NUM> and <NUM>.

Hinge configuration 1600B of <FIG> shows a closed posture. In this case, gear hinge <NUM> holds display <NUM> facing down, and display <NUM> is rotated <NUM>° degrees with respect to display <NUM>, so that its display surface faces up against display <NUM>. In this configuration, keyboard <NUM> may sit under display <NUM>, for example, to cause display <NUM> to rest at an angle when IHS <NUM> is placed in laptop posture. In some cases, keyboard <NUM> may be coupled to the back of display <NUM> using an accessory backpack or the like, as shown in <FIG>.

Hinge configuration 1600C of <FIG> shows a tablet or book posture. In this case, gear hinge <NUM> holds display <NUM> facing up, and display <NUM> is rotated <NUM>° degrees with respect to display <NUM>, so that its display surface faces down against the horizontal plane. In this configuration, keyboard <NUM> rests between the back of display <NUM> and the back of display <NUM>. In various embodiments, bar <NUM> may be split into a plurality of segments or links, as shown in configurations 1600B and 1600C, to provide additional axes of rotation between displays <NUM> and <NUM>, and to accommodate both keyboard options with different IHS thicknesses.

<FIG> illustrate a slide hinge implementation, usable as hinge <NUM> in IHS <NUM>, in various configurations. Specifically, in <FIG>, link <NUM>, held by first display bracket <NUM> coupled to display <NUM>, slides up and down slot <NUM> of bracket <NUM> coupled to display <NUM>. In some cases, a locking mechanism may be employed to stably hold displays <NUM> and <NUM> in different postures, as link <NUM> slides up and down and/or as display <NUM> rotates around display <NUM>, such as the closed posture of configuration 1700A, the laptop posture of configuration 1700B in <FIG>, the tablet posture of configuration 1700C (back to <FIG>), or the book posture of configuration 1700D (also in <FIG>).

<FIG> illustrate a folio case system in configurations 1800A and 1800B, according to some embodiments. Specifically, folio case <NUM> may include a set of hard foldable sections or flaps wrapped in fabric and/or plastic, with snapping magnetic attachment points, for example, around the edge on the back of displays <NUM> and <NUM>, and/or keyboard <NUM>. In some cases, keyboard <NUM> may be removable from case <NUM>. Additionally, or alternatively, the presence and state of case <NUM> may be detectable via sensors <NUM>.

In configuration 1800A in <FIG>, displays <NUM> and <NUM> are in a laptop posture, and folio case <NUM> holds keyboard <NUM> in a fixed position, off the bottom edge or long side of display <NUM>, such that both displays <NUM> and <NUM> remain usable. Meanwhile, configuration 1800B of <FIG> shows a display posture (e.g., as in state <NUM>), such that the display surface of display <NUM> is facing down against folio case <NUM>, and folio case <NUM> holds keyboard <NUM> in at fixed location, off the bottom edge of display <NUM>, and such that only display <NUM> is usable.

<FIG> illustrates accessory backpack system <NUM>. In some embodiments, the enclosure of display <NUM> may include notches <NUM> configured to receive lip <NUM> of tray <NUM>, which stays snapped in place until pulled by the user. Additionally, or alternatively, a springloaded ejection button may be used. In various configurations, tray <NUM> may hold keyboard <NUM> or battery <NUM>. Moreover, in some cases, the enclosure of display <NUM> may include electrical terminals usable to charge and/or obtain sensor information from accessories.

It should be understood that various operations described herein may be implemented in software executed by logic or processing circuitry, hardware, or a combination thereof. The order in which each operation of a given method is performed may be changed, and various operations may be added, reordered, combined, omitted, modified, etc. It is intended that the invention(s) described herein embrace all such modifications and changes and, accordingly, the above description should be regarded in an illustrative rather than a restrictive sense.

Although the invention(s) is/are described herein with reference to specific embodiments, various modifications and changes can be made without departing from the scope of the present invention(s), as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present invention(s).

Claim 1:
A method, comprising:
identifying a physical arrangement of: (i) a first display (<NUM>), (ii) a second display (<NUM>) coupled to the first display (<NUM>), and (iii) a keyboard (<NUM>) for providing inputs to the processor (<NUM>) associated with the first display (<NUM>) and the second display (<NUM>), wherein the physical arrangement comprises: a first spacial relationship between: (i) the first display (<NUM>), and (ii) the second display (<NUM>); and a second spacial relationship between: (i) at least one of the first or second displays (<NUM>, <NUM>), and (ii) the keyboard (<NUM>);
executing an operation associated with the physical arrangement, wherein executing the operation comprises providing a Graphical User Interface, GUI, feature displayed by the first or second displays (<NUM>, <NUM>) in response to the second spacial relationship indicating that the keyboard (<NUM>) rests next to a display surface of the first or second displays (<NUM>, <NUM>), and wherein providing the GUI feature comprises rendering an image along an edge of the display surface nearest the keyboard (<NUM>);
identifying a change to the second spacial relationship whereby the keyboard (<NUM>) is moved atop the display surface; and
modifying the user interface feature.