Frequently Asked Questions
This frequently asked questions (FAQ) section outlines solutions to the most common queries for initial/potential users. See also troubleshooting for solutions to problems experienced with the system.
- 1 Before Installing LinuxMCE
- 1.1 Is LinuxMCE an appliance or software solution?
- 1.2 What does an appliance solution like LinuxMCE cost?
- 1.3 Do I need LinuxMCE? Can I use the projects by themselves?
- 1.4 Which hardware is known to work?
- 1.5 I'm a Linux user already. Should I use LinuxMCE's distribution
- 2 First Boot
- 3 General Information
- 4 Fixing Problems
Before Installing LinuxMCE
Is LinuxMCE an appliance or software solution?
Until now there have been two options for a smarthome+media system:
- Low cost software based PC solutions, including home automation software like HomeSeer, Premise and Mr. House, also media software like Microsoft Windows XP Media Center.
- Appliance solutions, like Crestron, AMX, Kaleidescape and Escient.
High-end systems are always appliance based, preferred for their simplicity, reliability and lack of hassle; no worry about missing the football game because your PC-based PVR got a virus. But appliance systems cost a lot — for one that includes automation, media, telephony, etc., like LinuxMCE. Even though those "appliances" are normally PC's inside special cases, often running Linux plus some proprietary software, you can never get the software separately to build your own — until now.
LinuxMCE is an appliance solution. The Core becomes a self-configuring, self-maintaining black box appliance. Since the Core automatically offers a network boot image to any PC's you want to use as media directors, they too become appliances. You can still use them as a PC, of course, but you can crash the hard drive, install a virus, delete system files, and it doesn't matter. When you hit 'LinuxMCE' on the remote control, the Core sends it a network boot, the hard drive turns off, it doesn't use your operating system, and you'll never see a PC prompt. And when you hit the PC button, it goes back to being a PC like normal. LinuxMCE is a 'family friendly' solution--you can use the PC for kernel-level coding, knowing the kids can always hit 1 button and still use it to watch cartoons.
LinuxMCE offers the best of both worlds: an appliance solution at the price of a software solution, and the the power and versatility of a software solution with the ease of use of an appliance. We offer the software for free as open source because our business is licensing LinuxMCE to hardgoods manufacturers who embed it in their products.
What does an appliance solution like LinuxMCE cost?
Appliance solutions are normally quite expensive. The most popular combinations are:
- Crestron system to do all the home automation. The cost varies depending on what you want to do with it, but a whole-house solution including touch-screen panels will set you back at least $25,000 for an entry-level system, and can easily hit 6 figures.
- Kaleidescape for the DVD movie server, costing $27,000 for the main server, and $4,000 for each TV where you want to watch movies.
- Escient Fireball for the music server, costing $5,000 for the central music server.
- A PBX phone system with voicemail, like Panasonic will cost another 5 grand or so.
All of those products require professional installation and setup, particularly the home automation devices. LinuxMCE was designed with simple web-based wizard so even non-techies can get a whole solution up within a few hours. But our competitors' products are different. Smart home dealers will require a trained programmer to set them up. For example, it can take weeks of programming to set up a Crestron system in a good-sized house. Programming fees can be over $10,000, plus re-programing fees every time you make a change. Bottom line: around $100,000 for an appliance solution that does what LinuxMCE does.
Appliance solutions are typically PCs, running an Linux OS with custom, proprietary software, placed inside custom cases. The software is not available separately, so there's no way to economize or build your own.
LinuxMCE has taken a different approach. LinuxMCE is also an appliance solution, but we have made the software available separately. In fact, it is free, so techies and software programmers can build their own high-end appliance systems. Competing PC hardware manufacturers can license the LinuxMCE platform to use in standard, low-cost PCs. LinuxMCE brings down the cost by offering all the functionality of several systems in 1 system: whole house media & entertainment, home automation, telecom, security, and personal computer.
Do I need LinuxMCE? Can I use the projects by themselves?
LinuxMCE includes a lot of other open source projects, like Xine, Asterisk, MythTV, VideoLan, etc. So we are often asked, "Why do I need LinuxMCE, can't I just use those other projects by themselves?"
LinuxMCE has a lot of it's own software--it's not just a collection of other projects. In fact, LinuxMCE's own software is bigger than most of the key outside projects combined. LinuxMCE includes it's own messaging platform. Most of the logic and functionality, such as how to handle home security, media, etc., is in LinuxMCE's plug-in's--not the other projects. Plus LinuxMCE includes a GUI that runs on Linux, Windows, Windows CE and Symbian. There are already thousands of DCE Devices for various smart home components. And LinuxMCE includes lots of development tools, like the GUI Designer, code generators like DCEGen and sql2cpp. There are also some fairly substantial stand-alone projects with LinuxMCE, like sqlCVS. sqlCVS has essentially all the same features as CVS or SVN, but it works with databases--not source code. It is what ensures that when one user translates a screen on the GUI, or learns an infrared code, or creates a new GSD device, that this is committed to a central repository, reviewed by our staff, then propagated to all other users.
Additionally LinuxMCE has it's own "wrappers" for all the outside open source projects we integrate. This is what allows them to work together seamlessly.
Example #1: LinuxMCE's wrappers allow open source projects to be interchangeable modules. For example, on one media director un-check the box for the 'Xine' media player, but leave 'VideoLan' checked. Do the opposite for another media director. And for the rest, leave both checked (the default). Now start watching a movie in 1 room. As you move from room to room the movie will seamlessly move from Xine to VideoLan and back. If you leave both checked, Xine will be used when the movie is playing in 1 room only, and VideoLan when it is playing in multiple rooms. This interoperability is not possible outside of LinuxMCE.
Example #2: LinuxMCE allows a bunch of disparate projects to work together as a seamless whole For example, if there's a security breach in your house, the lights and TV's in the house come on automatically using our home automation DCE device interfaces, and the security pin pad appears on all the Windows webpads and PDA's. After 30 seconds a menacing video plays for the burglar using Xine, while the surveillance cameras monitored by Motion feed a live video to your mobile phone over GPRS. Hit 'Talk' on the phone and Xine suspends, passing control to Linphone which makes a call using Asterisk to your mobile phone with the audio piped through the stereo so you can shout at the intruder and let him know you're watching him from a remote location and calling. To the end-user, it works seamlessly, like 1 cohesive whole, but in reality, what LinuxMCE did is enable a bunch of existing applications to work together.
Which hardware is known to work?
See the Hardware category.
I'm a Linux user already. Should I use LinuxMCE's distribution
Strictly speaking LinuxMCE is a package. A very big package. The distribution it runs on is standard Kubuntu Linux.
Only the PC running as the Core is required to run Kubuntu and use the LinuxMCE package.
Any PC used as a Media Director can netboot from the Core, without the requirement for an OS at all. Of course, you can always boot whatever OS is already stored on the hard drive of each Media Director PC and use that PC separately from the LinuxMCE system. Play the games (or whatever) that are stored on the hard drive (using whichever OS is already installed there) there, and when you're ready to use that PC as a Media Director again, you just go back to netbooting from the Core.
For the Core, you should use Kubuntu and our packages.
LinuxMCE is based on the standard Kubuntu Linux distribution. While you could try to run LinuxMCE on another distribution, it's not recommended. LinuxMCE has lots of scripts and utilities to facilitate various tasks. Plus, LinuxMCE embeds many other open source projects, like Xine, Asterisk, etc., with our own "wrappers" that allows them to work together seamlessly. These wrappers are only tested against the versions we maintain in our Ubuntu mirror.
Before we upgrade anything on our mirror, we thoroughly test the new packages in our system to be sure it still works.
We didn't take any modules away from the Kubuntu distribution, we only added some. You can still use your Core as a normal Kubuntu Linux PC. In fact, our additions can be bypassed if they get in your way, as is explained below. But in general, DCERouter and other devices, like the home automation modules, all run in the background and won't interfere in screen sessions.
Here's what we changed:
LinuxMCE includes a lot of scripts that automate all aspects of maintaining a Linux system. For example, when you add a new user from the LinuxMCE Admin site, it automatically creates a new media directory, exports a samba share, creates an email and voicemail accounts, and so on. There's also scripts to do lots of low-level things like setup ip network prioritizing, so your VOIP calls are always clear. By default, LinuxMCE overwrites and re-creates many Linux config files at each boot. In this regard LinuxMCE acts like a black box appliance. However, once you install LinuxMCE you can go to the LinuxMCE Admin Website-->Advanced-->Boot Scripts and disable any or all of these scripts. Then you can still maintain your LinuxMCE Core like any other Linux PC and it won't overwrite your config files.
Our Ubuntu mirror
We maintain our own mirror based on Ubuntu. The reason is that we have "wrappers" for many open source projects like Xine, Asterisk, etc., allowing them to work together seamlessly. Whenever updates are posted to Ubuntu's repository, we test the new versions to be sure the changes did not break anything in our wrappers and that the auto-configuration scripts still work. In very rare cases, we need to make our own version of a package that replaces the one in Ubuntu. We avoid that whenever possible, and instead re-work our wrappers so that we can stay current with the "stock" version. Such changes are generally trivial, and you should see no difference between LinuxMCE's Ubuntu mirror and the official one.
The Media Directors use our own modified version of the Ratpoison window manager. All applications appear as full-screen, with no borders. Our Orbiter GUI becomes the XWindows desktop. This is the desired behavior in an appliance-like set-top box; we completely isolate the user from anything computer-like. However, you will likely not want this as your main desktop. It is possible to run 2 versions of X on separate terminals: one with LinuxMCE's window manager, and the other with your own preferred choice of desktop.
Software Module Overview
How do I login to a LinuxMCE system?
How are media files organized?
For windows users, you can access the files on the core in Windows explorer's network neighborhood, or by choosing 'Start' 'Run' and typing \\ plus the ip of your core. You will need to login with your user-name and password; it's the same one you use with LinuxMCE Admin. You will see 2 folders: 'public' and 'john', assuming your name is 'John'. Any files that you want everyone in the House to have access to go into the public folder. The folder with your name, John in this case, is your private folder where you can put files that only that only you will have access to. Often times when you choose to save media using the orbiter it will ask you if you want the media to be public or private. If you choose public the media will be saved under the public folder, and if you choose private it will be saved under the private folder with your name. Within those folders you will find some folders called: 'music' (where all ripped cd's go), 'movies' (where all ripped DVD's go), 'videos' (where videos recorded from tv or camcorders go), pictures (where your pictures go), and 'documents' (where your documents go). When you go to play some media in the orbiter by choosing the buttons music, movies, videos, pictures or documents, you will see combined together all the media from the family's public folder as well as the media from your own personal private folder.
So, for example, if you rip a CD 'Madonna' and make it public, and rip a CD 'Rolling Stones' and make it private, and your spouse rips a CD 'Fleetwood Mac' and makes it private, then when you touch music on the orbiter you will see 'Madonna' and 'Rolling Stones', and when your spouse touches music your spouse will see 'Fleetwood Mac' and 'Madonna'. Assuming your name is john and your spouse is susan, then if you browse the network share, you will find 'Madonna' in the folder public\music and you will find 'Rolling Stones' in the folder john\music. If, in LinuxMCE admin your user has 'can modify configuration' checked, then that means you are also able to browse everybody else's private folders too. So in addition to 'public' and 'john', you will also see a folder 'susan', which contains 'music' which contains 'Fleetwood Mac'. If that option is not checked for Susan, then she will only see the folder 'public' and 'susan' and will not see your private folder 'john'.
Note that even if you check that option giving yourself access to everyone's private folders, when you go to browse media on the orbiter you will still only see public files plus your own private files, just so you're not bothered with everyone else's.
To maintain the media files, including copying deleting and renaming, you can either use another PC and a network share, such as a Windows PC with Windows Explorer, or in the LinuxMCE admin web site you can choose Media & Files, Browse.
Note that LinuxMCE maintains an internal database of all your media, including various attributes such as the actors in a movie or the composer of a song. This makes searching very comfortable. For example if you touch the music button, then start typing, you will see all attributes. For example after you touch 'G', you may see 'Geffen Studios (studio)', 'Get You Back (song)', 'GNR Live (album)', and 'Guns N Roses (performer)'. You can continue typing to narrow your entries down further, and touch any entry then 'view' to see all the music that matches. The resulting screen even does cross matching and shows pictures for each attribute.
When you rip media within LinuxMCE the attributes are created automatically. You can view attributes or change them in the LinuxMCE admin site. LinuxMCE also monitors any media that you may add or change outside of LinuxMCE, such as using Windows Explorer. For example if you copy files over in Windows Explorer, LinuxMCE will automatically scan the files and add the attributes to its internal database so you can still search. Also if you rename or delete files, LinuxMCE will automatically update your database accordingly.
If you add a plug-and-play network attached storage device, within each media folder you will see a subfolder for that device and you will be able to move files to and from it.
Technical explanation for Linux users: The public directory maps to /home/public/data, and each user's private directory maps to /home/user_xxxx/data, where xxxx is the internal user ID. The name 'john' is a symlinc to user_xxxx for convenience. The program /usr/pluto/bin/UpdateMedia uses INotify to monitor all /home/public/data and /home/user_xxxx/data folders, so it can rescan whenever the directory is changed. All attributes are stored in the MySql database pluto_media. Each file is a record in the 'File' table. UpdateMedia creates an extended attribute called 'ID' for each file with the primary key of each file. That way if you move or rename a file UpdateMedia will see the extended attribute and your attributes will not be lost--it just updates the database. If you want to add more storage you can map drives under those directories. For example, if you have another 2TB drive array that you want to use for both public music and your private movies, create 2 directories on that array, let's say: public_music and john_movies. Using a network mount, or a symlinc to a network mount, create a folder such as /home/public/data/music/my_2TB_nas that maps to public_music and /home/user_xxxx/data/movies/my_2TB_nas that maps to john_movies. Then when you browse music or movies in the orbiter you will see a folder 'my_2TB_nas' to access the files on that new drive. When you add a plug-and-play network attached storage, LinuxMCE automatically adds a folder within every single directory, such as /home/public/data/music/new_nas, /home/public/data/movies/new_nas, /home/user_xxxx/data/videos/new_nas, and these are automatically mapped to corresponding folders on the NAS. This makes it very easy for a novice to just plug in a NAS and immediately use it without any technical knowledge. However if you want to change this behavior, just remove the symlincs our plug and play script created.
What scenarios are created automatically?
See this page.
Does LinuxMCE support encrypted DVD's?
The short answer: yes, if it is legal in your area. You will have to add optional software to enable the features. See this page for more information.
See this page
How should I format additional hard drives?
From "blog gelusi: Linux Tuning Guide" (http://gelusi.blogspot.com/2008/02/linux-tuning-guide.html)
1. Filesystem Block sizes For filesystems dedicated to serving fairly large files, adopting a larger than default 1024 byte block size may yield significant performance gains. Recent transactions on the linux kernel list suggest that setting the block sizein an ext2 file system to 4096 instead of the default 1024 will result in less file fragmentation, faster fsck's, faster deletes and faster raw read speed, due to the reduced number of seeks. Unfortunately this cannot be changed on the fly. Only a reformat will make this so. The command to format a file system with 4096 byte blocks is: mke2fs -b 4096 /dev/whatever Additionally, on any filesystems except those used for logfiles, the default of 5% reserved for root use is excessive for large file systems, so the command to make the filesystem can be augmented to mke2fs -b 4096 -m 1 /dev/whatever to set the reserved fraction to 1 percent.
Then if you want a journaling (ext3) filesystem:
mke2fs -b 4096 -m 1 -j /dev/whatever
Note, no further configuration should be necessary as new drives will be auto-discovered.