Difference between revisions of "User Manual"

From LinuxMCE
Jump to: navigation, search
m (A Dedicated Hybrid)
(How to get started with LinuxMCE)
 
(250 intermediate revisions by 15 users not shown)
Line 2: Line 2:
 
   | __TOC__
 
   | __TOC__
 
   |}
 
   |}
===What is LinuxMCE===
+
[[Category:Documentation| ]]
'''LinuxMCE is the only all-in-one open source solution that seamlessly combines:'''
+
[[Category:Tutorials| 0]]
  
====Multimedia====
+
<center>
'''Multimedia''' in '''LinuxMCE''' is always available to you and your family and if you have several homes, you can tie systems in each house together to act as one. Your media will follow you everywhere you go, it will show your videofiles on the nearest device.
+
<big><big><big>Welcome to LinuxMCE,<br>
 +
home of the home of the future.</big></big></big>
 +
</center>
  
====Security====
+
== 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.
  
'''Security''' is a big part of '''LinuxMCE''', these functions can control and monitor sensors, video cameras. It can send you alerts to your mobile phone, it can also set your alarm based on different schedules and scenarios. It can even lock the door when you leave your home.
+
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
  
====Telecom====
 
  
'''Telecom''' brings your family and friends closer, with '''LinuxMCE''' it's just gets better. LinuxMCE offers videocalls/conferencing, personal voicemailboxes for your whole family, it will also track and see if you're home and route incoming calls to the nearest phone or even your mobile phone if you're not at home.
+
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>
  
====Home Automation====
+
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}}
  
'''Home Automation''' features of '''LinuxMCE''' are really neat, it can control lights, climate, where to play your music or video and also it turns your mobile phones into remote controls that can control your whole house.
+
==== 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. <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>
  
====Network Attached Storage====
+
Here is a list of some of the software components that make LinuxMCE run:
 +
{|
 +
!Functionality !!  !!Platform/software used
 +
|-
 +
| Operating system
 +
|   
 +
| [[Kubuntu]], [[Raspbian]]
 +
|-
 +
| TV & [[Personal video recorder|video recording]]
 +
|
 +
| [[MythTV]] / [[VDR]]
 +
|-
 +
| Telephony
 +
|  .  .  . 
 +
| [[Asterisk]]
 +
|-
 +
| Home automation
 +
|
 +
| [[Pluto]]
 +
|-
 +
| Surveillance camera recording
 +
|
 +
| [[Motion]]
 +
|-
 +
| Video plaback
 +
|
 +
| [[Xine]], [[omxplayer]], [[VLC]]
 +
|}
  
You can extend your core's storage with a NAS-device. LinuxMCE can recognize this and use the NAS for saving your files or reading from them, including your music and video collection.
+
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.
  
====Personal Computing====
+
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.
'''Personal Computing''' can also be done in '''LinuxMCE''', after all it's an ordinary PC with Linux running in the background, complete with Office-suites and all the programs you need for everyday use.
+
{{p}}
  
LinuxMCE is a complicated piece of software.  Understanding the basics is very important to ensuring proper setup and ensures the user gets the results expected.
+
=== Open Source and licensing ===
 +
More information regarding LinuxMCE's relationship to Open Source can be found on the following pages:
 +
:* [[Open Source Info|Open Source information]]
 +
:* [[License|License information]]
 +
:* 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]
  
Here are a few pages with more detailed information on the abilities and components of LinuxMCE
+
{{p}}
*[[LinuxMCE]]
+
*[[software components | Software Components]]
+
  
===[[What can I do with LinuxMCE? | What can I do with LinuxMCE]]===
+
== The LinuxMCE system ==
Following is a list of things you can do with LinuxMCE. Each link takes you to a how-to page which has 3 parts:
+
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.
# How to set it up
+
{{p}}
# How to use it
+
# Where to find the source code and how it works.
+
  
