Difference between revisions of "Orbiters"

From LinuxMCE
Jump to: navigation, search
(Mobile Orbiters)
(Add note about screen / graphics size which are used as a base for Orbiter objects.)
 
(61 intermediate revisions by 10 users not shown)
Line 1: Line 1:
[[Image:Orbiters.jpg|thumb|250px|Orbiters Page Admin Website]]<p>An '''Orbiter''' is a high-tech remote control that you use to control your LinuxMCE system.</p>
+
{{toc}}
 
+
{{versioninfo}}
It can be a laptop, a Blackberry, a handheld remote control (such as a Windows MCE remote control, a Fiire Chief, or a Bluetooth remote control), or even a universal infrared remote control (connected by USB-UIRT). The functions of the Orbiter remote control are displayed on the local video monitor in a standardised Orbiter User Interface (UI).
+
[[Category: Orbiters]]
 +
[[Category: Admin Website]]
 +
[[Image:Orbiters.jpg|thumb|250px|Orbiters Page Admin Website]]
  
Obviously, for an Orbiter device to connect, it must either have a connection to a Media Director through an input port, or it must wirelessly connect directly to the home automation/multimedia LAN through a wireless access point (or wireless router with the DHCP turned off). The Wireless Access Point/Router must obviously be connected to the Core server.
+
== LinuxMCE Orbiters ==
 +
Orbiters are high-tech remote controls. In a LinuxMCE system, they are the devices that users use to communicate/interface with LinuxMCE. Users control all user-aspects and functionalities of LinuxMCE through a standardized Orbiter User Interface (UI) that is displayed on the Orbiters.
  
While you can administer the LinuxMCE system through a Media Director (which has its own [[Web Orbiter]]), you can also control the system from many other Orbiter devices as well.
+
LinuxMCE allows a wide variety of devices to function as Orbiters. Any device that is able to connect to your LinuxMCE LAN with a web interface can be used as an Orbiter. This means that ordinary laptops or PCs, smart phones (Android and IOS), wireless tablets (ARM or PC), PDAs, mobile phones (Symbian or Microsoft Mobile) and even Bluetooth enabled smart phones can be used as Orbiters. For a comprehensive list of devices that have been used by LinuxMCE users as Orbiters, consult the [[:Category:Orbiters|orbiter hardware list]].<br>
  
