Difference between revisions of "User Manual"

From LinuxMCE
Jump to: navigation, search
(How to get started with LinuxMCE)
 
(69 intermediate revisions by 3 users not shown)
Line 2: Line 2:
 
   | __TOC__
 
   | __TOC__
 
   |}
 
   |}
[[Category: Documentation| ]]
+
[[Category:Documentation| ]]
[[Category: Tutorials]]
+
[[Category:Tutorials| 0]]
[[Category: Install]]
+
  
 
<center>
 
<center>
 
<big><big><big>Welcome to LinuxMCE,<br>
 
<big><big><big>Welcome to LinuxMCE,<br>
 
 
home of the home of the future.</big></big></big>
 
home of the home of the future.</big></big></big>
 
</center>
 
</center>
 
{{P}}
 
  
 
== What is LinuxMCE? ==
 
== What is LinuxMCE? ==
 +
Though this distribution is called Linux Media Center Edition ({{l}}), it is not just a media center. It was so named because its main component was a replacement for other Operating Systems that at the time were called Media Center Editions. LinuxMCE's primary functions are integration and automation. It is much more than a media powerhouse. With LinuxMCE, you can integrate most automation technologies and enable them to inter-operate using their native [[automation | automation protocols]] because at its core, LinuxMCE is a multi-protocol automation gateway.
  
Built on the solid foundation laid down by Debian and Ubuntu, LinuxMCE (Linux Media Center Edition) is a free and open source '''media centered Linux distribution''' designed to allow a computer to act as:  
+
Built on the solid foundation laid down by Debian and Ubuntu, LinuxMCE is a free and open source Linux distribution designed to allow a computer to act as:  
 +
:* a home automation, lighting, and climate control system
 
:* a home theater PC (HTPC) for the living-room TV
 
:* a home theater PC (HTPC) for the living-room TV
:* a personal video recorder
+
:* a personal video recorder (PVR)
:* a home automation, lighting, and climate control system
+
 
:* a surveillance and security system
 