====General====
+
====LinuxMCE terminology====
* [[Control LinuxMCE using a Windows device as an Orbiter]]
+
{{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>
* [[Control LinuxMCE using a Symbian Series 60 mobile phone with Bl]]
+
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]]
* [[Control LinuxMCE using other types of mobile phones]]
+
{{p}}
* [[Control LinuxMCE using an Infrared remote]]
+
* [[Add support for new remote controls]]
+
* [[Change the look and feel of the Orbiter]]
+
* [[Create my own skins or GUI for LinuxMCE]]
+
* [[Translate the GUI into another language]]
+
* [[Automatic diskless boot of media directors]]
+
* [[Restrict which users can use use which Orbiters or control w]]
+
====Media====
+
* [[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]]
+
* [[Watch TV using the built-in Myth PVR, and schedule recordings]]
+
* [[Use a satellite/cable box with the PVR]]
+
* [[Control a TV or cable/satellite box]]
+
* [[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]]
+
* [[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]]
+
* [[Control regular A/V equipment]]
+
* [[Control A/V equipment with RS232/USB/Ethernet]]
+
* [[Make LinuxMCE do something when I start media]]
+
* [[Have my media follow me]]
+
* [[Make announcements]]
+
====Home Automation====
+
* [[Control lights/climate using scenarios]]
+
* [[Control lights or climate with a floorplan]]
+
* [[Adding support for home automation devices]]
+
* [[What if you don't have a driver for my home automation device]]
+
* [[Make things happen at sunrise/sunset]]
+
* [[Make things happen when I enter a room]]
+
* [[Have my lighting or climate settings follow me]]
+
* [[Have external devices control LinuxMCE]]
+
====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]]
+
====PC Computing====
+
* Have LinuxMCE's screen saver turn my regular TV off when there's no activity and back on automatically, like a PC monitor with power save
+
* Browse web pages on the media directors
+
* Browse web pages on the orbiters
+
* Use open office on the media directors
+
* Access a KDE/Gnome desktop on the media directors
+
====Telecommunications====
+
* Make phone calls using a VOIP provider. Currently the follow Providers are supported with minimal setup.
+
** [[Broadvoice]]
+
** [[E-Fon_(Switzerland)]]
+
** [[Inphonex]]
+
** [[NuFone]]
+
** [[Sipgate]]
+
** [[Teliax]]
+
** [[VoiceEclipse]]
+
** [[Manual Phones Configuration | How to Configure Phone Lines Manually]]
+
* Make phone calls using a regular phone line (POTS), ISDN or T1
+
* Do video conferencing
+
  
==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>
  
===Picking The Right Components===
+
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)]]
  
====The Core====
+
==== 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.
  
Most important, is the "[[core]]".  This is the main LinuxMCE server that runs all the applications.  The commercial version uses a high-end server with RAID-5 storage.  You'll probably be able to get by with a good Pentium 4, at least 80 GB of storage and two network cards (Gigabit ideally).
+
===== 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]].
  
It would be best to use a dedicated core, which means you'll end up putting this computer somewhere out of the way and not connecting a monitor to it. If you are using only one computer for your system, then you've chosen the "hybrid" system, which means that your core will also be your media player. You'll definitely need a monitor or TV for this system!
+
==== 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.
  
====Media Directors====
+
To learn more, read [[Media Director]].
  
Note that each [[media director]] will need a [[Bluetooth dongle]] if you want to use a Bluetooth mobile phone as the remote in that area. To control your a/v equipment using [[infrared]], you will need an interface module (global cache [[gc100]]). This interface module also gives you extra serial ports. So, in this example, the TV is controlled by [[infrared]], and the receiver by RS232.
+
==== 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]].
  
====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.
  
====Network Attached Storage====
+
==== 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.
  
An alternative to having a lot of storage space in the core is to have a small hard drive for the core and store all your files on a [[Network Attached Storage|network attached storage]] (or NAS) server.  The [[Buffalo TeraStation]] is 1.0 TeraByte RAID-5 and under $1K(US).  Having a NAS will allow you to not lose your precious media files.  You'll likely want the larger storage for your collection of music and videos.  Keep in mind that your LinuxMCE system can also record TV shows (using MythTV) and video from your security cameras (using Motion).
+
[[Home Automation|More about Home Automation]]
  
====Additional Devices====
+
==== 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.
  
Optionally, you may want the aforementioned home automation devices for controlling your lights.  Also, optionally, you may want security cameras, plasma screen TV, a streaming media music player such as the [[Squeezebox]], an alarm system with a serial interface, etc.  Some of these devices need ''another'' device called a [[gc100]].  This allows devices that communicate using a serial port (good alarm panels) or [[infrared]] (like your TV) to connect to the network and talk with your LinuxMCE core.
+
[[Telecom|More about Telecom]]
  
====Location Considerations====
+
==== Network Attached Storage (NAS) ====
* [[Choosing Locations]].
+
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.  
  