==Types of Orbiters==
+
LinuxMCE Media Directors can also be used as Orbiters. Each Media Director has an on-screen Orbiter UI that can be controlled via a touch-screen interface, a handheld remote control (such as a Windows MCE remote control), or a universal infrared remote control connected by [[USB UIRT|USB-UIRT]].
See [http://wiki.linuxmce.org/index.php/Category:Orbiters the orbiter hardware list] for more devices.
+
  
Many Orbiters have relatively slow processors (like PDA's and mobile phones) and may be running on slow wi-fi connections. Therefore, Orbiters do not retrieve the large, full-size graphics that are available directly to Media Directors (which would require scaling them, redrawing the text, and re-rendering the graphics on the fly for each Orbiter, a processor-intensive operation).
+
You can administer the LinuxMCE system through any connected Orbiter device. Obiters can operate when connected within your LinuxMCE network, or configured to [[Outside_Access|access the system from the Internet]] (the web interface requires user authentication, and additional security measures are advised).  
  
Instead, all the graphics on the Orbiters are pre-scaled and pre-rendered by a software module on the Core called OrbiterGen. This means that if you add new scenarios or devices, or change floorplans or skins, you won't see them immediately on the Orbiter. You must go to the 'Advanced Options' page (by clicking the LinuxMCE logo on the main menu), and choose 'Regenerate this Orbiter'. You'll be asked to wait about 60 seconds or so while the renderer creates new graphics, and then the Orbiter will reload.
+
{{p}}
  
 
===Web Orbiter===
 
===Web Orbiter===
 +
The term [[Web Orbiter]] refers to any laptop, PC, or other device on the LinuxMCE system which uses a standard web browser interface to display the Orbiter User Interface. <br>
 +
Any Linux, Windows, Windows CE, webpad or PDA device which loads the UI becomes a virtual remote control for the entire LinuxMCE system. {{p}}
  
A [[Web Orbiter]] refers to any laptop (or other PC) on the LinuxMCE system which uses a standard web browser interface to display the Orbiter User Interface. The laptop or PC becomes a virtual remote control when used in this way.
+
==== Media Director Web Orbiter ====
 +
[[Image:Main-menu.jpg|200px|thumb|Web Orbiter / Main Orbiter Screen (UI1)]]
 +
All Media Directors run an on-screen Orbiter, like the one to the right. This on-screen Orbiter can be controlled by using the keyboard/mouse attached to the Media Director. It is possible however to remotely control the Media Director's on-screen Orbiter by connecting an infrared, USB, or Bluetooth remote control, and using the remote control while sitting away from the Media Director.  
  
====Media Director Orbiter====
+
;Note: For the on-screen Orbiter on a Media Director, you can either use the number keys or the up/down/left/right/enter keys on the keyboard. More usage information is in the section "[[#Large displays: the UI2 interface |Large displays: the UI2 interface]]" below.
[[Image:Main-menu.jpg|200px|thumb|Main Orbiter Screen]]
+
{{p}}
All Media Directors run an on-screen Orbiter, like the one below. Choose options on the on-screen orbiter with a keyboard/mouse attached to the media director, or with an infrared remote control. The Orbiter software runs on Linux, Windows and Windows CE, and can also be run on webpads and PDA's.
+
In the lower right on the main orbiter screen are the [[Who Am I, Where Am I|'who' and 'where']] buttons. This indicates what room you are in, or want to control, and which family member is using the Orbiter.  
+
  
Touch either button if this isn't correct. Even if you are using an on-screen orbiter on the Media Director in the Living Room, for example, you can still change the location to the Bedroom. That means you would be using the Media Director in the Living Room as a remote control for the devices in the bedroom. Normally you don't change the location for an on-screen orbiter, since that device stays in a fixed place, but you do when you have a wireless web pad or pda you carry around.
+
==== Web Orbiters for Windows (Laptops and CE Webpads) ====
[[Image:Litscen.jpg|200px|thumb|Lighting Scenario Page LinuxMCE Admin Website]]
+
[[Image:Downloadfiles.JPG|frame|right|100px|Download Page for Admin Site]]
The icons on the left all lead to a [[maps]], or floorplan, of your house showing your lighting, media, climate, telecom and security devices. Next to each of the floorplan icons are the scenarios for that category and the given room. In the scenarios section of the LinuxMCE Admin web site you create the scenarios for each room. You can have a lighting scenario called 'entertaining guests' that sets some lights, plays some background music, unlocks the door, and so on.
+
  
===Mobile Orbiters===
+
Any windows based device (laptop or device with a web browser) can be set up to work as an Orbiter by following the setup instructions [[Control LinuxMCE using a Windows device as an Orbiter|here]]. For a comprehensive list of devices that have been used by LinuxMCE users as Orbiters, consult the [[:Category:Orbiters|orbiter hardware list]].<br>
  
The mobile orbiter works pretty much like a regular orbiter. The difference is that you don't usually need to worry about the "who" and "where" buttons. The "who" is determined when you chose to install the software. The family member who installs it is assumed to always be the user. The "where" is automatic - whenever you come within range of a Media Director that can recognize the phone, it will automatically select itself as the correct location. (Nevertheless, you are still able to manually select a different location, if you want to control a location other than the one you are in).
+
{{p}}
  
Since a mobile phone's display is smaller, only selected scenarios can be shown. You must choose the scenario category from the main menu, such as "lighting", and then choose the specific scenario from the sub menu that appears. You can toggle the option for 'follow-me' mode, indicated with a red F. If you hold down the 2 button, a red F will appear for media. As you move around the house, your media will follow you. All 5 categories have follow-me.
+
=== Mobile Orbiters ===
  
Unless you have turned off the "Auto Detect new Bluetooth Phones" option on the Media Director, compatible Bluetooth Mobile phones will automatically be detected whenever they are within range of a Media Director. A message will appear on all Orbiters asking if there is a new mobile phone, and if so, to whom it belongs. (Be sure you have added the family member to whom the phone belongs on the [[LinuxMCE Admin Website]] before doing this.) Of course, you may also need to turn on the TV to see the message on the on-screen Orbiter.
+
This is a very simple software that runs on Bluetooth capable mobile phones and communicates using [http://en.wikipedia.org/wiki/Bluetooth_protocols#Radio_frequency_communication_.28RFCOMM.29 RFCOMM]. It receives images of fully rendered screens from the core, sends back screen touches, key-presses, and location information. <br>
 +
It is the same program as the other Orbiters in the house, but with a different user interface created using the [[Designer]]. With it, the mobile phones become Orbiters just like any other.
  
If you choose to install the software, the phone will beep. Just hit 'yes' to accept the software, and accept the default prompts.
+
The mobile orbiter works pretty much like a regular orbiter, except for the "who" and "where" buttons. <br>
 +
:* The "who" is determined when you chose to install the software. The family member who installs it is assumed to always be the user.
 +
:* The "where" is automatic - whenever you come within range of a Media Director that can recognize the mobile orbiter, it will automatically select itself as the correct location. <br>You are always able to manually select a different location when you want to control a location other than the one you are in.
  
=====Telephone-based Orbiter devices=====
+
==== Mobile Orbiters Follow Me ====
Several mobile phones can be made to work as mobile orbiters.
+
You can toggle the option for 'follow-me' mode, indicated with a red F. If you hold down the 2 button, a red F will appear for media. As you move around the house, your media will follow you. All 5 categories have follow-me.
  
*[[Cisco 7970]]
+
Unless you have turned off the "Auto Detect new Bluetooth Phones" option on the Media Director, compatible Bluetooth Mobile phones will automatically be detected whenever they are within range of a Media Director. Be sure you have added the family member to whom the phone belongs on the [[LinuxMCE Admin Website]] first.
  
*Symbian Bluetooth phone
+
A message will appear on all Orbiters (you may need to turn on the TV to see the Media Director's on-screen Orbiter) asking if there is a new mobile phone and, if so, to whom it belongs. If you choose to install the software, the phone will beep. Just hit 'yes' to accept the software and accept the default prompts.
:On the phone go to Menu-->Tools-->Manager.  Hit the left button, choose settings, and "Software installation" to 'on'.  Set the "online certificate check" to 'off'.  On the menu, Connect, Bluetooth, turn Bluetooth on, and choose the option to make your phone visible (public).  Then go near a media director with a Bluetooth dongle.  Within 30 seconds or so you will see a message on all the Orbiters that a new phone is detected. Select the phone's owner.  The software will be sent automatically to the phone as a message in your phone's inbox. Just accept the default installation options.  The phone will always update its own software.  If the software somehow gets deleted and you want the media director to resend it, turn the phone off, go to Advanced, Devices in LinuxMCE Admin, and check the box "Reconfigure Device".  Then turn the phone back on.  The software should be resent.
+
  
===Windows Laptops or Windows CE Webpads and PDAs===
+
==== Mobile Orbiter phones ====
[[Image:Downloadfiles.JPG|frame|right|100px|Download Page for Admin Site]]
+
Several mobile phones can be made to work as mobile orbiters.
 +
:* All java capable phones can use the [[Java Mobile Orbiter]]
 +
:* [[Cisco 7970]]
 +
:* [[Mobile Orbiter phones - Symbian Bluetooth|Symbian Bluetooth phones]]
 +
:* [[Android Orbiter|Android phones]] ([[QOrbiter]])
  
*Laptops or devices with a web browser can function as [[Web Orbiter|Web Orbiters]].
+
{{p}}
*Other devices can be set up to work as an orbiter on a Windows system by following the setup instructions [[Control LinuxMCE using a Windows device as an Orbiter|here]].
+
  
==Orbiter Setup==
+
== How to Setup an Orbiter ==
  
===Setting up an Orbiter from the [[LinuxMCE_Admin_Website|LinuxMCE administration screen]]===
+
=== Connect the Orbiter to the LinuxMCE system ===
Here you add all the Orbiters you want to use in your house, no matter what type.  This includes the Mobile Orbiters (e.g. mobile phones), the regular Orbiters (e.g. wireless webpads and tablet PCs), Orbiters you want to run on a normal PC, as well as the on-screen Orbiter displays (every Media Director displays an Orbiter on screen).  All Orbiters connected to the system will appear on this page.
+
You can use one of two methods to connect an Orbiter:
  
*<b>Room</b>: this is the room where the orbiter is normally kept. For mobile orbiters this selection isn't important since you carry them everywhere.  For regular orbiters, the room is choosen by manual selection.
+
:* a connection to a Media Director input port
 +
:* a wireless connection to the home automation/multimedia LAN through an access point (or wireless router with the DHCP turned off). The Wireless Access Point/Router must obviously be connected to the Core server. {{p}}
  
*<b>Leave Monitor on for OSD</b>:  OSD (On-screen display) refers to an Orbiter that runs on a Media Director and is controlled by the keyboard/mouse, or by an infrared, USB, or Bluetooth remote control connected to the Media Director. When this option is checked, the TV will not shut off when media is finished playing, so that the Orbiter can then be displayed. The TV turns off only when the screen saver starts, or when you select Power-->Turn off display.  
+
===Setup the Orbiter in LinuxMCE from the [[LinuxMCE_Admin_Website|administration screen]]===
 +
The LinuxMCE administration screen is where you add all the Orbiters you want to use in your house, no matter what type, whether Mobile Orbiters (e.g. mobile phones), regular Orbiters (e.g. wireless webpads and tablet PCs), Orbiters you want to run on a normal PC, or the on-screen Orbiters that every Media Director displays on its screen. All Orbiters connected to the system will appear on this page. {{p}}
  
:If you always control the Media Director using an Orbiter such as a web pad or mobile phone, leave this option unchecked. In this configuration, the TV will come on only when you're playing media or watching TV, and will turn off when you're done.
+
You can configure the following options for each orbiter:
  
*<b>This device uses a Wi-Fi connection</b>: This option is useful for webpads and PDAs with a Wi-Fi signal.  Since Wi-Fi is somewhat unreliable, the Core and Orbiter will constantly 'ping' each other to make sure the connection is strong enough. The Orbiter software will exit whenever the Orbiter goes out of range.
+
:* '''Room''': this is the room where the orbiter is normally kept. For mobile orbiters this selection isn't important since you carry them everywhere.  For regular orbiters, the room is choosen by manual selection.
  
*<b>No Effects</b>: Many screens have special effects, such as animated buttons, fades, and so on. If the Orbiter has a slow processor, this may slow down response time. This option will disable any special effects on the Orbiter so it will run as fast as possible.
+
:* '''Leave Monitor on for OSD''': OSD (On-screen display) refers to the state of the Orbiter running on the Media Director. This option is used to keep the TV ON when media is finished playing. Instead of shutting down, the TV remains ON and the Orbiter UI is displayed. <br>The TV is turned off when the screen saver starts, or when you manually select Power-->Turn off display.  
  
*<b>Language:</b> All the text on the screen will appear in the selected language (as much as possible).
+
:::If you always control the Media Director using an Orbiter such as a web pad or mobile phone, leave this option unchecked and the TV will turn on when you're watching TV or playing media, and automatically turn off when you're not.
  
:NOTE: You can create your own menus and translate screens into other languages using [[Designer]].
+
:* '''This device uses a Wi-Fi connection''': This option is useful for webpads and PDAs with a Wi-Fi signal.  Since Wi-Fi is somewhat unreliable, the Core and Orbiter will constantly 'ping' each other to make sure the connection is strong enough. The Orbiter software will exit whenever the Orbiter goes out of range.
  
*<b>Size</b>: Choose the screen size you want.  If this is an on-screen Orbiter on a Media Director), this will also set the Media Director's screen resolution.
+
:* '''No Effects''': Many screens have special effects, such as animated buttons, fades, and so on.  If the Orbiter has a slow processor, this may slow down response time.  This option will disable any special effects on the Orbiter so it will run as fast as possible.
  
*<b>Skin</b>: There are several skins (motifs) from which to choose: 'Wood', 'Marble', etc.
+
:* '''Language:''' All the text on the screen will appear in the selected language (as much as possible).
*<b>User</b>: This is the person who normally uses this Orbiter.
+
*<b>Quick Regen</b>: To make the orbiters respond quickly, all images are pre-rendered.  The User interface is "built" by the [[Orbiter Generator]] program.  This option triggers the Orbiter Generator to re-generate the user interface for this orbiter. It will only regenerate screens that appear to have changed.
+
*<b>Full Regen</b>: This will cause Orbiter Generator to re-generate every screen on the Orbiter.
+
*<b>Reduce image size by %</b>: This will cause Orbiter Generator to add some padding to the screens. This is useful if the screen margins are being displayed outside of the TV screen.
+
:Developer info</b>: although it may sound intuitive that the corresponding DeviceData is also called "Reduce image size by %", it is in fact called "Spacing". The PK_DeviceData for it is 150. The text "Reduce image size by %" comes from the DeviceTemplate_DeviceData table and it's the meaning of the device data in that specific device context</p>
+
<b>Offset</b>: This causes the Orbiter to do backflips while reciting a poem backwards. (Just kidding. If you know what it does, please edit this section.)
+
  
==Change the look and feel of the Orbiter==
+
:::NOTE: You can create your own menus and translate screens into other languages using [[Designer]].
  
<p>On the Wizard, Devices, Orbiters page you can change the look and feel several ways.   
+
:* '''Size''': Choose the screen size you wantIf this is an on-screen Orbiter on a Media Director, this will also set the Media Director's screen resolution.
<p>To create your own skin or user interface, see [[Create my own skins or GUI for LinuxMCE]]</p>
+
  
If you want to try version 2 of the User Interface, see the [[Enabling UIv2]] page.
+
:* '''Skin''': There are several skins (motifs) from which to choose: 'Wood', 'Marble', etc. This option determines the skin that will be used.
  
 +
:* '''User''': This is the person who normally uses this Orbiter.
  
==Using the Mobile Orbiter==
+
:* '''Quick Regen''': To make the orbiters respond quickly, all images are pre-renderedThe User interface is "built" by the [[Orbiter Generator]] programThis option triggers the Orbiter Generator to re-generate the user interface for this Orbiter. It will only regenerate screens that appear to have changed.
===Every Orbiter has a 'Rooms' button on the main menu===
+
Using LinuxMCE basically consists of selecting scenarios that you created in the LinuxMCE Admin site.  For example, you may select the 'Good Morning' Lighting Scenario.  If you want to watch TV, you will select the 'TV' scenario for that roomSince the scenarios are grouped by room, the Orbiter needs to know what room you are in so it can show you the scenarios for that roomThe Orbiter running on your Media Directors, which you see on your TV or computer monitor, will always default to the room that it is in.  You can specify the default room for other Orbiters, like webpads, on the Orbiters page in LinuxMCE Admin. The mobile phone Orbiters by default 'follow you'; whenever you enter a room with a Media Director that has a Bluetooth dongle, your phone will pick this up and switch to that room, showing you that room's scenarios by default.  However, no matter what type of Orbiter you use, there will always be a 'rooms' button on the main menu showing the currently selected room.  Select it to chose a different room.
+
  
===Every Orbiter has a 'Users' button on the main menu, except mobile phones===
+
:* '''Full Regen''': This will cause Orbiter Generator to re-generate every screen on the Orbiter.
With a mobile phone Orbiter, you don't need to tell LinuxMCE each time who is using the Orbiter.  The owner of the mobile phone is specified on LinuxMCE Admin's Orbiter page.  But with the other Orbiters, which are shared by the whole family, there will be a 'users' button that lets you pick who is using the Orbiter.  This won't affect the [[scenarios]]--those are the same for everyone.  But it does affect some other things.  For example, when browsing media, only the current user's private media is shown.  Also, it affects things like speed dials, phone books, and so on.
+
  
===Selecting a scenario from the phone's main menu===
+
:* '''Reduce image size by %''': This will cause Orbiter Generator to add some padding to the screens. This is useful if the screen margins are being displayed outside of the TV screen.
On the mobile phones, the screen is quite small, so rather than showing you all the scenarios for a room, the phone normally just shows the categories of scenarios: 'Lighting', 'Media', 'Climate', 'Security', 'Telecom', 'Other'.  Select a category, then select the scenario underneath it. The 'c'  button always takes you back to the main menu. The red 'off' button stops whatever media is playing.  And the 'menu' button hides Orbiter so you can use the phone as a normal phone again.  To show the Orbiter again, hold the menu button until a strip of currently running programs appears, and chose 'LinuxMCE MO'.  If the Orbiter isn't running, press the menu button, and choose 'LinuxMCE MO' from the menu.  When you do, the Orbiter won't appear instantly--it will only appear when a Media Director is in proximity and is able to connect to the phone and talk to the LinuxMCE MO software. This can take around 15 seconds. While using the Orbiter, all the other keys have different functions depending on what you're doing.  A brief legend is usually shown on the screen, and you can hold down the 'c' button for help.
+
:::'''Developer info''': although it may sound intuitive that the corresponding DeviceData is also called "Reduce image size by %", it is in fact called "Spacing". The PK_DeviceData for it is 150. The text "Reduce image size by %" comes from the DeviceTemplate_DeviceData table and it's the meaning of the device data in that specific device context
 +
:* '''Offset''': This causes the Orbiter to do backflips while reciting a poem backwards. (Just kidding. If you know what it does, please edit this section). {{p}}
  
===Selecting a scenario from other Orbiter's main menu with touch or mouse===
+
=== Change the look and feel of the Orbiter (optional) ===
In LinuxMCE Admin, on the Wizard, Devices, Orbiters page, you can select the 'Skin', which is the aesthetics or the motif (wood, marble, modern, classic, etc.), and the 'Main Menu', which determines how the user interface behaves.  Therefore, your Orbiter's main menu may look different, and it may not display all the scenarios on the screen at once.  You may first choose a category, like you do with the mobile phones.  Just touch the button, if you have a touchscreen, or click with the mouse.
+
  
===Selecting a scenario with a keyboard's arrow keys, or an infrared remote===
+
Orbiters can be skinned in a variety of different ways. There is a dark version called Slate, and,
When you see an Orbiter on the media director, you can also use the number keys, or the up/down/left/right/enter keys on the keyboard or an infrared remote control to select a scenario.
+
a default skin, Titanium, which has multiple variations for data grid color. To explore your options, look at [[Orbiter Skins]].  
  
===Quick tip===
+
You can change the look and feel of the Orbiters in several ways on the '''[[LinuxMCE Admin Website]]-->Wizard-->Devices-->[[Orbiters]]''' page. You can also [[Create my own skins or GUI for LinuxMCE|Create your own skin or user interface]]. {{p}}
No matter what the user interface looks like, and no matter whether you use the phone, keyboard, or infrared remote, the categories are always numbered as follows: 1=Lighting, 2=Media, 3=Climate, 4=Telecom, 5=Security, 6=Misc.  And within each category, the scenarios are also numbered the same, and in the same order, across all orbiters.  LinuxMCE tries to encourage consistency, making it very easy to make your selection rapidly.  For example, the 2nd media scenario is nearly always TV.  So, from the mobile phone, or an infrared remote, or a keyboard, 22 turns on the TV (2 for Media, 2 for TV).  Also, you may have noticed that when creating your lighting scenarios LinuxMCE encouraged you to make the first lighting scenario the 'default on', and the second the 'default off'. This means that in any room you normally can hit 11 on any remote to turn the lights on, and 12 to turn them off.  If you are consistent like this across rooms, you will find that you remember the number shortcuts in no time and can do common tasks without even looking at the remote.
+
  
==System concepts for Orbiter Implementation==
+
=== Orbiters graphics regeneration ===
 +
Changes of scenarios, devices, floor-plans, or skins aren't immediately reflected on the Orbiter because they are regenerated before being reloaded and displayed.
 +
 
 +
An Orbiter's role is to send requests to the LinuxMCE Core. This activity requires very little resources and can be performed by devices with relatively slow processors (like PDA's and mobile phones) while running on a slow Wi-Fi connection. Since using the full-size graphics UI that is available directly to Media Directors would be too processor-intensive (requires scaling the graphics, redrawing the text, and re-rendering on the fly on each Orbiter), all the graphics are pre-scaled and pre-rendered by the [[Orbiter Generator|OrbiterGen]] software module on the Core before being sent to the Orbiters that display them.
 +
 
 +
When changes are made, the [[LinuxMCE Admin Website]]-->Advanced-->[[Orbiter Generator|Regenerate this Orbiter]] option is run and the [[Orbiter Generator|OrbiterGen]] renders new graphics appropriate for the Orbiter that is being reloaded. This process takes about 60 seconds. Once completed, new buttons reflecting your changes will be displayed on the Orbiter.
 +
 
 +
{{p}}
 +
 
 +
== The Orbiter User Interface==
 +
 
 +
To control the system, you use an [[Orbiter]], which is the LinuxMCE term for a remote control.
 +
 
 +
All [[Orbiters]] have the same basic function: display the scenarios in the room you're in and let you select one. Regardless of the type of orbiter in use, the Core sends the same list of scenarios. How and what is displayed depends on not only the type of device, but also the skin, the Main Menu, and the User. Whatever the orbiter, you will have the same options available, including a home button which takes you to the main menu, but how it is displayed may vary.
 +
{{p}}
 +
 
 +
=== Variations in Orbiter UI menus ===
 +
 
 +
==== The skin ====
 +
From the '''[[LinuxMCE Admin Website]]-->Wizard-->Devices-->[[Orbiters]]''' page, you can select a 'Skin'. This is the aesthetics (or motif): Wood, Marble, Modern, Classic, etc. What you see depends of the aesthetics ([[Orbiter Skins|skin]]) you chose.
 +
{{p}}
 +
 
 +
==== The Main Menu ====
 +
From the '''[[LinuxMCE Admin Website]]-->Wizard-->Devices-->[[Orbiters]]''' page, you can also select the 'Main Menu', which determines how the user interface behaves. <br>
 +
If you change the 'Main Menu' interface, your Orbiter may look different from other Orbiters, and it may not display all the scenarios on the screen at the same time. In this case you may first have to choose a category, like you do with the mobile phones.
 +
{{p}}
 +
 
 +
==== The 'User' settings ====
 +
Every Orbiter has a '''User''' button on the main menu, except mobile phones. With a mobile phone Orbiter, you don't need to tell LinuxMCE who is using the Orbiter. The owner of the mobile phone is initially specified on the LinuxMCE Admin Website's Orbiter page and does not change. But with other Orbiters, which may be shared by the whole family, there will be a 'user' button that lets you select who is currently using the Orbiter. 
 +
 
 +
The user selected determines what's available. When browsing media, only the current user's private media is shown. Other personal settings such as speed dials and phone books are also user based. What's displayed on the Orbiter depends on the current User.
 +
 
 +
{{p}}
 +
 
 +
=== Navigating the Orbiter displays ===
 +
 
 +
Based on their their screen size, the different Orbiters may [[Selecting_the_Right_UI|display the User Interface slightly differently]] to make them more readable, and easier to use.
 +
 
 +
==== Small displays: the '''UI1''' interface for Mobile Orbiters ====
 +
 
 +
On smaller displays, as on mobile phones or desktop phones, there's not enough room to show the scenarios themselves. To make them readable, the menus are displayed based on hierarchy levels, and only selected scenarios are shown. The top level menu shows only the categories: Lights, Media, Climate, Security and Telecom. Selecting a category displays the scenarios in that category. You must choose the scenario category from the main menu, such as "lighting", and then choose the specific scenario from the sub menu that appears.
 +
 
 +
The [[Selecting_the_Right_UI|"UI1" interface]] is used on webpads and PDAs. It displays the scenarios in horizontal rows, and adds a "more" button when the list of scenarios does not fit on a row. It is the ideal interface for small screens.
 +
 
 +
{{p}}
 +
 
 +
==== Large displays: the '''UI2''' interface for Web Orbiters ====
 +
[[Selecting_the_Right_UI|"UI2"]] is the [[Selecting_the_Right_UI|preferred User Interface]] for Media Stations as it is easier to navigate using a traditional IR remote, much like any other Media Center PC with remote. <br>
 +
The menu button brings up the main menu, and you use the ''left/right/up/down/enter'' buttons to navigate it. The ''fast forward/rewind/skip +/skip -'' keys are used for media playback.
 +
 
 +
If you have a pointing device like a mouse or gyro air mouse, the UI2 interface also supports a unique control architecture that lets you do everything with 3 (programmable) buttons (plus ok and cancel). The 3 buttons are "MEDIA", "MENU", "AMBIANCE".
 +
 
 +
On a mouse with 3 programmable buttons (such as the [[Using_the_Gyration_Remote_GYR3101US_%28Non-Fiire_Chief%29|gyration]]), these functions correspond to the buttons from left to right. If you are using a traditional 3 button mouse, you can use the F6, F7 and F8 keys on the keyboard for the three programmable functions instead. In both cases, the left mouse button is "ok", and the right mouse button is "cancel/go back".
 +
 
 +
Mouse button behavior is "absolute" when you press and hold the media/menu/ambiance button and "relative" when you tap and release.
 +
 
 +
The "absolute" behavior is generally more efficient. For example, in the case of the middle button (F7), "absolute" behavior means the action is executed without having to additionally click "ok".  If you press and hold the middle button (F7) while moving your mouse pointer to the option, then let go, that option is executed. If you instead tap and release the menu button ("relative" behavior), you will only highlight the menu option. You must then press ok (the left mouse button) to execute the option.
 +
 
 +
Categories appear along the bottom of the screen, and the scenarios in each category popup vertically (like a pull-down menu in a PC, except upside down).  If the main menu isn't already visible, bring it up by pressing the "start" button on a Windows IR remote, or the "menu" button on a 3-button mouse.  To exit a menu, use the back button on the IR remote, the cancel button (right mouse button on a 3-button mouse), or the ESC key on a keyboard.
 +
 
 +
In UI2, the media is always full screen. If you're not playing your own media, the background media (i.e. screensaver images) is gallery art from the Internet (using flickr) or [[Use_my_own_pictures_in_the_Screen_Saver|pictures you select]]. If only the screensaver images are displayed on the Media Station, press the menu/middle/F7 button to bring up the menu. Right click/ESC to get rid of it. (This works even if your own media is playing.)
 +
 
 +
If you're using UI2's 3-button navigation model, the normal media control options on a traditional remote are replaced with a single button: "media" (left soft button or F6). Press this and move the pointer up and down for your skip functions (''ch+, ch-, skip fwd, skip back''). Move the pointer left and right for speed control (''rewind, fast forward'').  The further you move, the faster the media playback changes.  If you hold the button down (the left soft button or F6), your movement will be "absolute". Instead of the traditional "jog shuttle-type" control, movement to the right skips to the end of your media, and movement to the left skips to the beginning.  Once you get used to it, you will find that navigating media is orders of magnitude faster and easier with this model than with a traditional remote. You can find a spot in a 2 hour movie in only a couple seconds with a click of a single button (compared to a slew of button clicks required using a traditional remote).
 +
 
 +
Also, in UI2 you can press the "ambiance" button (right soft button or F8). Move up/down to adjust the lights, and left/right to adjust the volume. As with the media playback, if you hold the F8/right soft button down while you move left and right, your volume control is in "absolute" mode (not "relative"). Moving hard right turns up the volume full blast; hard left is mute.  This requires you have a TV or receiver that is serial-controlled, however. LinuxMCE can then directly and instantly set the volume position in sync with your hand movements. (Few TVs and receivers have this feature, unfortunately.)
 +
 
 +
There are other media control functions besides the most commonly used ''fast fwd/rewind/skip up/skip down''. You can, for example, choose 'subtitles' while watching a DVD, 'guide' while watching TV, and 'random' while listening to an audio CD. In the UI2 3 button model, these functions appear on the main menu (on the left-most pad, entitled 'now playing') and changes according to the type of media you're playing. Press the menu button (middle button/F7) to select these options.
 +
 
 +
This 3 button model is a new concept and very different from traditional navigation. Most people find it much faster once they become accustomed to it.
 +
 
 +
{{p}}
 +
 
 +
== Controlling the system with an Orbiter ==
 +
 
 +
=== An Orbiter is used to execute scenarios ===
 +
A scenario is a preset of configuration settings for LinuxMCE system components. Just like a music playlist sets a list of songs to be played, a scenario sets a list of states and actions to be applied. <br>
 +
In LinuxMCE, you create a scenario to define the state of the things controlled by the Core. You can create a Lighting Scenario to set the brightness of the light to a level appropriate for your TV viewing, and call it "Watch TV". When you to want to watch a movie on your TV, you can execute the "Watch TV" scenario, and the lights will dim at the level that corresponds to the settings configured in the "Watch TV" scenario. You could use the same scenario to close the binds, dim the lights, turn on the TV, and start playing the movie of your choice. <br>
 +
You could also create a lighting scenario called "entertaining guests" that would set the light levels, play some background music, unlock the door, etc. <br>
 +
What happens is determined by what scenario you choose to execute, and what you choose to see happening in a given scenario.
 +
 
 +
Using LinuxMCE basically consists of selecting scenarios that you have previously created. The tool used to select scenarios is the Orbiter.
 +
 
 +
 +
=== Selecting what to control ===
 +
 
 +
==== Selecting the room where the device is ====
 +
[[Image:Main-menu.jpg|200px|thumb|Web Orbiter / Main Orbiter Screen (UI1)]]
 +
Since the scenarios are grouped by room, the Orbiter needs to know what room you are in.
 +
 
 +
Depending on what Orbiter you use, the room set as default varies.
 +
:* For a Media Director, the room in which it is located is always displayed by default on the on-screen Orbiter.
 +
:* For mobile phones the Orbiter is set to "follow you": whenever you enter a room with a Media Director that has a Bluetooth dongle, your phone will detect it and will switch to that room, showing you that room's scenarios.
 +
You can manually specify the default room of an Orbiter through a setting on the "Orbiters" page in the LinuxMCE Admin Website.
 +
 
 +
Regardless of the default room set, or the default behavior of the type of Orbiter you use, there will always be a "rooms" button on the main menu showing the room, which can always be changed.
 +
 
 +
The menu items you see on the Orbiter are pertaining to the currently selected room. If you want to control devices in a different room that the one you are physically located in, you need to change the Orbiter to that room in order to access the scenarios that control the devices that are located in it.
 +
 
 +
Since each device normally stays in the location where it is used, the location for a Media Director's on-screen Orbiter does not need to be changed. However, when using a wireless web pad or PDA, you might need to change locations frequently as you move around and decide to "localize" your orbiter. <br>
 +
However, your Orbiter "location" need not be your actual physical location because you can manually select your desired location (and user) at any time. While using the on-screen Orbiter for the Media Director in the Living Room, you can change your "location" to the Bedroom, and control the devices that are in the Bedroom. The same principle applies throughout the system, to all orbiters, locations and users.
 +
 
 +
In the lower right corner of the main Orbiter screen, you will find the [[Who Am I, Where Am I|'who']] and [[Who Am I, Where Am I|'where']] buttons. They indicate the current user of the Orbiter and which room he or she currently is in (or wishes to control). Use this information to verify that you are looking at the right room.
 +
 
 +
To change rooms, click on the name of the room that is currently displayed on the Orbiter, and a menu of the rooms will be displayed. Select the room you want to control from the menu.
 +
{{p}}
 +
 
 +
==== Selecting a device from the room ====
 +
In LinuxMCE, devices are not selected directly, but as part of a set of actions configured in a scenario. Once a room has been selected, the default "main" UI screen is displayed where you can select one of several device categories. Pick the category you would like to explore, and select the scenario that represents what you would like the device to do.
 +
 
 +
{{p}}
 +
 
 +
=== Activating devices ===
 +
[[Image:Main-menu.jpg|200px|thumb|Web Orbiter / Main Orbiter Screen (UI1)]]
 +
 
 +
[[Image:Litscen.jpg|200px|thumb|Lighting Scenario Page LinuxMCE Admin Website]]
 +
 
 +
The icons on the left all lead to [[maps]] or floor-plans of your house. They show the lighting, media, climate, telecom and security [[scenario]] categories for each room. Next to each floor-plan icon, the existing scenarios for that category and room are listed. This is where you select what you would like to do.
 +
{{p}}
 +
 
 +
==== From a phone ====
 +
On the mobile phones, the screen is quite small, so rather than showing you all the scenarios for a room, the phone normally just shows the categories of scenarios: 'Lighting', 'Media', 'Climate', 'Security', 'Telecom', 'Other'.  Select a category, then select the scenario underneath it.  The 'c'  button always takes you back to the main menu.  The red 'off' button stops whatever media is playing.  And the 'menu' button hides Orbiter so you can use the phone as a normal phone again.  To show the Orbiter again, hold the menu button until a strip of currently running programs appears, and chose 'LinuxMCE MO'.  If the Orbiter isn't running, press the menu button and choose 'LinuxMCE MO' from the menu.  When you do, the Orbiter won't appear instantly --- it will only appear when a Media Director is in proximity and is able to connect to the phone and talk to the LinuxMCE MO software.  This can take around 15 seconds.  While using the Orbiter, all the other keys have different functions, depending on what you're doing.  A brief legend is usually shown on the screen and you can hold down the 'c' button for help.
 +
 
 +
{{p}}
 +
 
 +
== Quick tip ==
 +
No matter what the user interface looks like, and no matter whether you use the phone, keyboard, or infrared remote, the categories are always numbered as follows:
 +
*1=Lighting
 +
*2=Media
 +
*3=Climate
 +
*4=Telecom
 +
*5=Security
 +
*6=Misc
 +
 +
Within each category, the scenarios are numbered the same, and in the same order, for all Orbiters. <br>
 +
For example, the 2nd media scenario is nearly always TV.  Whether from a mobile phone, or using an infrared remote or keyboard for an on-screen Orbiter, 22 turns on the TV (2 for Media, 2 for TV). 
 +
 
 +
When creating lighting scenarios, LinuxMCE encourages you to make the first lighting scenario the 'default on' and the second the 'default off'.  In any room you can normally can hit 11 on any remote to turn the lights on, and 12 to turn them off. If you are consistent in setting up all rooms like this, you will find that you remember the number shortcuts quickly.
 +
 
 +
{{p}}
 +
 
 +
== System concepts for Orbiter Implementation ==
  
 
Here's a simplified [[UML]] for Orbiter (pocketfrog implementation).
 
Here's a simplified [[UML]] for Orbiter (pocketfrog implementation).
 +
 +
All graphics are rendered based on a 2844px by 1600px sized canvas.
  
 
[[Integrating custom controls in Orbiter]]
 
[[Integrating custom controls in Orbiter]]
Line 124: Line 266:
 
* [[FileSave screen]]
 
* [[FileSave screen]]
 
* [[Child devices]]
 
* [[Child devices]]
 
 
[[Category: Orbiters]]
 
[[Category: Admin Website]]
 

Latest revision as of 18:10, 13 March 2019

Version Status Date Updated Updated By
710 Unknown N/A N/A
810 Unknown N/A N/A
1004 Unknown N/A N/A
1204 Unknown N/A N/A
1404 Unknown N/A N/A
Usage Information
Orbiters Page Admin Website

LinuxMCE Orbiters

Orbiters are high-tech remote controls. In a LinuxMCE system, they are the devices that users use to communicate/interface with LinuxMCE. Users control all user-aspects and functionalities of LinuxMCE through a standardized Orbiter User Interface (UI) that is displayed on the Orbiters.

LinuxMCE allows a wide variety of devices to function as Orbiters. Any device that is able to connect to your LinuxMCE LAN with a web interface can be used as an Orbiter. This means that ordinary laptops or PCs, smart phones (Android and IOS), wireless tablets (ARM or PC), PDAs, mobile phones (Symbian or Microsoft Mobile) and even Bluetooth enabled smart phones can be used as Orbiters. For a comprehensive list of devices that have been used by LinuxMCE users as Orbiters, consult the orbiter hardware list.

LinuxMCE Media Directors can also be used as Orbiters. Each Media Director has an on-screen Orbiter UI that can be controlled via a touch-screen interface, a handheld remote control (such as a Windows MCE remote control), or a universal infrared remote control connected by USB-UIRT.

You can administer the LinuxMCE system through any connected Orbiter device. Obiters can operate when connected within your LinuxMCE network, or configured to access the system from the Internet (the web interface requires user authentication, and additional security measures are advised).



Web Orbiter

The term Web Orbiter refers to any laptop, PC, or other device on the LinuxMCE system which uses a standard web browser interface to display the Orbiter User Interface.
Any Linux, Windows, Windows CE, webpad or PDA device which loads the UI becomes a virtual remote control for the entire LinuxMCE system.

Media Director Web Orbiter

Web Orbiter / Main Orbiter Screen (UI1)

All Media Directors run an on-screen Orbiter, like the one to the right. This on-screen Orbiter can be controlled by using the keyboard/mouse attached to the Media Director. It is possible however to remotely control the Media Director's on-screen Orbiter by connecting an infrared, USB, or Bluetooth remote control, and using the remote control while sitting away from the Media Director.

Note
For the on-screen Orbiter on a Media Director, you can either use the number keys or the up/down/left/right/enter keys on the keyboard. More usage information is in the section "Large displays: the UI2 interface" below.



Web Orbiters for Windows (Laptops and CE Webpads)

Download Page for Admin Site

Any windows based device (laptop or device with a web browser) can be set up to work as an Orbiter by following the setup instructions here. For a comprehensive list of devices that have been used by LinuxMCE users as Orbiters, consult the orbiter hardware list.



Mobile Orbiters

This is a very simple software that runs on Bluetooth capable mobile phones and communicates using RFCOMM. It receives images of fully rendered screens from the core, sends back screen touches, key-presses, and location information.
It is the same program as the other Orbiters in the house, but with a different user interface created using the Designer. With it, the mobile phones become Orbiters just like any other.

The mobile orbiter works pretty much like a regular orbiter, except for the "who" and "where" buttons.

  • The "who" is determined when you chose to install the software. The family member who installs it is assumed to always be the user.
  • The "where" is automatic - whenever you come within range of a Media Director that can recognize the mobile orbiter, it will automatically select itself as the correct location.
    You are always able to manually select a different location when you want to control a location other than the one you are in.

Mobile Orbiters Follow Me

You can toggle the option for 'follow-me' mode, indicated with a red F. If you hold down the 2 button, a red F will appear for media. As you move around the house, your media will follow you. All 5 categories have follow-me.

Unless you have turned off the "Auto Detect new Bluetooth Phones" option on the Media Director, compatible Bluetooth Mobile phones will automatically be detected whenever they are within range of a Media Director. Be sure you have added the family member to whom the phone belongs on the LinuxMCE Admin Website first.

A message will appear on all Orbiters (you may need to turn on the TV to see the Media Director's on-screen Orbiter) asking if there is a new mobile phone and, if so, to whom it belongs. If you choose to install the software, the phone will beep. Just hit 'yes' to accept the software and accept the default prompts.

Mobile Orbiter phones

Several mobile phones can be made to work as mobile orbiters.



How to Setup an Orbiter

Connect the Orbiter to the LinuxMCE system

You can use one of two methods to connect an Orbiter:

  • a connection to a Media Director input port
  • a wireless connection to the home automation/multimedia LAN through an access point (or wireless router with the DHCP turned off). The Wireless Access Point/Router must obviously be connected to the Core server.

Setup the Orbiter in LinuxMCE from the administration screen

The LinuxMCE administration screen is where you add all the Orbiters you want to use in your house, no matter what type, whether Mobile Orbiters (e.g. mobile phones), regular Orbiters (e.g. wireless webpads and tablet PCs), Orbiters you want to run on a normal PC, or the on-screen Orbiters that every Media Director displays on its screen. All Orbiters connected to the system will appear on this page.

You can configure the following options for each orbiter:

  • Room: this is the room where the orbiter is normally kept. For mobile orbiters this selection isn't important since you carry them everywhere. For regular orbiters, the room is choosen by manual selection.
  • Leave Monitor on for OSD: OSD (On-screen display) refers to the state of the Orbiter running on the Media Director. This option is used to keep the TV ON when media is finished playing. Instead of shutting down, the TV remains ON and the Orbiter UI is displayed.
    The TV is turned off when the screen saver starts, or when you manually select Power-->Turn off display.
If you always control the Media Director using an Orbiter such as a web pad or mobile phone, leave this option unchecked and the TV will turn on when you're watching TV or playing media, and automatically turn off when you're not.
  • This device uses a Wi-Fi connection: This option is useful for webpads and PDAs with a Wi-Fi signal. Since Wi-Fi is somewhat unreliable, the Core and Orbiter will constantly 'ping' each other to make sure the connection is strong enough. The Orbiter software will exit whenever the Orbiter goes out of range.
  • No Effects: Many screens have special effects, such as animated buttons, fades, and so on. If the Orbiter has a slow processor, this may slow down response time. This option will disable any special effects on the Orbiter so it will run as fast as possible.
  • Language: All the text on the screen will appear in the selected language (as much as possible).
NOTE: You can create your own menus and translate screens into other languages using Designer.
  • Size: Choose the screen size you want. If this is an on-screen Orbiter on a Media Director, this will also set the Media Director's screen resolution.
  • Skin: There are several skins (motifs) from which to choose: 'Wood', 'Marble', etc. This option determines the skin that will be used.
  • User: This is the person who normally uses this Orbiter.
  • Quick Regen: To make the orbiters respond quickly, all images are pre-rendered. The User interface is "built" by the Orbiter Generator program. This option triggers the Orbiter Generator to re-generate the user interface for this Orbiter. It will only regenerate screens that appear to have changed.
  • Full Regen: This will cause Orbiter Generator to re-generate every screen on the Orbiter.
  • Reduce image size by %: This will cause Orbiter Generator to add some padding to the screens. This is useful if the screen margins are being displayed outside of the TV screen.
Developer info: although it may sound intuitive that the corresponding DeviceData is also called "Reduce image size by %", it is in fact called "Spacing". The PK_DeviceData for it is 150. The text "Reduce image size by %" comes from the DeviceTemplate_DeviceData table and it's the meaning of the device data in that specific device context
  • Offset: This causes the Orbiter to do backflips while reciting a poem backwards. (Just kidding. If you know what it does, please edit this section).

Change the look and feel of the Orbiter (optional)

Orbiters can be skinned in a variety of different ways. There is a dark version called Slate, and, a default skin, Titanium, which has multiple variations for data grid color. To explore your options, look at Orbiter Skins.

You can change the look and feel of the Orbiters in several ways on the LinuxMCE Admin Website-->Wizard-->Devices-->Orbiters page. You can also Create your own skin or user interface.

Orbiters graphics regeneration

Changes of scenarios, devices, floor-plans, or skins aren't immediately reflected on the Orbiter because they are regenerated before being reloaded and displayed.

An Orbiter's role is to send requests to the LinuxMCE Core. This activity requires very little resources and can be performed by devices with relatively slow processors (like PDA's and mobile phones) while running on a slow Wi-Fi connection. Since using the full-size graphics UI that is available directly to Media Directors would be too processor-intensive (requires scaling the graphics, redrawing the text, and re-rendering on the fly on each Orbiter), all the graphics are pre-scaled and pre-rendered by the OrbiterGen software module on the Core before being sent to the Orbiters that display them.

When changes are made, the LinuxMCE Admin Website-->Advanced-->Regenerate this Orbiter option is run and the OrbiterGen renders new graphics appropriate for the Orbiter that is being reloaded. This process takes about 60 seconds. Once completed, new buttons reflecting your changes will be displayed on the Orbiter.



The Orbiter User Interface

To control the system, you use an Orbiter, which is the LinuxMCE term for a remote control.

All Orbiters have the same basic function: display the scenarios in the room you're in and let you select one. Regardless of the type of orbiter in use, the Core sends the same list of scenarios. How and what is displayed depends on not only the type of device, but also the skin, the Main Menu, and the User. Whatever the orbiter, you will have the same options available, including a home button which takes you to the main menu, but how it is displayed may vary.

Variations in Orbiter UI menus

The skin

From the LinuxMCE Admin Website-->Wizard-->Devices-->Orbiters page, you can select a 'Skin'. This is the aesthetics (or motif): Wood, Marble, Modern, Classic, etc. What you see depends of the aesthetics (skin) you chose.

The Main Menu

From the LinuxMCE Admin Website-->Wizard-->Devices-->Orbiters page, you can also select the 'Main Menu', which determines how the user interface behaves.
If you change the 'Main Menu' interface, your Orbiter may look different from other Orbiters, and it may not display all the scenarios on the screen at the same time. In this case you may first have to choose a category, like you do with the mobile phones.

The 'User' settings

Every Orbiter has a User button on the main menu, except mobile phones. With a mobile phone Orbiter, you don't need to tell LinuxMCE who is using the Orbiter. The owner of the mobile phone is initially specified on the LinuxMCE Admin Website's Orbiter page and does not change. But with other Orbiters, which may be shared by the whole family, there will be a 'user' button that lets you select who is currently using the Orbiter.

The user selected determines what's available. When browsing media, only the current user's private media is shown. Other personal settings such as speed dials and phone books are also user based. What's displayed on the Orbiter depends on the current User.



Navigating the Orbiter displays

Based on their their screen size, the different Orbiters may display the User Interface slightly differently to make them more readable, and easier to use.

Small displays: the UI1 interface for Mobile Orbiters

On smaller displays, as on mobile phones or desktop phones, there's not enough room to show the scenarios themselves. To make them readable, the menus are displayed based on hierarchy levels, and only selected scenarios are shown. The top level menu shows only the categories: Lights, Media, Climate, Security and Telecom. Selecting a category displays the scenarios in that category. You must choose the scenario category from the main menu, such as "lighting", and then choose the specific scenario from the sub menu that appears.

The "UI1" interface is used on webpads and PDAs. It displays the scenarios in horizontal rows, and adds a "more" button when the list of scenarios does not fit on a row. It is the ideal interface for small screens.



Large displays: the UI2 interface for Web Orbiters

"UI2" is the preferred User Interface for Media Stations as it is easier to navigate using a traditional IR remote, much like any other Media Center PC with remote.
The menu button brings up the main menu, and you use the left/right/up/down/enter buttons to navigate it. The fast forward/rewind/skip +/skip - keys are used for media playback.

If you have a pointing device like a mouse or gyro air mouse, the UI2 interface also supports a unique control architecture that lets you do everything with 3 (programmable) buttons (plus ok and cancel). The 3 buttons are "MEDIA", "MENU", "AMBIANCE".

On a mouse with 3 programmable buttons (such as the gyration), these functions correspond to the buttons from left to right. If you are using a traditional 3 button mouse, you can use the F6, F7 and F8 keys on the keyboard for the three programmable functions instead. In both cases, the left mouse button is "ok", and the right mouse button is "cancel/go back".

Mouse button behavior is "absolute" when you press and hold the media/menu/ambiance button and "relative" when you tap and release.

The "absolute" behavior is generally more efficient. For example, in the case of the middle button (F7), "absolute" behavior means the action is executed without having to additionally click "ok". If you press and hold the middle button (F7) while moving your mouse pointer to the option, then let go, that option is executed. If you instead tap and release the menu button ("relative" behavior), you will only highlight the menu option. You must then press ok (the left mouse button) to execute the option.

Categories appear along the bottom of the screen, and the scenarios in each category popup vertically (like a pull-down menu in a PC, except upside down). If the main menu isn't already visible, bring it up by pressing the "start" button on a Windows IR remote, or the "menu" button on a 3-button mouse. To exit a menu, use the back button on the IR remote, the cancel button (right mouse button on a 3-button mouse), or the ESC key on a keyboard.

In UI2, the media is always full screen. If you're not playing your own media, the background media (i.e. screensaver images) is gallery art from the Internet (using flickr) or pictures you select. If only the screensaver images are displayed on the Media Station, press the menu/middle/F7 button to bring up the menu. Right click/ESC to get rid of it. (This works even if your own media is playing.)

If you're using UI2's 3-button navigation model, the normal media control options on a traditional remote are replaced with a single button: "media" (left soft button or F6). Press this and move the pointer up and down for your skip functions (ch+, ch-, skip fwd, skip back). Move the pointer left and right for speed control (rewind, fast forward). The further you move, the faster the media playback changes. If you hold the button down (the left soft button or F6), your movement will be "absolute". Instead of the traditional "jog shuttle-type" control, movement to the right skips to the end of your media, and movement to the left skips to the beginning. Once you get used to it, you will find that navigating media is orders of magnitude faster and easier with this model than with a traditional remote. You can find a spot in a 2 hour movie in only a couple seconds with a click of a single button (compared to a slew of button clicks required using a traditional remote).

Also, in UI2 you can press the "ambiance" button (right soft button or F8). Move up/down to adjust the lights, and left/right to adjust the volume. As with the media playback, if you hold the F8/right soft button down while you move left and right, your volume control is in "absolute" mode (not "relative"). Moving hard right turns up the volume full blast; hard left is mute. This requires you have a TV or receiver that is serial-controlled, however. LinuxMCE can then directly and instantly set the volume position in sync with your hand movements. (Few TVs and receivers have this feature, unfortunately.)

There are other media control functions besides the most commonly used fast fwd/rewind/skip up/skip down. You can, for example, choose 'subtitles' while watching a DVD, 'guide' while watching TV, and 'random' while listening to an audio CD. In the UI2 3 button model, these functions appear on the main menu (on the left-most pad, entitled 'now playing') and changes according to the type of media you're playing. Press the menu button (middle button/F7) to select these options.

This 3 button model is a new concept and very different from traditional navigation. Most people find it much faster once they become accustomed to it.



Controlling the system with an Orbiter

An Orbiter is used to execute scenarios

A scenario is a preset of configuration settings for LinuxMCE system components. Just like a music playlist sets a list of songs to be played, a scenario sets a list of states and actions to be applied.
In LinuxMCE, you create a scenario to define the state of the things controlled by the Core. You can create a Lighting Scenario to set the brightness of the light to a level appropriate for your TV viewing, and call it "Watch TV". When you to want to watch a movie on your TV, you can execute the "Watch TV" scenario, and the lights will dim at the level that corresponds to the settings configured in the "Watch TV" scenario. You could use the same scenario to close the binds, dim the lights, turn on the TV, and start playing the movie of your choice.
You could also create a lighting scenario called "entertaining guests" that would set the light levels, play some background music, unlock the door, etc.
What happens is determined by what scenario you choose to execute, and what you choose to see happening in a given scenario.

Using LinuxMCE basically consists of selecting scenarios that you have previously created. The tool used to select scenarios is the Orbiter.


Selecting what to control

Selecting the room where the device is

Web Orbiter / Main Orbiter Screen (UI1)

Since the scenarios are grouped by room, the Orbiter needs to know what room you are in.

Depending on what Orbiter you use, the room set as default varies.

  • For a Media Director, the room in which it is located is always displayed by default on the on-screen Orbiter.
  • For mobile phones the Orbiter is set to "follow you": whenever you enter a room with a Media Director that has a Bluetooth dongle, your phone will detect it and will switch to that room, showing you that room's scenarios.

You can manually specify the default room of an Orbiter through a setting on the "Orbiters" page in the LinuxMCE Admin Website.

Regardless of the default room set, or the default behavior of the type of Orbiter you use, there will always be a "rooms" button on the main menu showing the room, which can always be changed.

The menu items you see on the Orbiter are pertaining to the currently selected room. If you want to control devices in a different room that the one you are physically located in, you need to change the Orbiter to that room in order to access the scenarios that control the devices that are located in it.

Since each device normally stays in the location where it is used, the location for a Media Director's on-screen Orbiter does not need to be changed. However, when using a wireless web pad or PDA, you might need to change locations frequently as you move around and decide to "localize" your orbiter.
However, your Orbiter "location" need not be your actual physical location because you can manually select your desired location (and user) at any time. While using the on-screen Orbiter for the Media Director in the Living Room, you can change your "location" to the Bedroom, and control the devices that are in the Bedroom. The same principle applies throughout the system, to all orbiters, locations and users.

In the lower right corner of the main Orbiter screen, you will find the 'who' and 'where' buttons. They indicate the current user of the Orbiter and which room he or she currently is in (or wishes to control). Use this information to verify that you are looking at the right room.

To change rooms, click on the name of the room that is currently displayed on the Orbiter, and a menu of the rooms will be displayed. Select the room you want to control from the menu.

Selecting a device from the room

In LinuxMCE, devices are not selected directly, but as part of a set of actions configured in a scenario. Once a room has been selected, the default "main" UI screen is displayed where you can select one of several device categories. Pick the category you would like to explore, and select the scenario that represents what you would like the device to do.



Activating devices

Web Orbiter / Main Orbiter Screen (UI1)
Lighting Scenario Page LinuxMCE Admin Website

The icons on the left all lead to maps or floor-plans of your house. They show the lighting, media, climate, telecom and security scenario categories for each room. Next to each floor-plan icon, the existing scenarios for that category and room are listed. This is where you select what you would like to do.

From a phone

On the mobile phones, the screen is quite small, so rather than showing you all the scenarios for a room, the phone normally just shows the categories of scenarios: 'Lighting', 'Media', 'Climate', 'Security', 'Telecom', 'Other'. Select a category, then select the scenario underneath it. The 'c' button always takes you back to the main menu. The red 'off' button stops whatever media is playing. And the 'menu' button hides Orbiter so you can use the phone as a normal phone again. To show the Orbiter again, hold the menu button until a strip of currently running programs appears, and chose 'LinuxMCE MO'. If the Orbiter isn't running, press the menu button and choose 'LinuxMCE MO' from the menu. When you do, the Orbiter won't appear instantly --- it will only appear when a Media Director is in proximity and is able to connect to the phone and talk to the LinuxMCE MO software. This can take around 15 seconds. While using the Orbiter, all the other keys have different functions, depending on what you're doing. A brief legend is usually shown on the screen and you can hold down the 'c' button for help.



Quick tip

No matter what the user interface looks like, and no matter whether you use the phone, keyboard, or infrared remote, the categories are always numbered as follows:

  • 1=Lighting
  • 2=Media
  • 3=Climate
  • 4=Telecom
  • 5=Security
  • 6=Misc

Within each category, the scenarios are numbered the same, and in the same order, for all Orbiters.
For example, the 2nd media scenario is nearly always TV. Whether from a mobile phone, or using an infrared remote or keyboard for an on-screen Orbiter, 22 turns on the TV (2 for Media, 2 for TV).

When creating lighting scenarios, LinuxMCE encourages you to make the first lighting scenario the 'default on' and the second the 'default off'. In any room you can normally can hit 11 on any remote to turn the lights on, and 12 to turn them off. If you are consistent in setting up all rooms like this, you will find that you remember the number shortcuts quickly.



System concepts for Orbiter Implementation

Here's a simplified UML for Orbiter (pocketfrog implementation).

All graphics are rendered based on a 2844px by 1600px sized canvas.

Integrating custom controls in Orbiter

Orbiter refactoring - the new design

Devel notes: