The Ultimate Linux Home
LinuxMCE and Pluto are both frameworks that allow various components to be integrated together. Both projects utilize other major components along with a set of libraries called DCERouter (DCE stands for Data, Commands and Events), a general-purpose message router. It can send messages to applications that are “wrapped” in code and receive commands from those applications when they need something done.
As an example of how this works, say a call comes into Asterisk while you are watching TV. The Asterisk program could send a message to MythTV to mute the show or even halt the show until the call is finished.
Of course, it is one thing when you think about programs controlling other programs, but if you apply almost the same logic to hardware devices, you more easily can map the functions of many home automation products into the framework of the system relatively effortlessly.
The framework also manages plugins, like a lot of other flexible FOSS code (GIMP comes to mind), allowing more modules to be added for new functionality.
Now, let's look at the different components that make up the system hardware.
The core is a server that can sit in an out-of-the-way place, such as your cellar or garage. The core is the place where the software and data are stored. It should have two NIC cards: one for the internal network (recommended as at least 1GB) and one to go to the outside Internet (could be 10/100Mb). The core also should have an interface card for any existing telephone lines that you have (if you have any), for this also is the place where the Asterisk PBX is going to be managing your VoIP telephone calls. Alternatively, you could have a VoIP gateway at some other place in your network.
The core should be a machine where you easily can add disk drives and probably have larger amounts of memory, depending on the load.
The media director hooks up to your TV and audio/visual equipment. It can have inputs from your cable boxes or over-the-air connections, CD and DVD drives, audio input, digital “film” and other connections to amplifiers, TVs, recorders and so forth. There should be one media director for every room where you would consider having an “entertainment area”.
These media directors typically do not have any local storage. They boot PXE over the network. This allows you to use a PC for the media director and have an operating system stored on the local disk. Boot off the disk, and the operating system comes up. Boot over the network, and it becomes a media director.
However, you also can install both the core and the media director software on your hard disk and start that software at any time. This hybrid allows you to boot into LinuxMCE, then stop the MCE software and use Kubuntu. You also could choose to boot Kubuntu, use it, and then start and stop the MCE software as you desire—very flexible.
The orbiter is a separate system that is just used to control the LinuxMCE system. It can have a touchscreen or use a keyboard and mouse. Orbiters can be a tablet system or even a regular PC, but the function is to control the various parts of the system.
Symbian Bluetooth-enabled cell phones as well as some Linux, Windows and Windows CE Webpads (such as the Nokia 770), PDAs, Web browsers or even the CISCO 7970 phone can act as control interfaces for the system. As the documentation says, “You can use it [the CISCO 7970] to make calls and control your home as well.”
Symbian-based Bluetooth phones use Bluetooth for communication whenever they can and switch to the cellular data network when users are not close enough to use Bluetooth. If every media director has a Bluetooth connection, you probably will be within Bluetooth range in most parts of your house.
The most amazing part is that the Bluetooth signal also allows the music or video that you select to follow you as you move from room to room. If two people with Bluetooth phones are in the same room, the choice of media stays with the first person who was in the room. If that person leaves, it switches to what the second person had chosen before entering the room. It also can set the lighting in that room, adjust the volume and other functions.
The controls that show up on the various screens are tuned to individual people's tastes. “maddog” would have a different set of settings, music and preferences than “shedog” (if there were a “shedog”). And, when “maddog” goes to make a telephone call, it shows his own list of contacts. When controlling the system from a cell phone, it shows only the cell-phone owner's information.
Home security also is managed by this system. You can integrate your video cameras into the system, and if someone breaks in to your house, a live feed sends an image to your cell phone and alerts you. You then can call 911 and make sure the authorities are headed toward your house or business. You also can speak to an intruder through your speaker systems—much better than a monitored alarm system.
Finally, the core and the media directors actually are general-purpose computers and diskless clients. The core and media directors in your home are joined together as a network, but you also can combine multiple homes with an encrypted VPN. As you go house to house (or across the world), you can access your files and media. Imagine being in your hotel room with high-speed Internet and have access to all your home (or office) data.
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems
Join editor Bill Childers and Bit9's Paul Riegle on April 27 at 12pm Central to learn how to keep your Linux systems secure.
Free to Linux Journal readers.Register Now!
|diff -u: What's New in Kernel Development||Aug 20, 2014|
|Security Hardening with Ansible||Aug 18, 2014|
|Monitoring Android Traffic with Wireshark||Aug 14, 2014|
|IndieBox: for Gamers Who Miss Boxes!||Aug 13, 2014|
|Non-Linux FOSS: a Virtualized Cisco Infrastructure?||Aug 11, 2014|
|Linux Security Threats on the Rise||Aug 08, 2014|
- diff -u: What's New in Kernel Development
- New Products
- NSA: Linux Journal is an "extremist forum" and its readers get flagged for extra surveillance
- Security Hardening with Ansible
- Cooking with Linux - Serious Cool, Sysadmin Style!
- Tech Tip: Really Simple HTTP Server with Python
- Containers—Not Virtual Machines—Are the Future Cloud
- Raspberry Pi: the Perfect Home Server
- Monitoring Android Traffic with Wireshark
- Returning Values from Bash Functions