====Wiring Considerations====
+
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]]
  
Once LinuxMCE is installed, just treat it like an appliance--plug it in, turn it on, and leave it alone. The great news is that don't need to install any software on the media PCs that will be used as media directors. You can leave whatever operating system is on there, such as Windows, untouched-they will do a [[Network Boot for Media Directors]] when you want to use them as a Media Director.
+
{{p}}
  
The only special requirement is that the LinuxMCE Core needs to be your DHCP server so that it can offer the plug-and-play and network boot services. You cannot have 2 DHCP servers on the same network (not easily at least). In our Core, we provide [[Why dual network cards?|dual network cards]] one for the "external" network, where your internet is connected, and one for the "internal" network within the house, and into which all your devices are connected. This makes LinuxMCE act as a firewall, and allows it to co-exist with another DHCP server. If you have a DSL or cable modem that needs to be the DHCP server it won't be a problem--just plug it into the "external" port. LinuxMCE's DHCP server only operates on the "internal" one. However, if you have only 1 network card in the Core, you will need to be able to give it a static IP and disable the DHCP server in your DSL/Cable modem. Otherwise you will have to disable LinuxMCE's DHCP server and lose a lot of functionality.
+
== 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}}
  
* [[Wiring Considerations]]
+
===The DCE protocol===
====Additional Hardware Resources====
+
DCE is the protocol used by {{l}} system components to interact. With DCE, hardware and software of different native protocols can:  
Hardware  can be a difficult decision, but understanding exactly what functions are needed can greatly simplify this decision.  You can review several wiki articles relating to hardware  [[:Category:Hardware | HERE]]
+
* 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.)
* [[What hardware I will need]]
+
* emit events to notify that something happened
* [[Video#Equipment_used_in_the_demo | Hardware used in Video]]
+
* hold configuration (this light switch is ON, it connects to port B on the interface, etc.)
* [[Tested good hardware]]
+
* [[Tested bad hardware]]
+
===Setting Up The Hardware===
+
  
There are many ways to install LinuxMCE, and lots of options for equipment. However, the key components in a LinuxMCE system are the Core (the PC acting as the master server), Media Directors (media PC's connected to your TV's), and Orbiters (remote controls-web pads, pda's, mobile phones, etc.).
 
  
==== I will use my own PC's ====
+
The acronym DCE comes from the three major operations performed using the protocol: Data, Commands, and Events. <br>
  
'''First a warning''' LinuxMCE is Linux-based, but don't worry. Sometimes drivers are not available for Linux as soon as they are for Windows.  Particularly, if you bought some new, exotic hardware there may not be drivers. If you're looking to get some new hardware to run LinuxMCE you may want to check sites like http://www.linuxcompatible.org to be sure it's supported under Linux before you buy. Or maybe post a "will this work?" message in our forum. If you already have the hardware it can't hurt to try.
+
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.)
  
You will need one PC to run the [[Core]] software.  Although you could install the Core on top of your existing Windows/Linux o/s, or build from source, it will be tricky and you will miss out on a lot of features.  You really need to use our own distribution because, in addition to our own software, LinuxMCE also includes lots of other open source projects, like Asterisk, Firefox, Xine, VideoLan, etc.  We built "wrappers" for all of them which is how we get them all to work together seamlessly.  For example, if you start watching a movie in 1 room, LinuxMCE will use Xine on that local media director.  Use the orbiter to move that movie to 2 rooms, and LinuxMCE seamlessly detects the network capabilities (multi-cast switch, etc.), moves the video source to the Core using VideoLan, broadcasts to both rooms, uses VLC to do the rendering and changes the UI on the remote controls.  If you use the vanilla packages from, say Fedora, none of that will work.  Plus, a lot of LinuxMCE's more advanced, kernel-level modules, like plug-and-play, bandwidth shaping to ensure your phone calls are clear, network boot, and so on may not work on other Linux distributions and definitely cannot be done under Windows.
+
For a list of the protocols {{l}} supports, see [[Automation#Automation protocols|Automation protocols]]
 +
{{p}}
  
Note this PC should always be left on since it becomes the 'brains' for the whole house and all the other pieces won't function unless they can find the [[Core]].  In our commercial product, the Core is a fail-safe, redundant server.
+
=== Devices ===
 +
{{#lsth:Devices|What is a Device?}}
  
There is only '''one special requirement'''.  The Core needs to be your DHCP server so that it can offer the plug-and-play and network boot services. You cannot have 2 DHCP servers on the same network (not easily at least). If you have another DHCP server (like a cable/dsl modem), we recommend your Core have dual network cards: one for the "external" network, where your internet is connected, and one for the "internal" network within the house, and into which all your devices are connected. This makes LinuxMCE act as a firewall, and allows it to co-exist with another DHCP server. If you have a DSL or cable modem that needs to be the DHCP server it won't be a problem--just plug it into the "external" port. LinuxMCE's DHCP server only operates on the "internal" one. However, if you have only 1 network card in the Core, you will need to be able to give it a static IP and disable the DHCP server in your DSL/Cable modem. Otherwise you will have to disable LinuxMCE's DHCP server and lose a lot of functionality.
+
=== 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.  
  
You can also put other cards in the Core, such as analog phone line interfaces from www.digium.com for the phone system or analog video capture cards for surveillance cameras.  You can put the PVR/satellite capture cards in the individual media PC's, or you can put several in the Core, which will share the video throughout the house.
+
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}}
  
Wherever you have a TV/Stereo you can use a PC or thin-client as the Media Director--it doesn't need to be on all the time and there's no software to install since they will network boot off the Core. Just be sure it has a good Linux-compatible sound card, a Linux-compatible video card, supports PXE network boot (nearly all recent motherboards do), and--optionally--a PVR card.  To use the Bluetooth mobile phones as remote controls, add a USB Bluetooth Dongle for each media director (around $25).  All the media directors will report the signal strengths of all the mobile phones--this is how the Core figures out what room you're in.  Since all 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 any media director (about 10m or 30feet), you will have control over everything in the house. You can also use low-cost network audio players, like the Squeeze Box, wherever you want to add music.
+
=== 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.
  
To control the system, you can use the PC's mouse and keyboard, or an infrared remote, or run the Orbiter software on your mobile phones, webpads and PDA's.
+
{{p}}
  
Also view our [[tested good hardware]] to see what 3rd party devices will work with LinuxMCE, like lighting control systems, cameras, alarm panels, etc.
+
== 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.
  
===A Dedicated Core===
+
{{p}}
[[Image:Diagram1.jpg|200px|thumb|Connects to a Dedicated Core]]
+
The Core is the central point of the LinuxMCE system and runs applications and daemons needed for the other devices to exchange messages. A dedicated core will run all of the LinuxMCE components, it really means that the user will not be using the Core as a Media Director as well.. You'll need to use additional Media Directors to be able to play movies, listen to music and watch TV. This kind of setup is recommended when you have lot of extra devices, this way the back end applications will have full access to Core's resources.  This method basically means your main server will be tucked away in storage closest and will not be used as a Media Director.
+
 
+
There is work currently on getting a [[Clean Core]] working, to further reduce the resource consumption of the [[Core]].
+
*[[Clean Core]]
+
 
+
<br style="clear:both;"/>
+
 
+
====A Dedicated Hybrid====
+
[[Image:Diagram2.jpg|200px|thumb|Connections to a Hybrid Core]]
+
A "hybrid" just means the computer that is running is the "Core" software is also running the "Media Director" software-you use the Core as a Media Director. The only reason we don't recommend this in our high-end installations is because a computer suitable for a Core is usually a pretty massive box with major hard drive capacity and rather noisy, so it's shoved away in the wiring closet, rather than sitting next to a TV like a Media Director would. However, you can use a regular PC as the Core + Media Director (Hybrid) also. Just remember that it will need to always be on since the Core software is what controls everything in the house.
+
 
+
 
+
Be sure you complete the installation of your Core/Hybrid before trying to boot the media directors.
+
<br style="clear:both;"/>
+
 
+
==Installation of Software Components==
+
There are currently two methods of installation.  The DVD installation which only requires the downloading and creation of a single installation disk, and the 3 CD method which requires 3 disks, but offers more flexibility in installation.
+
===DVD Installation===
+
*[[DVD Installation]]
+
===CD Installation===
+
*[[Installation Guide]]
+
==Setting Up LinuxMCE==
+
Setting up your LinuxMCE system consists of 4 things:
+
 
+
# Providing some general information, such as what kind of network you have.
+
# Creating the devices (lights, tv's, cameras, etc.).
+
# Creating your 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 Orbiters as a 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 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's when there is a security breach. Or stop watering the lawn after it rains.
+
 
+
The developers have tried to automate has much of the set up as possible with several scripts and wizards. See the different wizards below, and if the wizards are unable to set up the system properly then visit the admin website for many more options
+
 
+
* To get started you will want to read the documentation on [[QuickStart Guide | Quick Start Guide]]
+
* You will need to know if your graphics card is capable of running the UI2 with masking or the UI2 with alpha blending prior to running the wizard.  Please read [[Graphics Test]] for information on how to determine the capabilities of your current video card.
+
* If you are in doubt or if you want to get a working setup quickly please select UI1 which will work on any video card supported by Kubuntu.
+
===AVWizard===
+
The Audio/Video Wizard is designed to allow for easy setup of components which allow the [[Core]] or a [[Media Director]] to output content to the connected display, which can range from a simple CRT, to HCTV with component and/or composite inputs. 
+
*[[AVWizard]]
+
===Setup Wizard===
+
The setup wizard is an automated series of screen which allows the user to enter information and devices that LinuxMCE will control.  The Setup Wizard is broken down in to two modes: Media Player Wizard and House Setup Wizard.
+
[[Image:SeeAndHearMe.jpg|thumb|250px|
+
First Page of the Setup Wizard]]After selection of the Setup Wizard you will see an additional screen. If the audio and video are properly setup you should see and hear a video.  If this is correct please select Next.
+
<br style="clear:both;"/>
+
[[Image:Which_Wizard.jpg|thumb|250px|Which Wizard to Choose]]
+
The next screen you will encounter asks which wizard would you like to start: [[Media Player Wizard]] or the [[House Setup Wizard]].  Please select the wizard you want to begin.
+
 
+
<br style="clear:both;"/>
+
====House Setup Wizard====
+
*[[House Setup Wizard]]
+
====Media Player Wizard====
+
*[[Media Player Wizard]]
+
 
+
===Using LinuxMCE Admin Website===
+
Although there are automated wizards to assist in setup, the most robust system for setup is the [[LinuxMCE Admin Website]].  The user can create and modify any and all devices that LinuxMCE can control. 
+
*[[LinuxMCE Admin Website]]
+
 
+
==Using LinuxMCE==
+
LinuxMCE is a complicated piece of software, so proper understanding of each of the components makes for a better experience.  [[Usage Intro | CLICK HERE]] for a quick introduction and description of the terms needed to understand most to best use LinuxMCE.  The orbiter is the primary interface for controlling functions within LinuxMCE.  This guide will follow the menu items listed on the orbiter
+
 
+
===Orbiter Interface===
+
The Orbiter is quite simple to use, and all the screens are quite straightforward. Use the [[LinuxMCE Admin Website]] to configure your LinuxMCE system, including choosing the options on your Orbiter, such as lighting scenes, climate scenarios, and define what a/v equipment you want it to control.
+
====Lights====
+
There are only going to be options listed here if you have setup an interface and created lights.  The lights are specific to a room, so that the orbiter for a room will only show lights within that room
+
{{sectstub}}
+
====Media====
+
{{sectstub}}
+
====Climate====
+
{{sectstub}}
+
====Telecom====
+
{{sectstub}}
+
====Security====
+
{{sectstub}}
+
====Advanced====
+
{{sectstub}}
+
 
+
===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]]
+
 
+
====Media====
+
 
+
=====Controlling 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 Portable 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]]
+
=====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]]
+
 
+
====Climate====
+
* [[Control lights/climate using scenarios | Control Climate Devices with Scenarios]]
+
* [[Control lights or climate with a floorplan | Control Climate from the Floorplan]]
+
====Telecom====
+
* [[LinuxMCE telecom features | General Usage Guide]]
+
* Make phone calls using a VOIP provider listed below.
+
** [[Broadvoice]]
+
** [[E-Fon_(Switzerland)]]
+
** [[Inphonex]]
+
** [[NuFone]]
+
** [[Sipgate]]
+
** [[Teliax]]
+
** [[VoiceEclipse]]
+
** [[Manual Phones Configuration | How to Configure Phone Lines Manually]]
+
* Make phone calls using a regular phone line (POTS), ISDN or T1
+
* Do video conferencing
+
 
+
====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]]
+
====Advanced====
+
 
+
===LinuxMCE Admin Website===
+
* [[LinuxMCE Admin Website]]
+
 
+
==Other Items of Concern==
+
*[[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]]
+
*[[Translate the GUI into another language]]
+

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.