Difference between revisions of "Application:HomeControl"

From WebOS Internals
Jump to navigation Jump to search
 
(80 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
{{application
 
{{application
 
|name=Home control
 
|name=Home control
|version=beta
+
|version=0.8.5
 
|type=webOS
 
|type=webOS
 
|tag=Utilities
 
|tag=Utilities
 
|screenshot=Home_control.png
 
|screenshot=Home_control.png
|description=<div style='position: absolute; bottom: 0; right: 0; padding-right: 28px; padding-bottom: 16px'>{{SconixDonation}}</div>
+
|description=<div style='position: absolute; bottom: 0; right: 0; padding-right: 28px; padding-bottom: 16px; text-align: center; font-weight: bold;'>Sconix:<br \><br \> {{SconixDonation}}<br \><br \> DKirker (UPNP support): <br \><br \>{{DKirkerDonation}}</div>
 
}}
 
}}
 
</div>
 
</div>
Line 12: Line 12:
 
== Overview ==  
 
== Overview ==  
 
[[image:Icon_Home-Control.png|frameless|left]]
 
[[image:Icon_Home-Control.png|frameless|left]]
Home Control is an app that aims to provide means to control everything remotely controlled at your home.
+
Home Control is an app that aims to provide means to control everything remotely controlled at your home. The current version is designed phones in mind (it will work nicely even with the small screen of Veer), but future versions will bring lot of changes for the UI when run in TouchPad. I haven't done much testing on TouchPad yet so if something is not working please let me know and I shall fix it.
<br /><br /><br />
+
<br /><br /><br /><br />
  
== Installation ==
+
== Features ==
  
=== Client ===
 
  
 +
=====<span style="color:#8a0002">'''General'''</span>=====
 
<blockquote>
 
<blockquote>
The client app can be installed from Preware, you need to have beta apps feed enabled.
+
The following general features do not require the server application. Use the IP/port info of the device (or computer where the app is running).
 +
 
 +
<br ><br >
 +
<u>'''Boxee and XBMC control'''</u>
 +
<br />
 +
Enables control of Boxee and XBMC (both devices and application running on a desktop machine).
 +
<br /><br />
 +
 
 +
<u>'''Cisco IP surveillance (will be enabled soon)'''</u>
 +
<br />
 +
Allows viewing of the cameras video feed in Home Control.
 +
<br /><br />
 +
 
 +
<u>'''VLC video player control'''</u>
 +
<br />
 +
Allows basic controlling of VLC video player, more advanced controls are coming. Requires the LUA interface to be enabled in the VLC.
 +
<br /><br />
 +
 
 +
<u>'''TouchPad Surveillance Camera (will be enabled soon)'''</u>
 +
<br />
 +
Enables using of the web cam in TouchPad as an security cam when placed on touchstone. You can also view the latest captured image on Home Control running on your phone (this needs the server application though).
 +
<br /><br />
 
</blockquote>
 
</blockquote>
  
=== Server ===
+
=====<span style="color:#8a0002">'''OS Specific'''</span>=====
 +
{{article-three-columns
 +
|width1=33%
 +
|width2=33%
 +
|column1=
 +
<span style="color:#8a0002"><center>'''Linux Specific'''</center></span>
 +
<br/>
 +
'''The following features require the Home Control server software to be running on the machine.'''
 +
<br/><br/>
 +
 
 +
<u>'''Status information'''</u>
 +
<br/>
 +
Shows temperature information from 1-wire temperature sensors connected to the computer.
 +
<br/><br/>
 +
 
 +
<u>'''Mouse and keyboard control'''</u>
 +
<br/>
 +
Allows full mouse and keyboard control.
 +
<br/><br/>
 +
 
 +
<u>'''Display / Computer power control'''</u>
 +
<br/>
 +
Allows controlling of display and computer power state.
 +
<br/><br/>
 +
 
 +
<u>'''PulseAudio Mixer / Sound control'''</u>
 +
<br/>
 +
Allows controlling of system volume and other sound stuff.
 +
<br/><br/>
 +
 
 +
<u>'''Amarok, Banshee, Rhythmbox and MPD music player control'''</u>
 +
<br/>
 +
Allows basic controlling of these music player applications including ability to select playlists / search songs / add songs into the queue etc. At the moment Banshee and Rhythmbox only have basic control, no playlist control support.
 +
<br/><br/>
 +
 
 +
<u>'''Totem video player control'''</u>
 +
<br/>
 +
Allows basic controlling of Totem video player, more advanced controls are coming.
 +
 +
|column2=
 +
<span style="color:#8a0002"><center>'''Windows Specific'''</center></span>
 +
<br/>
 +
<u>'''Winamp music player control'''</u>
 +
<br/>
 +
Allows basic controlling of Winamp music player. You will need to install remotecontrol-for-winamp and JTFE plugins for the Winamp.
 +
<br/>
 +
<br/>
 +
Remote control plugin: http://code.google.com/p/remotecontrol-for-winamp/
 +
<br/>
 +
JTFE plugin: http://nunzioweb.com/daz/jtfe.html
 +
<br/><br/>
 +
<u>'''System Sound Mixer / Volume'''</u>
 +
<br />
 +
Enables system output volume and mute control.
 +
 
 +
|column3=
 +
<span style="color:#8a0002"><center>'''Mac OSX Specific'''</center></span>
 +
<br />
 +
'''The following features require the Home Control server software to be running on the machine.'''
 +
<br/><br/>
 +
 
 +
<u>'''Mouse and keyboard control'''</u>
 +
<br />
 +
Allows full mouse and keyboard control. Currently only keyboard control enable, the mouse support will come in later releases.
 +
<br /><br />
 +
 
 +
<u>'''Front Row controlling'''</u>
 +
<br />
 +
Enables control of Front Row application.
 +
<br /><br />
 +
 
 +
<u>'''iTunes music player'''</u>
 +
<br />
 +
Enables control of iTunes application with ability to view playlists and select the playlist to play with possibility to search a song for playing.
 +
<br /><br />
  
 +
<u>'''QuickTime video player'''</u>
 +
<br />
 +
Enables control of QuikTime Player application. Requires relative new QuickTime Player version!
 +
<br /><br />
 +
 +
<u>'''System Sound Mixer / Volume'''</u>
 +
<br />
 +
Enables system input / output volume and mute control.
 +
}}
 +
 +
=====<span style="color:#8a0002">'''Advanced'''</span>=====
 
<blockquote>
 
<blockquote>
You can get the server app from the following url: http://wee.e-lnx.org/homecontrol/
+
There are some advanced features that are not so obvious, specifically when using the app on devices with small screens (e.g. Veer). Devices with larger screens may display these features all the time.
 +
<br /><br />
 +
 
 +
<u>'''Progress Bar'''</u>
 +
<br />
 +
You can view the progress bar by tapping the currently playing song/video info (song/video needs to be playing or paused). The bar shows up for 5 seconds unless you start adjusting the position. Not all controllers support progress bar and it can even be media specific (streams can not be seeked usually).
 +
<br /><br />
  
This server software can be run on Linux / OS X / Window, see the supported features below. To run the server you only need to have node.js installed on your system and for Linux mouse/keyboard control you need to have xdotool installed as well for now (later on it wont be needed once I switch to node.js solution).
+
<u>'''Closing a Controller'''</u>
 +
<br />
 +
You can close a controller by clicking its icon when the controller is selected. This will turn off any polling for that controller and close the application if the server side supports that. Starting the controller is simply done by selecting the controller which will also start the application if not already running.
 
</blockquote>
 
</blockquote>
  
== Features ==
 
  
=== General ===
+
== Installation / Setup ==
  
 
<blockquote>
 
<blockquote>
'''Boxee and XBMC control'''
+
<span style="color:#8a0002">'''Stable Releases'''</span>
<blockquote>
+
<br />
Enables control of Boxee and XBMC (both devices and application running on a desktop machine).
+
The stable releases of Home Control can be found in the WebOS-Internals feed and are recommended for general public use.
 +
<br /><br />
 +
 
 +
<span style="color:#8a0002">'''Testing Releases'''</span>
 +
<br />
 +
The testing releases of Home Control can be found in the WebOS-Internals Alpha or Beta feeds [http://www.webos-internals.org/wiki/Testing_Feeds WebOS-Internals Testing Feed].
 
</blockquote>
 
</blockquote>
  
'''Cisco IP surveillance'''
+
 
 +
==== Home Control Client ====
 +
 
 +
The following method can be used to install Home Control client.
 +
 
 
<blockquote>
 
<blockquote>
Allows viewing of the cameras video feed from Home Control.
+
[http://www.webos-internals.org/wiki/Application:Preware Preware]
 +
 
 +
# Open Preware
 +
# Start typing “Home Control” (no quotes)
 +
# Tap the corresponding app from the list
 +
# Tap the Install button
 +
 
 +
'''Or'''
 +
 
 +
# Open Preware
 +
# Tap Available Packages
 +
# Tap Applications > Utilities ''(e.g. Home Control)''
 +
# Tap the Install button
 
</blockquote>
 
</blockquote>
  
'''TouchPad Surveillance Camera (Enabled in 0.7)'''
+
 
 +
'''Setup'''
 
<blockquote>
 
<blockquote>
Enables using of the web cam in TouchPad as an security cam when places on touchstone. Sends an alert to Home Control apps running on your phones if movement is detected. You can also view the latest captured image on Home Control running on your phone.
 
</blockquote>
 
  
'''VLC video player control'''
+
<span style="color:#8a0002"><u>'''Adding A Server'''</u></span>
 
<blockquote>
 
<blockquote>
Allows basic controlling of VLC video player, more advanced controls are coming. Requires the LUA interface to be enabled in the VLC.
+
'''Server Type:'''
 +
<br />
 +
This setting determines the server type that you'll be connecting to for managing the controller.
 +
<br /><br />
 +
'''Server / Device:'''
 +
<br />
 +
All currently supported controllers need the server address of the device/HC server. The format for the address is <address>:<port>, if username/password is needed then: <user>:<password>@<address>:<port>
 +
<br><br>
 +
For the controllers that need the Home Control server, the address is the IP address of the computer running the server application and the port is 3000. For the other controllers that control the devices/applications directly you need to see the device/application configuration for the username/password and address/port configuration.
 
</blockquote>
 
</blockquote>
 
</blockquote>
 
</blockquote>
  
=== Linux Only ===
 
<blockquote>
 
'''The features listed below are currently Linux only, for now. These feature requires the Home Control server software to be running on the machine.'''
 
<br/><br/>
 
  
'''Status information'''
+
==== Home Control Server ====
 +
The following can be used to install the Home Control server application.
 +
 
 
<blockquote>
 
<blockquote>
Shows temperature information from 1-wire temperature sensors connected to the computer.
+
The Home Control server application can be installed on Linux, OS X and Windows. See the available OS specific features above.
 +
<br />
 +
To install the server application you need to have working installation of node.js ''(version 0.6.x of node is recommended, although everything should work with the 0.4.x version as well)'' and npm. The latest node.js already comes with npm so just download and install the latest version from: http://nodejs.org. Then you can use npm to install hc-server: '''npm install hc-server'''
 +
<br />
 +
Once node.js is installed you can run the server by entering the node_modules/hc-server directory ''(note that with older 0.4.x node.js the installation directory is bit different)'' and executing: '''node hc-server.js'''
 +
<br /><br />
 +
Verify that the port that the hc-server uses ''(default: 3000)'' is not accessible from outside your local area network. If you want to make the server accessible outside of your local area network then you should configure the server to require user authentication.
 
</blockquote>
 
</blockquote>
  
'''Mouse and keyboard control'''
 
<blockquote>
 
Allows full mouse and keyboard control.
 
</blockquote>
 
  
'''Rhythmbox and MPD music player control'''
+
'''Setup'''
<blockquote>
 
Allows basic controlling of these music player applications, more advanced controls are coming.
 
</blockquote>
 
  
'''Totem video player control'''
 
 
<blockquote>
 
<blockquote>
Allows basic controlling of Totem video player, more advanced controls are coming.
+
You can edit the following default values by editing the config.js file.
</blockquote>
+
<br /><br />
 +
* Authentication username and password (default: none)
 +
* Port for HTTP connections (default: 3000)
 +
* Port for SSD queries (default: 1900)
 
</blockquote>
 
</blockquote>
  
=== Windows Only ===
 
=== Mac OS X Only ===
 
  
 +
== Configuration / Usage ==
 
<blockquote>
 
<blockquote>
'''The features listed below are currently Mac OS X only, for now. These feature requires the Home Control server software to be running on the machine.'''
 
<br/><br/>
 
  
'''iTunes music player'''
+
===== Boxee / XBMC =====
 
<blockquote>
 
<blockquote>
Enables control of iTunes application.
+
See the Boxee/XBMC configuration for the address/port setup. The default port is 8080.
 
</blockquote>
 
</blockquote>
  
'''QuickTime video player (enabled in 0.7)'''
+
===== VLC =====
 
<blockquote>
 
<blockquote>
Enables control of QuikTime Player application.
+
To enable the controlling in VLC select 'Add Interface' from the menus and select 'Web Interface'. Then you can configure the controller in Home Control by using the IP address of the computer running the VLC and default port 8080.  
 +
<br /><br />
 +
Or you can just start VLC from command line with following parameters:
 +
vlc --extraintf=luaintf --lua-intf=http
 
</blockquote>
 
</blockquote>
  
'''System Sound Mixer / Volume (enabled in 0.7)'''
+
===== Rhythmbox =====
 
<blockquote>
 
<blockquote>
Enables system input / output volume and mute control.
+
To get all features you need to have dbus-send command line application installed. It comes pre-installed with many distributions.
 
</blockquote>
 
</blockquote>
  
  
== Configuration ==
+
===== Totem =====
 +
<blockquote>
 +
To get all features you need to have dbus-send command line application installed. It comes pre-installed with many distributions. You also need to enable dbus-service plugin in Totem.
 +
</blockquote>
  
 +
===== Mouse control in OS X =====
 
<blockquote>
 
<blockquote>
All currently supported controllers need the server address of the device/HC server. The form of the address is <address>:<port>, if username/password is needed then: <user>:<password>@<address>:<port>
+
This will most likely require some too, but this is not implemented yet...
<br><br>
 
For the controllers that need the Home Control server, the address is the IP address of the computer running the server application and the port is 3000. For the other controllers that control the devices/applications directly you need to see the device/application configuration for the username/password and address/port configuration. Below you can find some additional information and default settings for some of the devices/applications.
 
 
</blockquote>
 
</blockquote>
  
=== Boxee / XBMC ===
+
===== Mouse / Keyboard control in Windows =====
 
 
 
<blockquote>
 
<blockquote>
See the Boxee/XBMC configuration for the address/port setup. The default port is 8080.
+
You might get mouse / keyboard control working already by installing XMing or Cygwin/X for Windows. I haven't tested this method though. Proper support coming in future releases.
 +
</blockquote>
 
</blockquote>
 
</blockquote>
  
=== VLC ===
 
  
 +
== Troubleshooting / FAQ ==
 
<blockquote>
 
<blockquote>
To enable the controlling in VLC select 'Add Interface' from the menus and select 'Web Interface'. Then you can configure the controller in Home Control by using the IP address of the computer running the VLC and default port 8080.  
+
'''Q: I get the following error in windows: Cannot find module connect-form'''
<br><br>
+
<br />
Or you can just start VLC from command line with following parameters:
+
A: There is currently a bug in Windows npm, you need to edit the node_modules/connect-form/package.json and change the "index.js" into "lib/connect-form". Then it should work.
vlc --extraintf=luaintf --lua-intf=http
+
<br /><br />
 +
'''Q: I get the following error: bind EADDRINUSE?'''
 +
<br />
 +
A: Then the default ports that HC server uses are reserved by some other service and you need to try different ports. You can set the ports with command line parameters: -p <http_port> <ssd_port>
 +
<br /><br />
 +
'''Q: I am getting an inaccurate Rhythmbox status?'''
 +
<br />
 +
A: If the status in Home Control is not showing correct status after you change the playback state from the Rhythmbox then you most likely don't have dbus-send command installed in your system. It is needed for Home Control server to get the playback status from Rhythmbox.
 +
<br /><br />
 +
'''Q: I seem to have limited controls for Totem...?'''
 +
<br />
 +
A: If the status and controls in Home Control for Totem are limited (i.e. no current video info for example) then you most likely don't have dbus-send installed or you don't have dbus service plugin enabled/installed in Totem. Those are required for better control of Totem.
 
</blockquote>
 
</blockquote>
 +
  
 
== Resources ==
 
== Resources ==
Line 134: Line 288:
 
<blockquote>
 
<blockquote>
 
{{SconixDonation}}
 
{{SconixDonation}}
 +
<br />
 +
<br />
 +
</blockquote>
 +
 +
<blockquote>
 +
You should also donate to Donald Kirker for his awesome work on the UPNP support which is coming soon! To donate to him click the button below:
 +
<br />
 +
<br />
 +
</blockquote>
 +
 +
<blockquote>
 +
{{DKirkerDonation}}
 
<br />
 
<br />
 
</blockquote>
 
</blockquote>
Line 144: Line 310:
 
===== Official Forum =====
 
===== Official Forum =====
 
<blockquote>
 
<blockquote>
<u>'''<span style="color:#8a0002">Home Control</span>'''</u>
 
 
* [http://forums.precentral.net/enlightened-linux-solutions/305887-app-home-control.html Official PreCentral Forum Thread]
 
* [http://forums.precentral.net/enlightened-linux-solutions/305887-app-home-control.html Official PreCentral Forum Thread]
 
</blockquote>
 
</blockquote>
Line 152: Line 317:
 
* Follow Home Control on Twitter: [http://twitter.com/therealsconix @therealsconix]
 
* Follow Home Control on Twitter: [http://twitter.com/therealsconix @therealsconix]
 
</blockquote>
 
</blockquote>
 +
  
 
== Status ==
 
== Status ==
  
 
+
===== Changelog =====
=== Changelog ===
 
 
<blockquote>
 
<blockquote>
 +
:'''0.8.5 - Current Public Release''' - (''Jan. 8rd, 2012'')
 +
:* Added support for deleting configured devices/servers
 +
:* Added power controlling extension
 +
:* Additional fixes for user interface
 +
<br />
 +
:0.8.4 - Current Public Release - (''Jan. 8rd, 2012'')
 +
:* Fixed small bug in UI rotation when used on TouchPad
 +
<br />
 +
:0.8.3 - Old Public Release - (''Jan. 8rd, 2012'')
 +
:* Lots of interface fixes/changes for TouchPad
 +
:* Added support for Windows sound control
 +
:* Added support for Amarok music player
 +
<br />
 +
:0.8.2 - Old Public Release - (''Dec. 25rd, 2011'')
 +
:* Added support for Winamp music player
 +
<br />
 +
:0.8.1 - Old Public Release - (''Dec. 20rd, 2011'')
 +
:* Fixed small bug in manual adding of servers
 +
<br />
 +
:0.8.0 - First Public Release - (''Dec. 20rd, 2011'')
 +
:* First public release
 +
<br />
 
</blockquote>
 
</blockquote>
  
=== Future features ===
+
==== Future features ====
 
<blockquote>
 
<blockquote>
- Extend the already supported modules with full playlist control / search etc.
+
- Extend the already supported modules with more controls
 
<br>
 
<br>
- Winamp module for Music Player extension (will be the first test module for Windows)
+
- Window Media Player control if possible
 
<br>
 
<br>
- IP / Web Camera support for Status Info extension
+
- Windows mouse and keyboard support
 
<br>
 
<br>
- WebCAM/Motion support to alert you when webcam detects movement
+
- Windows input sound controlling
 
<br>
 
<br>
- Support for IR controlled devices
+
- OS X mouse control
 
<br>
 
<br>
- Support for Quicktime on OS X
+
- IP / Web Camera support for surveillance / monitoring with motion detection
 
<br>
 
<br>
- Volume/Speaker control for Linux
+
- Support for IR controlled devices
 
<br>
 
<br>
 
- UPNP module for controlling UPNP devices
 
- UPNP module for controlling UPNP devices
 
<br>
 
<br>
- Somethin else on mind, then please let me know :)
+
- Power controller for turning off / rebooting for OS X and Windows
 +
<br>
 +
- You have something else on your mind, then please let me know :)
 
</blockquote>
 
</blockquote>

Latest revision as of 17:17, 9 January 2012

Home control.png

Overview

Icon Home-Control.png

Home Control is an app that aims to provide means to control everything remotely controlled at your home. The current version is designed phones in mind (it will work nicely even with the small screen of Veer), but future versions will bring lot of changes for the UI when run in TouchPad. I haven't done much testing on TouchPad yet so if something is not working please let me know and I shall fix it.



Features

General

The following general features do not require the server application. Use the IP/port info of the device (or computer where the app is running).



Boxee and XBMC control
Enables control of Boxee and XBMC (both devices and application running on a desktop machine).

Cisco IP surveillance (will be enabled soon)
Allows viewing of the cameras video feed in Home Control.

VLC video player control
Allows basic controlling of VLC video player, more advanced controls are coming. Requires the LUA interface to be enabled in the VLC.

TouchPad Surveillance Camera (will be enabled soon)
Enables using of the web cam in TouchPad as an security cam when placed on touchstone. You can also view the latest captured image on Home Control running on your phone (this needs the server application though).

OS Specific
Linux Specific


The following features require the Home Control server software to be running on the machine.

Status information
Shows temperature information from 1-wire temperature sensors connected to the computer.

Mouse and keyboard control
Allows full mouse and keyboard control.

Display / Computer power control
Allows controlling of display and computer power state.

PulseAudio Mixer / Sound control
Allows controlling of system volume and other sound stuff.

Amarok, Banshee, Rhythmbox and MPD music player control
Allows basic controlling of these music player applications including ability to select playlists / search songs / add songs into the queue etc. At the moment Banshee and Rhythmbox only have basic control, no playlist control support.

Totem video player control
Allows basic controlling of Totem video player, more advanced controls are coming.

Windows Specific


Winamp music player control
Allows basic controlling of Winamp music player. You will need to install remotecontrol-for-winamp and JTFE plugins for the Winamp.

Remote control plugin: http://code.google.com/p/remotecontrol-for-winamp/
JTFE plugin: http://nunzioweb.com/daz/jtfe.html

System Sound Mixer / Volume
Enables system output volume and mute control.

Mac OSX Specific


The following features require the Home Control server software to be running on the machine.

Mouse and keyboard control
Allows full mouse and keyboard control. Currently only keyboard control enable, the mouse support will come in later releases.

Front Row controlling
Enables control of Front Row application.

iTunes music player
Enables control of iTunes application with ability to view playlists and select the playlist to play with possibility to search a song for playing.

QuickTime video player
Enables control of QuikTime Player application. Requires relative new QuickTime Player version!

System Sound Mixer / Volume
Enables system input / output volume and mute control.


Advanced

There are some advanced features that are not so obvious, specifically when using the app on devices with small screens (e.g. Veer). Devices with larger screens may display these features all the time.

Progress Bar
You can view the progress bar by tapping the currently playing song/video info (song/video needs to be playing or paused). The bar shows up for 5 seconds unless you start adjusting the position. Not all controllers support progress bar and it can even be media specific (streams can not be seeked usually).

Closing a Controller
You can close a controller by clicking its icon when the controller is selected. This will turn off any polling for that controller and close the application if the server side supports that. Starting the controller is simply done by selecting the controller which will also start the application if not already running.


Installation / Setup

Stable Releases
The stable releases of Home Control can be found in the WebOS-Internals feed and are recommended for general public use.

Testing Releases
The testing releases of Home Control can be found in the WebOS-Internals Alpha or Beta feeds WebOS-Internals Testing Feed.


Home Control Client

The following method can be used to install Home Control client.

Preware

  1. Open Preware
  2. Start typing “Home Control” (no quotes)
  3. Tap the corresponding app from the list
  4. Tap the Install button

Or

  1. Open Preware
  2. Tap Available Packages
  3. Tap Applications > Utilities (e.g. Home Control)
  4. Tap the Install button


Setup

Adding A Server

Server Type:
This setting determines the server type that you'll be connecting to for managing the controller.

Server / Device:
All currently supported controllers need the server address of the device/HC server. The format for the address is <address>:<port>, if username/password is needed then: <user>:<password>@<address>:<port>

For the controllers that need the Home Control server, the address is the IP address of the computer running the server application and the port is 3000. For the other controllers that control the devices/applications directly you need to see the device/application configuration for the username/password and address/port configuration.


Home Control Server

The following can be used to install the Home Control server application.

The Home Control server application can be installed on Linux, OS X and Windows. See the available OS specific features above.
To install the server application you need to have working installation of node.js (version 0.6.x of node is recommended, although everything should work with the 0.4.x version as well) and npm. The latest node.js already comes with npm so just download and install the latest version from: http://nodejs.org. Then you can use npm to install hc-server: npm install hc-server
Once node.js is installed you can run the server by entering the node_modules/hc-server directory (note that with older 0.4.x node.js the installation directory is bit different) and executing: node hc-server.js

Verify that the port that the hc-server uses (default: 3000) is not accessible from outside your local area network. If you want to make the server accessible outside of your local area network then you should configure the server to require user authentication.


Setup

You can edit the following default values by editing the config.js file.

  • Authentication username and password (default: none)
  • Port for HTTP connections (default: 3000)
  • Port for SSD queries (default: 1900)


Configuration / Usage

Boxee / XBMC

See the Boxee/XBMC configuration for the address/port setup. The default port is 8080.

VLC

To enable the controlling in VLC select 'Add Interface' from the menus and select 'Web Interface'. Then you can configure the controller in Home Control by using the IP address of the computer running the VLC and default port 8080.

Or you can just start VLC from command line with following parameters: vlc --extraintf=luaintf --lua-intf=http

Rhythmbox

To get all features you need to have dbus-send command line application installed. It comes pre-installed with many distributions.


Totem

To get all features you need to have dbus-send command line application installed. It comes pre-installed with many distributions. You also need to enable dbus-service plugin in Totem.

Mouse control in OS X

This will most likely require some too, but this is not implemented yet...

Mouse / Keyboard control in Windows

You might get mouse / keyboard control working already by installing XMing or Cygwin/X for Windows. I haven't tested this method though. Proper support coming in future releases.


Troubleshooting / FAQ

Q: I get the following error in windows: Cannot find module connect-form
A: There is currently a bug in Windows npm, you need to edit the node_modules/connect-form/package.json and change the "index.js" into "lib/connect-form". Then it should work.

Q: I get the following error: bind EADDRINUSE?
A: Then the default ports that HC server uses are reserved by some other service and you need to try different ports. You can set the ports with command line parameters: -p <http_port> <ssd_port>

Q: I am getting an inaccurate Rhythmbox status?
A: If the status in Home Control is not showing correct status after you change the playback state from the Rhythmbox then you most likely don't have dbus-send command installed in your system. It is needed for Home Control server to get the playback status from Rhythmbox.

Q: I seem to have limited controls for Totem...?
A: If the status and controls in Home Control for Totem are limited (i.e. no current video info for example) then you most likely don't have dbus-send installed or you don't have dbus service plugin enabled/installed in Totem. Those are required for better control of Totem.


Resources

Supporting Development

Btn donateCC LG.gif

You should also donate to Donald Kirker for his awesome work on the UPNP support which is coming soon! To donate to him click the button below:

Btn donateCC LG.gif

Official Developer Project Page
Official Forum
Official Twitter Account


Status

Changelog
0.8.5 - Current Public Release - (Jan. 8rd, 2012)
  • Added support for deleting configured devices/servers
  • Added power controlling extension
  • Additional fixes for user interface


0.8.4 - Current Public Release - (Jan. 8rd, 2012)
  • Fixed small bug in UI rotation when used on TouchPad


0.8.3 - Old Public Release - (Jan. 8rd, 2012)
  • Lots of interface fixes/changes for TouchPad
  • Added support for Windows sound control
  • Added support for Amarok music player


0.8.2 - Old Public Release - (Dec. 25rd, 2011)
  • Added support for Winamp music player


0.8.1 - Old Public Release - (Dec. 20rd, 2011)
  • Fixed small bug in manual adding of servers


0.8.0 - First Public Release - (Dec. 20rd, 2011)
  • First public release


Future features

- Extend the already supported modules with more controls
- Window Media Player control if possible
- Windows mouse and keyboard support
- Windows input sound controlling
- OS X mouse control
- IP / Web Camera support for surveillance / monitoring with motion detection
- Support for IR controlled devices
- UPNP module for controlling UPNP devices
- Power controller for turning off / rebooting for OS X and Windows
- You have something else on your mind, then please let me know :)