:* a surveillance and security system
:* a VoIP phone system with support for video conferencing
+
:* a VoIP phone system  
  
  
LinuxMCE is loaded with all kinds of goodies for the home of the future. It is able to record digital video, automate your home, function as a telephone switching hub for your home (in lieu of a boring intercom system), and tie it all together using an advanced messaging infrastructure. <br>
+
LinuxMCE is loaded with all kinds of features for the home of the future. It is designed to completely control the environment both inside and outside your home. Along with media features including the ability to record and playback audio and video, LinuxMCE is capable of enhancing your home environment by setting the desired room temperature and luminosity (controlling the blinds, curtains, lights, and thermostat), silencing the phone (or pausing the media while you're on the phone), setting the alarm, locking the doors, and switching devices on (and off) at any time you desire.  With the level of integration that LinuxMCE provides, you can control your home, and, enjoy the added benefit of the use of the included telephone and intercom system, security system monitor, media controller, etc... <br>
You can read more about it [http://www.linuxmce.com/ on the LinuxMCE site] and [http://en.wikipedia.org/wiki/Linuxmce on Wikipedia].
+
  
 +
LinuxMCE ties them all together using an advanced messaging infrastructure that enables it to act as your whole home automation controller.
 +
 +
<br>You can read more about it [http://www.linuxmce.com/ on the LinuxMCE site] and [http://en.wikipedia.org/wiki/Linuxmce on Wikipedia].
 
{{p}}
 
{{p}}
  
 
==== LinuxMCE software components ====
 
==== LinuxMCE software components ====
LinuxMCE brings together a number of software components in an integrated environment. It is a collection of many pieces of open source software. Each LinuxMCE installation is a custom mix made of a selection of devices, plug-ins, and other modules. LinuxMCE Home's primary documentation aims to explain how LinuxMCE works, how to install it, set it up, and use it, if you have a standard installation made with devices and plug-ins from the [[hardware|HCL]]. Please start with devices that are known to work with LinuxMCE, then move on to more advanced things. <br>
+
LinuxMCE brings together a number of software components in an integrated environment. It is a collection of many pieces of open source software. <br>
 
+
Each LinuxMCE installation is a custom mix made of a selection of devices, plug-ins, and other modules. LinuxMCE's primary documentation aims to explain how LinuxMCE works, how to install it, set it up, and use it.  Many devices have already been tested for easy setup and are Plug 'n' Play. Feel free to consult the ever growing [[hardware|HCL]]. If you are new to LinuxMCE, try to start with devices that are known to work with LinuxMCE, then move on to more advanced things.  If you are unsure, please ask on the [http://forum.linuxmce.org/ forums] or in [[IRC Chat]].<br>
Here is a list of the software components that make LinuxMCE run:
+
  
 +
Here is a list of some of the software components that make LinuxMCE run:
 
{|
 
{|
 
!Functionality !!  !!Platform/software used
 
!Functionality !!  !!Platform/software used
Line 39: Line 38:
 
| Operating system
 
| Operating system
 
|     
 
|     
| [[Kubuntu]]
+
| [[Kubuntu]], [[Raspbian]]
 
|-
 
|-
 
| TV & [[Personal video recorder|video recording]]  
 
| TV & [[Personal video recorder|video recording]]  
Line 59: Line 58:
 
| Video plaback
 
| Video plaback
 
|
 
|
| [[Xine]]
+
| [[Xine]], [[omxplayer]], [[VLC]]
 
|}
 
|}
  
Each software module has a detailed section which explains how to use, configure, and program it. The [[Software components#LinuxMCE Home Software Sections|LinuxMCE Home Software Sections]] is a menu that lists all the software modules included in LinuxMCE. You can use it to explore each of the software components that are part of LinuxMCE. <br>
+
Each software module has a detailed section which explains how to use, configure, and program it. The [[Software components#LinuxMCE Home Software Sections|LinuxMCE Home Software Sections]] is a menu that lists all the software modules included in LinuxMCE. You can use it to explore each of the software components that are part of LinuxMCE.
Since each of the software components have their own websites and development communities, you will find yourself at home with the ones that are familiar to you. Feel free to expand on what the community has already done by [[Contributing to LMCE|adding your contributions]] to this community effort.<br>
+
  
 +
Since each of the software components have their own websites and development communities, you will find yourself at home with the ones that are familiar to you. Feel free to expand on what the community has already done by [[Contributing to LMCE|adding your contributions]] to the {{l}} community effort.
 
{{p}}
 
{{p}}
  
Line 70: Line 69:
 
More information regarding LinuxMCE's relationship to Open Source can be found on the following pages:
 
More information regarding LinuxMCE's relationship to Open Source can be found on the following pages:
 
:* [[Open Source Info|Open Source information]]  
 
:* [[Open Source Info|Open Source information]]  
:* [[License|license information]]  
+
:* [[License|License information]]  
:* what to do if you're an [http://LinuxMCE.com/index.php?section=developer Open source developer]
+
:* What to do if you're an [http://LinuxMCE.com/index.php?section=developer Open Source developer]
:* LinuxMCE's [http://LinuxMCE.com/index.php?section=letter open source strategy]
+
:* LinuxMCE's [http://LinuxMCE.com/index.php?section=letter Open Source strategy]
  
{{P}}
+
{{p}}
  
== Composition of a LinuxMCE system ==
+
== The LinuxMCE system ==
A LinuxMCE system is made of 6 components:
+
This section introduces you to the components of the LinuxMCE system and explains what each system component's role is. Once familiar with the system as a whole, you'll be able proceed to the tutorials section to learn how to choose your hardware, then install, configure, and use each of the system components.
::* The Core
+
{{p}}
::* Media Directors
+
::* Orbiters
+
::* Network Attached Storage (NAS)
+
::* Security
+
::* Telecom
+
  
 +
====LinuxMCE terminology====
 +
{{l}} uses a planetary system terminology to refer to its components. The original project, [[pluto|PlutoHome]], used the celestial body Pluto and its orbiting moons as an analogy, and named its components after them. {{l}} grew from it and kept the terminology. <br>
 +
This section introduces you to the terminology used when refering to {{l}} components. For a brief definition of the names of celestial objects, see [[Astronomical bodies defined]] 
 
{{p}}
 
{{p}}
  
==Hardware==
+
==== Composition of a LinuxMCE system ====
 +
LinuxMCE enables various hardware devices to operate together as a system. At the heart of the system lies a server called the Core, which coordinates the interactions of all the hardware components that make up the system. <br>
  
Also see:  
+
A LinuxMCE system is made of the following components:  
 +
[[Image:Diagram1.jpg|200px|right]]
 +
:# [[#The Core | The Core]]
 +
:# [[#Media Directors | Media Directors]]
 +
:# [[#Orbiters | Orbiters]]
 +
:# [[#Security | Security]]
 +
:# [[#Home Automation|Home Automation]]
 +
:# [[#Telecom | Telecom]]
 +
:# [[#Network Attached Storage (NAS) | Network Attached Storage (NAS)]]
  
===Picking The Right Components===  
+
==== The Core ====
 +
A Core is a single dedicated PC acting as a server that interacts with all the components of the system. It is the heart and brain of the LinuxMCE system. You can read more about it on the [[Core]] page.
  
====The Core====
+
===== Personal Computing with the Core =====
 +
LinuxMCE is running Kubuntu Linux, complete with Office suites and all the programs you would need for everyday Personal Computing. See details on [[Personal Computing|Personal Computing with LinuxMCE]].
  
The most important component of a LinuxMCE system is the "[[Core]]".  This is the main LinuxMCE server that runs all of the primary applications and services. <br>
+
==== Media Directors ====
A good Pentium 4 with at least 80 GB of storage and two network cards (Gigabit ideally) is often sufficient for a standard core. Although these modest requirements will get a satisfactory system, a high-end server with RAID-5 storage will offer the best performance.
+
A '''Media Director'''  (also known as a '''Media Station''' or '''Media Manager''') is a system running LinuxMCE that is connected to a TV or sound system to deliver music and video. In your entertainment area, it serves as the player for media that you watch on your TV, or listen to on your sound system. The Media Director in a LinuxMCE system is hooked up to a TV or stereo, and becomes an integrated media player, PVR, video conferencing station, intercom, and, a monitoring and control portal for everything in the home. All Media Directors work together seamlessly as a whole-house solution offering the same convenience throughout the house.  
  
Because most of the workload is carried at the core, it is best to dedicate one PC as the Core server. This dedicated Core can be physically located anywhere on the network and still perform its duties. You can place it somewhere out of the way and not connect a monitor to it if you so choose. In this configuration, a Core is said to be running "headless". <br>
+
To learn more, read [[Media Director]].
If you only have one computer to install your LinuxMCE system, that computer will have to be used in a "[[hybrid]]" configuration, serving both as the Core server and the [[Media Director|media player]]. Since this Hybrid can be used as a media player, it will need to have a connection to a TV to enable you to watch your movies. <br>
+
To learn more about the minimum/optimum hardware for a LinuxMCE system, please read the [[hardware]] page. To find out if the equipment you are planning to use can be used to run LinuxMCE, look at the [[:Category:Hardware|LinuxMCE HCL]]. You can find a [[:Category:Cores|list of possible Core server platforms]] by following the link.
+
  
====Media Directors====
+
==== Orbiters ====
 +
'''Orbiters''' are remote controls. An [[Orbiter]] is a LinuxMCE interface device running our intelligent control software. It can run on a variety of devices ranging from mobile phones (Android/iOS/Symbian), to PCs, including PDAs, tablet PCs, laptops, and any web browser enabled device. <br>
 +
The purpose of an orbiter is to send commands to devices in the LinuxMCE system. <br>
 +
To learn all about it, read [[Orbiters]].
  
[[Media Directors]] (for short: MDs) are Home Theater PCs (HTPCs or just PCs, for short) with outputs to connect to a television (such as; VGA, HDMI, S-video or RCA jacks). Sound output to speakers, from a good sound card or embedded sound chipset, is also important.  An MD plays all your streaming music and video from the Core, from network attached storage (NAS), and from other MDs in your system. Output to a TV and speakers can create an awe inspiring multimedia experience.
+
==== Security ====
 +
Security is an integral part of LinuxMCE. Security functions include light control, surveillance camera monitoring, and motion detection. Events can be triggered based on detected motion or various sensors. LinuxMCE can send alerts to your mobile phone, set your alarm based on different schedules and scenarios, and even automatically lock the door when you leave your home. Find out more on the [[Security]] page.
  
[[:Category:Media_Directors|Here are some possible Media Director platforms.]]
+
==== Home Automation ====
 +
The '''Home Automation''' features of LinuxMCE attempt to be as convenient as possible and energy-efficient. With Home Automation you can control lights, climate and even the whereabouts of music or video played in your home. Many devices, including mobile phones, can be turned into remote controls for your entire house.
  
====Orbiters====
+
[[Home Automation|More about Home Automation]]
  
[[Orbiters]] are the devices used to communicate/interface with LinuxMCE at the user level. Orbiter devices display a standardized Orbiter User Interface (UI) from which users control all human interactive aspects of LinuxMCE. Multiple Orbiter options are available, such as; using a generic PC, a tablet (ARM or PC), PDAs, mobile phones running Symbian or Microsoft Mobile, or through a web interface accessible to any computer or smart phone connected within your LinuxMCE network. Orbiters may even be configured to [[Outside_Access|access the system from the Internet]] (the web interface requires user authentication, and additional security measures are advised). Media Directors have their own on-screen Orbiter UI.
+
==== Telecom ====
 +
'''Telecom''' is integrated into LinuxMCE in a sophisticated fashion. The VoIP system provides great flexibility. Each member of your family may have his/her own personal voice mailbox. You can permit the system to keep track of where you are in the house and route incoming calls to the nearest phone in your home, or to your mobile phone if you're not at home. Incoming calls will automatically pause any playing media, in the area you are in, allowing you to take calls without you missing a moment of your media experience.
  
[[:Category:Orbiters|Here are some possible Orbiter platforms.]]
+
[[Telecom|More about Telecom]]
  
In addition, Orbiter can be skinned in a variety of different ways. There is a default skin, Titanium, which has multiple variations for data grid color, and a dark version called Slate.
+
==== Network Attached Storage (NAS) ====
 +
You can extend your LinuxMCE system's storage with a NAS device for your music and video collection. LinuxMCE can automatically use designated devices for storage requirements including PVR functions and general media storage for audio/video/photos.  
  
[[Orbiter Skins|Here Are some Orbiter Skins]]
+
When you connect a NAS to the network LinuxMCE will automatically recognize it and ask you how to integrate it into the system. See [[Network Attached Storage]]
  
====Network Attached Storage====
+
{{p}}
  
An alternative to storing all or most of your video, pictures and music media files on the hard drives of the LinuxMCE Core itself is to store your files on a [[Network Attached Storage|network attached storage]] (NAS) server. You can store large music and video collections this way. Your LinuxMCE system can also record TV shows (using MythTV) and video from your security cameras (using Motion), both of which consume considerable hard drive storage space. One example of an NAS is the [[Buffalo Terastation]].
+
== Understanding LinuxMCE operation ==
 +
At its core, LinuxMCE is a router connected to a bus, running with a communication protocol called DCE. You can think of a LinuxMCE installation as a stack of devices that connect to the bus to communicate to the DCE Router using the DCE protocol.
 +
{{p}}
  
[[:Category:Network Attached Storage|Here are some possible NAS solutions.]]
+
===The DCE protocol===
 +
DCE is the protocol used by {{l}} system components to interact. With DCE, hardware and software of different native protocols can:  
 +
* communicate with each other using a set of well defined and accepted commands (On, Off, Volume Up, Volume Down, Mute, Press 0 through 9, etc.)
 +
* emit events to notify that something happened
 +
* hold configuration (this light switch is ON, it connects to port B on the interface, etc.)
  
====Additional Devices====
 
  
*Home [[automation]] devices, such as Z-wave peripherals, for controlling your lights, HVAC, appliances and some aspects of security
+
The acronym DCE comes from the three major operations performed using the protocol: Data, Commands, and Events. <br>
*Security/surveillance [[:Category:cameras|cameras]]
+
*An LCD or plasma screen TV
+
*A streaming media music player such as the [[SlimDevices Squeezebox]]
+
*An alarm system with a compatible interface
+
  
There are examples of devices that require a controller device called a [[gc100]] (including some of those listed above).  A gc100 device allows these and other devices that communicate using a serial port (e.g. alarm panels) or its built-in [[infrared]] transceiver/in & out ports (e.g. a TV) to connect to the network and talk with your LinuxMCE Core.
+
A DCE device can:
 +
:# Set/Retrieve configuration which we call device ''''''<big>D</big>'''ata'''
 +
:# Perform a ''''''<big>C</big>'''ommand''' (turn on, turn off, fast forward, etc.)
 +
:# Send/Report ''''''<big>E</big>'''vents''' (e.g. 'motion detected', 'playback started', etc.)
  
Other methods of serial and network communication are possible as well (Search the Hardware section of this Wiki for specific examples).
+
For a list of the protocols {{l}} supports, see [[Automation#Automation protocols|Automation protocols]]
 +
{{p}}
  
====Plug 'n' Play Capabilities====
+
=== Devices ===
 +
{{#lsth:Devices|What is a Device?}}
  
Once LinuxMCE is installed, you can treat it like an appliance -- plug it in, turn it on, and leave it alone. You don't even need to install any software on the media PCs that will be used as [[Media Directors]]. If these PCs are connected to the Core by wired Ethernet, they can usually be set to [[Network Boot for Media Directors|boot LinuxMCE from the Core server over the network]] whenever you want to use them as a Media Director. The rest of the time they can be used as a regular PC, using whatever operating system is already on their hard drives.
+
=== Scenarios ===
 +
{{#lsth:Scenarios|What is a Scenario?}}
 +
=== Events ===
 +
Devices report events, such as 'Playback started' and 'Motion Sensor tripped'. If you want something to happen automatically in LinuxMCE, you can create Event Handlers that react to these events. For example, you can create an event handler that listens for the 'Motion Sensor tripped' event from a motion detector and turns on the lights in response. An event handler might listen for the 'Sunrise' event, which could then prompt the sprinklers to come on.  
  
The LinuxMCE Core must (ideally) be the '''only''' DHCP server within your LinuxMCE '''internal''' network, for it to offer both plug-and-play and network boot services. The Core server bridges your "external" home LAN (which may have a DHCP server running) and an "internal" LinuxMCE LAN (which should be the only device to serve DHCP within the internal network). For this to work, it is recommended to have [[Why dual network cards?|dual network cards]] in the Core -- one to connect to the "external" network (which can be your home LAN or simply your Internet connection), and one for the "internal" LinuxMCE network (to which all your LinuxMCE devices are connected). The LinuxMCE Core server effectively acts as both the DHCP server and the firewall for the "internal" LinuxMCE network.
+
LinuxMCE will create several default event handlers. In rooms which you have a TV and lights an event handler is created that listens for the 'Watching Media' event sent by a media player and , when detected, the Showtime scenario (which dims the lights) is executed in response.  So when you start a movie the Showtime Scenario will be executed and the lights will be dimmed.  LinuxMCE also includes other default event handlers that monitor for events like 'Security Breach' and 'Fire Alarm' (from connected sensors or security systems).
 +
{{p}}
  
Note that you can easily have PCs outside of the LinuxMCE internal network, if you choose. Simply connect them to the external network, rather than the internal LinuxMCE network. Alternatively, you can choose to have all PCs in your house be part of the LinuxMCE network. In this case the Core server provides DHCP and firewall services for your entire home LAN.
+
=== Interactions ===
 +
Commands (usually groups of commands) are arranged in Scenarios that control devices in the home when activated. Orbiters ("remote controls") load user interfaces that have buttons (Scenarios) used to send commands to the system. Devices will report events to the Core, which will then uses the information to send predefined commands (Scenarios) and setup the state of the system through the house. The Core coordinates interaction between devices. Each device responds to commands based on its intent and the magic of automation happens.
  
====Wiring Considerations====
+
{{p}}
The connections between the Core server and the Media Directors require significant network bandwidth for data transmission. Furthermore, netbooting (loading the operating system of the Media Directors via network connection to the Core, versus their own hard drives) is not easy accomplished through wireless networking. Network booting of the Media Directors is best done with a wired (Ethernet) connection. For this reason, it is recommended you have sufficient (in quantity and quality) wired Ethernet connections between the Core server and each peripheral Media Director.
+
  
Other devices, which do not have high data transmission requirements, such as Orbiter remote controls, may easily connect through a wireless access point within the LinuxMCE internal network.
+
== How to get started with LinuxMCE ==
 +
Next, go to the [[How to get started with LinuxMCE]] to learn how to install, and start using the system.
  
* [[Wiring Considerations]]
+
{{p}}
 
+
====Additional Hardware Resources====
+
Choosing hardware components can be difficult. There are multiple articles regarding hardware selection in the [[:Category:Hardware | Hardware Category]].
+
 
+
Also see:
+
* [[What hardware I will need]]
+
* [[Video#Equipment_used_in_the_demo | A list of hardware used in the demo video]]
+
 
+
==== Using your own PCs ====
+
 
+
LinuxMCE is Linux-based. Drivers for hardware devices are not always immediately available for Linux as soon as they may be for Windows or other operating systems, depending heavily on hardware manufacturer support. However, the hardware support in Linux has improved substantially in recent years. Still, if you have purchased new or exotic hardware, there may not yet be drivers available for Linux. Check out the [[:Category:Hardware|Hardware Category]] first. Also, check out [http://www.linuxcompatible.org linuxcompatible.org] for a list of Linux-compatible hardware. Third, if a device is supported by the underlying version of Ubuntu/Kubuntu on which your chosen version of LinuxMCE is based (for instance; LinuxMCE 8.10 or LinuxMCE 10.04), it is more likely to be supported in LinuxMCE. And finally, as a last resort, to find out if your hardware might work, you might consider posting a question in the LinuxMCE [http://forum.linuxmce.com/ forums]. 
+
 
+
=====Additional Hardware=====
+
 
+
You can also put multiple devices in (or connected to) the [[Core]], such as hardware expansion cards (e.g.: analog capture cards for video surveillance & Ethernet adapter cards), USB video capture devices or analog phone line interfaces (e.g. from www.digium.com). Make sure they are Linux compatible, as indicated above. There are several choices as to where you may install devices in your LinuxMCE system. For example, you could put a PVR/satellite video capture card in an individual Media Director PC, a network based digital TV tuner or telephone-to-VOIP ATA device attached to the network, or you could put a device in the LinuxMCE Core itself (where it will be more easily shared throughout the system).
+
 
+
Bluetooth enabled mobile phones and devices can be used as remote controls by adding a USB Bluetooth Dongle to each Media Director (anywhere from $5 to around $25 USD). Each Media Director reports the signal strengths of each Bluetooth phone or device (this is how the Core figures out what room you're in).  Since all LinuxMCE controlled resources in the whole house are shared, you will be able to control any device in any room from anywhere -- as long as you're within Bluetooth range of a Media Director (usually within 10m, or 30feet).
+
 
+
You can also use low-cost network connected audio players, like the Squeeze Box, which can be placed anywhere in the system.
+
 
+
==Installation of Software Components==
+
There are currently two methods of LinuxMCE installation.  The DVD installation requires a single installation disk. The CD method requires 3 disks (one of which is the Kubuntu LiveCD), but offers more flexibility in installation.
+
 
+
'''''Note:''' This section does not cover the net installation method for [[Installing_1004|LinuxMCE 10.04]], which is currently in Alpha testing phase. A DVD installation method, in current development, exists for LinuxMCE 10.04, as well.''
+
 
+
===DVD Installation===
+
*[[DVD Installation]]
+
===CD Installation===
+
*[[Installation Guide]]
+
 
+
==Setting Up LinuxMCE==
+
===Tell LinuxMCE About Your Home===
+
 
+
* Also see the [[QuickStart Guide | Quick Start Guide]].
+
* The appearance of LinuxMCE depends on your graphics card. Read [[Graphics Test]] for information on how to determine the capabilities of your current video card.
+
* Also see the legacy instructions: [[Tell LinuxMCE about your home]]
+
 
+
 
+
Setting up your LinuxMCE system consists of 4 steps:
+
 
+
* Providing some general information, such as what kind of network you have.
+
* Specifying the devices in your home (lights, TVs, surveillance cameras, etc.).
+
* Creating [[scenarios]]. A "scenario" is a group of commands, or tasks, you want executed when you touch a button. Each scenario you create will appear on the Orbiter remote controls as an option button.
+
:*Scenarios are generally organized into 5 categories: lighting, media, climate, security and telephone. You can create, for example, a lighting scenario called "Entertaining" which turns on all the lights in the house and in the front yard. A button labeled "Entertaining" will then appear on the Orbiters in the lighting section -- touch it to activate the scenario. Any scenario can do anything. For example, just because the "Entertaining" scenario is a lighting scenario doesn't mean the scenario only affects lights. You can make the scenario also play some music, and maybe open the front gate. You can use the "Advanced, My Scenarios" menu option for low-level control over a scenario, to make it do whatever you want. However the Wizard includes pages that make it very easy to create scenarios. For example, when you add a lighting scenario with the Wizard, it lists all the lights in the house and lets you pick the ones you want to change with the scenario.
+
*Creating event handlers. This is how you tell LinuxMCE you want it to do something in response to some event. For example, you may want LinuxMCE to turn on the Front Porch light when a motion detector is tripped. Or you want it to play a loud message on the TV when there is a security breach. Perhaps you would like to stop watering the lawn when it rains.
+
 
+
===AV Wizard===
+
The Audio/Video Wizard is designed to allow for easy setup of the components (ranging from a simple monitor to an HCTV with composite inputs and outputs) to which a [[Media Director]] outputs the multimedia content that is streamed from the [[Core]].
+
*[[AV Wizard]]
+
 
+
===House Setup Wizard===
+
This allows you to specify the floorplan of your house and to assign scenarios to each room.
+
*[[House Setup Wizard]]
+
 
+
===Media Player Wizard===
+
This allows you to specify the location of file shares and other media locations within your system.
+
*[[Media Player Wizard]]
+
 
+
===Using the LinuxMCE Admin Website===
+
Although there are automated wizards to assist in setup, there are more options provided in the [[LinuxMCE Admin Website|LinuxMCE Admin web page]].  The user can create and modify any and all devices that LinuxMCE controls through the Admin page. It is displayed by any web browser, such as the ones available both on the Core/Hybrid and on each Media Director.
+
+
*[[LinuxMCE Admin Website|LinuxMCE Admin web page]]
+
 
+
===Scenarios, Events & Security===
+
 
+
In the [[Scenarios]] page, add the scenarios, or buttons, you want for each room. For example:
+
*A Lighting scenario in the Bedroom called 'Go to sleep' can dim the lights.
+
*A Security scenario in the Living Room can view a camera.
+
 
+
When you do a 'quick reload router', DCERouter will automatically add Media Scenarios for each room which will include the media devices that are located there.
+
 
+
Your new scenarios will then be visible on the Orbiter remote controls after you [[Usage_Intro#Reload_Router_.26_Regen_Orbiters|regenerate]].
+
 
+
Add [[Events]] to specify conditional events (such as turning on a light) when something else happens (a motion detector is tripped, the sun sets, etc.). This can be used for security. For example, you want to be notified (by VOIP, a message on a TV, etc.) when certain events happen in the house (motion detector is tripped). Settings will take effect next time you reboot or 'quick reload router'.
+
 
+
===Configuring Myth TV===
+
Most of the setup for MythTV is done automatically. For more information take a look at the following link.
+
 
+
* [[Setting up MythTV]].
+
 
+
===Upload Your Media===
+
 
+
LinuxMCE is capable of accessing Microsoft Windows-compatible network shares using the built-in Samba network protocol. LinuxMCE also creates a "public" share folder on the Core (or NAS) for storing the files that the whole family can share -- movies, music, etc. A "private" share folder for each family member is also created on the Core (or NAS). These network shares can be accessed from Windows-based PCs on your home LAN by listing the LAN IP address of the Core (or hybrid) as a network share (it is usually 192.168.80.1).
+
 
+
Once you copy your media into the appropriate folder, go to the [[LinuxMCE Admin Website|LinuxMCE Admin web page]]-->Files & Media--> Media Files Sync and be sure your media is now in the database. You can now add attributes (artist, actor, etc.) and choose cover art.
+
 
+
=== Configure Telephony===
+
 
+
==General Usage Pages==
+
 
+
===Lights===
+
* [[Control lights/climate using scenarios | Control Lighting Devices with Scenarios]]
+
* [[Control lights or climate with a floorplan | Control Lights from the Floorplan]]
+
 
+
===Climate Control===
+
* [[Control lights/climate using scenarios | Control Climate Devices with Scenarios]]
+
* [[Control lights or climate with a floorplan | Control Climate from the Floorplan]]
+
 
+
===Security===
+
* [[Monitor surveillance cameras]]
+
* [[Arm or disarm the alarm using the Orbiters]]
+
* Arm or disarm LinuxMCE's alarm using proximity sensors
+
* [[Automatically take pictures when sensors are disturbed]]
+
* [[Have LinuxMCE notify me of security alerts]]
+
 
+
===Media===
+
 
+
====Controlling A/V Equipment====
+
* [[Have LinuxMCE automatically control the TV and Stereo]]
+
* [[Control the media director's volume using either a receiver]]
+
* [[Use network audio players for a whole-house music solution]]
+
* [[Use a satellite/cable box with the PVR]]
+
* [[Control a TV or cable/satellite box]]
+
* [[Control regular A/V equipment]]
+
* [[Control A/V equipment with RS232/USB/Ethernet]]
+
 
+
====Using Media====
+
* [[Watch a DVD/Listen to a CD]]
+
* [[Rip a CD/DVD to the Core]]
+
* [[Watch/Listen to media stored on the Core]]
+
* [[Play the same media in multiple rooms simultaneously]]
+
* [[Play Games on LinuxMCE]]
+
 
+
====Media Attributes====
+
* [[Flag media stored on the core as private]]
+
* [[Flag whatever media I am watching now as private]]
+
* [[Catalog media with attributes]]
+
* [[Search for media by attributes using the Orbiters]]
+
* [[Make LinuxMCE do something when I start media]]
+
* [[Have my media follow me]]
+
* [[How are media files organized?]]
+
* [[Use my own pictures in the Screen Saver]]
+
 
+
===Telecom===
+
* [[LinuxMCE telecom features | General Usage Guide]]
+
* Make phone calls using a VOIP provider listed at [[VOIP Service Providers]].
+
* [[Manual Phones Configuration | How to Configure Phone Lines Manually]]
+
* Make phone calls using a regular phone line (POTS), ISDN or T1
+
* Do video conferencing
+
 
+
==Troubleshooting==
+
 
+
This troubleshooting guide assumes some basic knowledge of Linux. In LinuxMCE, everything is a device. In the [[LinuxMCE Admin Website]], you can choose [[Devices]], to see a list of all the devices in your installation. We recommend you don't make changes here - you can break things! The top level device is usually a computer, either the core or a hybrid or an orbiter. All the logs for the devices on that computer are stored in /var/log/pluto. You can ssh in to the core using the root password you chose, and from there, you can ssh to all the media directors-shared keys were automatically setup.
+
 
+
All current activity is logged in the file that ends in ".log". At bootup, certain device logs are archived into /var/log/pluto/*.log.*.gz files
+
 
+
All DCE devices are running in separate screen sessions. Type "screen -ls" to see all active screen sessions,
+
and "screen -r PID" where PID is the id you saw in the -ls list to attach to the screen session. There is not much for you to do or see though since all the output on stderr and stdout is going into the logs. [[DCERouter]] is running the same way on your core or hybrid.
+
 
+
At bootup, all the scripts listed in the [[LinuxMCE Admin Website]] under [[Boot Sequence]] are run. If any programs crash, a core dump file is put in /usr/pluto/coredump.
+
 
+
If you're a programmer, you can also check out our [[Programmer's Guide]].  If you want to learn about writing DCE Devices, see the [[DCE]].
+
 
+
*[[Testing and troubleshooting devices]]
+
*[[Development status for all modules|What works and what doesn't?]]
+
 
+
==Other Items ==
+
*[[Security & Privacy Issues]]
+
*[[Installing Dansguardian]]
+
*[[Add support for new remote controls]]
+
*[[Automatic diskless boot of media directors]]
+
*[[Change the look and feel of the Orbiter]]
+
*[[Create my own skins or GUI for LinuxMCE]]
+
*[[Turn off photo screensaver]]
+
 
+
== Accessibility and Languages ==
+
 
+
*[[Translate the GUI into another language]]
+
 
+
*[[Accessibility]] Tools to make Linuxmce accessible
+
 
+
== Reference ==
+
 
+
''Also see:''
+
 
+
*[[:Category:Tutorials|User's Guide and Tutorials Category]]
+
 
+
*[[LinuxMCE|What is LinuxMCE?]]
+
 
+
*[[software components | Software Components]]
+
 
+
*[[What can I do with LinuxMCE?]]
+
 
+
*[[Usage Intro]]
+

Latest revision as of 02:59, 22 March 2016

Welcome to LinuxMCE,
home of the home of the future.

What is LinuxMCE?

Though this distribution is called Linux Media Center Edition (LinuxMCE), it is not just a media center. It was so named because its main component was a replacement for other Operating Systems that at the time were called Media Center Editions. LinuxMCE's primary functions are integration and automation. It is much more than a media powerhouse. With LinuxMCE, you can integrate most automation technologies and enable them to inter-operate using their native automation protocols because at its core, LinuxMCE is a multi-protocol automation gateway.

Built on the solid foundation laid down by Debian and Ubuntu, LinuxMCE is a free and open source Linux distribution designed to allow a computer to act as:

  • a home automation, lighting, and climate control system
  • a home theater PC (HTPC) for the living-room TV
  • a personal video recorder (PVR)
  • a surveillance and security system
  • a VoIP phone system


LinuxMCE is loaded with all kinds of features for the home of the future. It is designed to completely control the environment both inside and outside your home. Along with media features including the ability to record and playback audio and video, LinuxMCE is capable of enhancing your home environment by setting the desired room temperature and luminosity (controlling the blinds, curtains, lights, and thermostat), silencing the phone (or pausing the media while you're on the phone), setting the alarm, locking the doors, and switching devices on (and off) at any time you desire. With the level of integration that LinuxMCE provides, you can control your home, and, enjoy the added benefit of the use of the included telephone and intercom system, security system monitor, media controller, etc...

LinuxMCE ties them all together using an advanced messaging infrastructure that enables it to act as your whole home automation controller.


You can read more about it on the LinuxMCE site and on Wikipedia.

LinuxMCE software components

LinuxMCE brings together a number of software components in an integrated environment. It is a collection of many pieces of open source software.
Each LinuxMCE installation is a custom mix made of a selection of devices, plug-ins, and other modules. LinuxMCE's primary documentation aims to explain how LinuxMCE works, how to install it, set it up, and use it. Many devices have already been tested for easy setup and are Plug 'n' Play. Feel free to consult the ever growing HCL. If you are new to LinuxMCE, try to start with devices that are known to work with LinuxMCE, then move on to more advanced things. If you are unsure, please ask on the forums or in IRC Chat.

Here is a list of some of the software components that make LinuxMCE run:

Functionality Platform/software used
Operating system Kubuntu, Raspbian
TV & video recording MythTV / VDR
Telephony . . . Asterisk
Home automation Pluto
Surveillance camera recording Motion
Video plaback Xine, omxplayer, VLC

Each software module has a detailed section which explains how to use, configure, and program it. The LinuxMCE Home Software Sections is a menu that lists all the software modules included in LinuxMCE. You can use it to explore each of the software components that are part of LinuxMCE.

Since each of the software components have their own websites and development communities, you will find yourself at home with the ones that are familiar to you. Feel free to expand on what the community has already done by adding your contributions to the LinuxMCE community effort.

Open Source and licensing

More information regarding LinuxMCE's relationship to Open Source can be found on the following pages:



The LinuxMCE system

This section introduces you to the components of the LinuxMCE system and explains what each system component's role is. Once familiar with the system as a whole, you'll be able proceed to the tutorials section to learn how to choose your hardware, then install, configure, and use each of the system components.

LinuxMCE terminology

LinuxMCE uses a planetary system terminology to refer to its components. The original project, PlutoHome, used the celestial body Pluto and its orbiting moons as an analogy, and named its components after them. LinuxMCE grew from it and kept the terminology.
This section introduces you to the terminology used when refering to LinuxMCE components. For a brief definition of the names of celestial objects, see Astronomical bodies defined

Composition of a LinuxMCE system

LinuxMCE enables various hardware devices to operate together as a system. At the heart of the system lies a server called the Core, which coordinates the interactions of all the hardware components that make up the system.

A LinuxMCE system is made of the following components:

Diagram1.jpg
  1. The Core
  2. Media Directors
  3. Orbiters
  4. Security
  5. Home Automation
  6. Telecom
  7. Network Attached Storage (NAS)

The Core

A Core is a single dedicated PC acting as a server that interacts with all the components of the system. It is the heart and brain of the LinuxMCE system. You can read more about it on the Core page.

Personal Computing with the Core

LinuxMCE is running Kubuntu Linux, complete with Office suites and all the programs you would need for everyday Personal Computing. See details on Personal Computing with LinuxMCE.

Media Directors

A Media Director (also known as a Media Station or Media Manager) is a system running LinuxMCE that is connected to a TV or sound system to deliver music and video. In your entertainment area, it serves as the player for media that you watch on your TV, or listen to on your sound system. The Media Director in a LinuxMCE system is hooked up to a TV or stereo, and becomes an integrated media player, PVR, video conferencing station, intercom, and, a monitoring and control portal for everything in the home. All Media Directors work together seamlessly as a whole-house solution offering the same convenience throughout the house.

To learn more, read Media Director.

Orbiters

Orbiters are remote controls. An Orbiter is a LinuxMCE interface device running our intelligent control software. It can run on a variety of devices ranging from mobile phones (Android/iOS/Symbian), to PCs, including PDAs, tablet PCs, laptops, and any web browser enabled device.
The purpose of an orbiter is to send commands to devices in the LinuxMCE system.
To learn all about it, read Orbiters.

Security

Security is an integral part of LinuxMCE. Security functions include light control, surveillance camera monitoring, and motion detection. Events can be triggered based on detected motion or various sensors. LinuxMCE can send alerts to your mobile phone, set your alarm based on different schedules and scenarios, and even automatically lock the door when you leave your home. Find out more on the Security page.

Home Automation

The Home Automation features of LinuxMCE attempt to be as convenient as possible and energy-efficient. With Home Automation you can control lights, climate and even the whereabouts of music or video played in your home. Many devices, including mobile phones, can be turned into remote controls for your entire house.

More about Home Automation

Telecom

Telecom is integrated into LinuxMCE in a sophisticated fashion. The VoIP system provides great flexibility. Each member of your family may have his/her own personal voice mailbox. You can permit the system to keep track of where you are in the house and route incoming calls to the nearest phone in your home, or to your mobile phone if you're not at home. Incoming calls will automatically pause any playing media, in the area you are in, allowing you to take calls without you missing a moment of your media experience.

More about Telecom

Network Attached Storage (NAS)

You can extend your LinuxMCE system's storage with a NAS device for your music and video collection. LinuxMCE can automatically use designated devices for storage requirements including PVR functions and general media storage for audio/video/photos.

When you connect a NAS to the network LinuxMCE will automatically recognize it and ask you how to integrate it into the system. See Network Attached Storage



Understanding LinuxMCE operation

At its core, LinuxMCE is a router connected to a bus, running with a communication protocol called DCE. You can think of a LinuxMCE installation as a stack of devices that connect to the bus to communicate to the DCE Router using the DCE protocol.

The DCE protocol

DCE is the protocol used by LinuxMCE system components to interact. With DCE, hardware and software of different native protocols can:

  • communicate with each other using a set of well defined and accepted commands (On, Off, Volume Up, Volume Down, Mute, Press 0 through 9, etc.)
  • emit events to notify that something happened
  • hold configuration (this light switch is ON, it connects to port B on the interface, etc.)


The acronym DCE comes from the three major operations performed using the protocol: Data, Commands, and Events.

A DCE device can:

  1. Set/Retrieve configuration which we call device 'D'ata
  2. Perform a 'C'ommand (turn on, turn off, fast forward, etc.)
  3. Send/Report 'E'vents (e.g. 'motion detected', 'playback started', etc.)

For a list of the protocols LinuxMCE supports, see Automation protocols

Devices

For the purpose of consistency throughout this documentation, hardware equipment will be called "hardware device". The generic term "device" is used to refer to the software object in LinuxMCE that enables DCE communication between hardware and software components in the LinuxMCE system.

The LinuxMCE Core is a router that LinuxMCE system components use to communicate using the DCE protocol. Hardware devices and software without DCE capability can not send and receive communications over the DCE bus. LinuxMCE solves the problem by creating software "devices" that connect to the DCE bus for the purpose of translating hardware and software native communications into DCE. At the moment, no hardware is manufactured specifically with the DCE protocol. To control a hardware device with LinuxMCE, a corresponding software device is created. Each LinuxMCE system component has a corresponding "device" that it uses to communicate in DCE with the other LinuxMCE system components.

A device is a software object in LinuxMCE that connects a software or hardware component to the DCE bus to enable it communicate with the other LinuxMCE system components using the DCE protocol, translating various hardware and software communications into DCE when necessary.




Scenarios

"Scenarios", "Activities", and "Command Groups" are interchangeable terms -- they mean the same thing.
A scenario is a group of commands that can be sent to a device (or series of devices).
To perform an action in LinuxMCE, a scenario is chosen from the ones created by the user, or from one of the categories that are created by default during installation (located on the main menu of an Orbiter).

Each scenario is a group of commands, or tasks, that appears on the Orbiter as a button.



Events

Devices report events, such as 'Playback started' and 'Motion Sensor tripped'. If you want something to happen automatically in LinuxMCE, you can create Event Handlers that react to these events. For example, you can create an event handler that listens for the 'Motion Sensor tripped' event from a motion detector and turns on the lights in response. An event handler might listen for the 'Sunrise' event, which could then prompt the sprinklers to come on.

LinuxMCE will create several default event handlers. In rooms which you have a TV and lights an event handler is created that listens for the 'Watching Media' event sent by a media player and , when detected, the Showtime scenario (which dims the lights) is executed in response. So when you start a movie the Showtime Scenario will be executed and the lights will be dimmed. LinuxMCE also includes other default event handlers that monitor for events like 'Security Breach' and 'Fire Alarm' (from connected sensors or security systems).

Interactions

Commands (usually groups of commands) are arranged in Scenarios that control devices in the home when activated. Orbiters ("remote controls") load user interfaces that have buttons (Scenarios) used to send commands to the system. Devices will report events to the Core, which will then uses the information to send predefined commands (Scenarios) and setup the state of the system through the house. The Core coordinates interaction between devices. Each device responds to commands based on its intent and the magic of automation happens.



How to get started with LinuxMCE

Next, go to the How to get started with LinuxMCE to learn how to install, and start using the system.