X10 Controller Plasma Widget

Plasma 4 Widgets

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

0
Score 63.3%
Description:

Plasma Widget to control a USB X10 CM19A controller, used for home automation.

The widget can also connect to another host controlling the CM19a (like a pi raspberry). This is achieved through a dedicated DBus instance.

Initially panel is empty, add nodes with their corresponding address.

Rules can be added to automatically control dimming or extinguishing lights at night.
The service will also receive incoming events from X10 sensors and radio remote controls.

SVN (latest)
svn co http://cyberdine.ca/svn/x10-widget x10-widget

Config:
[li]run sudo dpkg-reconfigure x10-widget and follow the questions to configure the components[/li]
Components:
[li]x10 : (cmd line) send commands through console[/li][li]x10-widget : Plasma widget to add to a KDE session[/li][li]DataEngine : Plasma Engine, loaded whenever a widget is added, to dispatch notifications and relay commands to/from widgets (transparent to user)[/li]
[li]x10_service : the daemon which directly controls the CM19A usb device.[/li][li]x10_dbus_daemon : DBUS daemon launched on controller host to communicate between x10_service and its clients[/li]
Points of interest:
[li]C++ KDE Plasma QT cmake linux[/li][li]KDevelop4 project[/li][li]DBus daemon / remote DBUS IPC[/li][li]Plasma DataEngine / Service[/li][li]X10 Controller / libusb access[/li][li]Central QueueManager for widgets commands[/li][li]produce debian package (cpack)[/li]
Notes:
[li]when using cmd line remotely, make sure you use -X when you ssh to the box to use the x10 cmd line, dbus needs X11...[/li]
Last changelog:

5 years ago

0.6.4
[li]improved debian packaging (don't replace config files)[/li]
0.6.3
[li]Fix rules could stop after first exec.[/li][li]Fix occasional plasma crash when updating rules in widget[/li][li]DBus improvements (reconnection & error handling)[/li][li]improved service (reload, check connectivity & daemon improvements)[/li][li]improved x10 cmd (reload, quit)[/li][li]improved debian packaging & scripts (data files not overwritten in upgrade)[/li]
0.6.2
[li]configuration is now handled by debconf (Controller/Remote, IP, [port])[/li][li]To reconfigure: 'sudo dpkg-reconfigure x10-widget'[/li][li]kill command for daemon and improved script
[/li]
0.6.1
[li]Automatic DBus re-connection when lost[/li][li]Various tuneups (config / dbus handling)[/li]
0.6.0 - DBUS REMOTE

[li]This is achieved through a custom dbus-daemon (/etc/dbus-1/x10_dbus_daemon.conf) listening on port 14500.[/li][li]Whenever a client sends a request on that dbus interface, system will launch associated x10_service, which controls the CM19A interface.[/li]
The dbus-daemon is started automatically when dbus is started (or through the init script /etc/init.d/x10-daemon start. that init script doesn't need to be loaded on boot unless your system doesn't support upstart job (like pi raspberry). launch that script on init 5 lvl

0.5.2
[li]Fix debian packaging... missing config files[/li][li]Fix dbus remote being rejected when using remote (apparmor used since dbus 1.6.12)[/li]
0.5.1
[li]adapt config ui size, fix a few ui glitches in rules config[/li]
0.5.0 - RULES
[li]New config panel for preconfigured events/actions (like turn off all units in channel E (E*) or set to a specific value... at a given time, on certain days, with possible repetition...[/li][li]Fix auto-off timer being cancelled when lighting on and dimming to given value[/li][li]Fix cmake not finding proper system_bus_services_dir in 64bits...[/li][li]Fix DEB packaging -> upgradeable, added postinst and prerm scripts[/li][li]Remove timeout increase with Ctrl/Shift click.[/li][li]x10_service demonized (-d) and location changed from /usr/bin to /usr/lib/kde4/libexec/[/li][li]add ati_remote to blacklist.conf[/li][li]always send command off even if already off[/li][li]allow use of "on|off" in cmd line[/li][li]various improvements[/li]
0.4.5
[li]changing adress in config updates value from x10_service (GetValue prop)[/li][li]x10 e2 -> get current value[/li][li]file logging capability for x10_service (-l | --log filename)[/li][li]/etc/x10.conf (max_errors, auto-reload driver) -> unused yet[/li][li]x10 cmd line improvements[/li][li]fix: "x10 restart" & quitting last widget made x10_service process exit[/li][li]move dbus from session to system[/li]
0.4.0 - DBUS Service architecture
[li]new daemon: x10_service:[/li]holding X10 Queue Manager & controlling the CM19A device.
loaded on demand, used by x10 cmd line & data_engine (plasma widgets)
[li]new cmd line utility (x10) :[/li]x10 e2 + : e2 on (- | + | s | b)
x10 e2 5 : dim to 5 (-1 to 7)
x10 all on | off
x10 status | start | stop | quit

0.3.0 Tuned up QueueManager and reading incoming events from device

0.2.0 using Plasma DataEngine, Service & job architecture to share data among widgets

0.1.0 Initial version. static QueueManager

For full history, check http://cyberdine.ca/svn/x10-widget/debian/changelog

dcartron

6 years ago

Hi,

I'm very interrested in your plasmoid but dunno how to install it on my box (kubuntu 13.04).

Tried to install it from the plasmoid intaller bar, no way. Installed the deb and now the plasmoid appears in the plasmoid installer bar, but when i want to install it:
impossible to find the x10 component...

Thx for your help.

Report

C

altagir

6 years ago

Also make sure you do use /usr for install prefix.
cmake -DCMAKE_INSTALL_PREFIX=/usr ..

if you use /usr/local (which may be the default), KDE will never see the plugin
/usr/lib/kde4/plasma_applet_x10.so
/usr/lib/kde4/plasma_engine_x10.so

then run kbuildsycoca4

Report

C

altagir

6 years ago

Hi there,

By installing, I assume you meant by doing "make install"

After installing a widget through source code the first time, you have to run the command kbuildsycoca4, which will register the [new] plugins in /usr/lib/kde4/

at this point x10 is recognizable as service. try plasmoidviewer x10. If not, restart the plasma (it won't kill your applications) by doing:
kquitapp plasma-desktop; sleep 1; plasma-desktop

when adding the x10 widget, please add it first to the desktop, then drag it to a panel if you want there. Reason is that widget is empty and you will need to right click to add nodes... On a panel, it is resized to minimum making it harder to find the initial widget

If you want to play with the code, use the link makeln.sh in the x10 directory after a make install... This will link libraries in /usr/lib/kde4/ to latest development in build/

This way launching "plasmoidviewer x10" though cmd or Kdevelop will always use latest

Else KDE load latest in /usr/lib/kde4/ and the only way to reload new version is by restarting plasma-desktop

Make sure you have the CM19A in a usb slot, and enjoy

Feel free to request any help or new features

regards

Report

5 years ago

0.6.4
[li]improved debian packaging (don't replace config files)[/li]
0.6.3
[li]Fix rules could stop after first exec.[/li][li]Fix occasional plasma crash when updating rules in widget[/li][li]DBus improvements (reconnection & error handling)[/li][li]improved service (reload, check connectivity & daemon improvements)[/li][li]improved x10 cmd (reload, quit)[/li][li]improved debian packaging & scripts (data files not overwritten in upgrade)[/li]
0.6.2
[li]configuration is now handled by debconf (Controller/Remote, IP, [port])[/li][li]To reconfigure: 'sudo dpkg-reconfigure x10-widget'[/li][li]kill command for daemon and improved script
[/li]
0.6.1
[li]Automatic DBus re-connection when lost[/li][li]Various tuneups (config / dbus handling)[/li]
0.6.0 - DBUS REMOTE

[li]This is achieved through a custom dbus-daemon (/etc/dbus-1/x10_dbus_daemon.conf) listening on port 14500.[/li][li]Whenever a client sends a request on that dbus interface, system will launch associated x10_service, which controls the CM19A interface.[/li]
The dbus-daemon is started automatically when dbus is started (or through the init script /etc/init.d/x10-daemon start. that init script doesn't need to be loaded on boot unless your system doesn't support upstart job (like pi raspberry). launch that script on init 5 lvl

0.5.2
[li]Fix debian packaging... missing config files[/li][li]Fix dbus remote being rejected when using remote (apparmor used since dbus 1.6.12)[/li]
0.5.1
[li]adapt config ui size, fix a few ui glitches in rules config[/li]
0.5.0 - RULES
[li]New config panel for preconfigured events/actions (like turn off all units in channel E (E*) or set to a specific value... at a given time, on certain days, with possible repetition...[/li][li]Fix auto-off timer being cancelled when lighting on and dimming to given value[/li][li]Fix cmake not finding proper system_bus_services_dir in 64bits...[/li][li]Fix DEB packaging -> upgradeable, added postinst and prerm scripts[/li][li]Remove timeout increase with Ctrl/Shift click.[/li][li]x10_service demonized (-d) and location changed from /usr/bin to /usr/lib/kde4/libexec/[/li][li]add ati_remote to blacklist.conf[/li][li]always send command off even if already off[/li][li]allow use of "on|off" in cmd line[/li][li]various improvements[/li]
0.4.5
[li]changing adress in config updates value from x10_service (GetValue prop)[/li][li]x10 e2 -> get current value[/li][li]file logging capability for x10_service (-l | --log filename)[/li][li]/etc/x10.conf (max_errors, auto-reload driver) -> unused yet[/li][li]x10 cmd line improvements[/li][li]fix: "x10 restart" & quitting last widget made x10_service process exit[/li][li]move dbus from session to system[/li]
0.4.0 - DBUS Service architecture
[li]new daemon: x10_service:[/li]holding X10 Queue Manager & controlling the CM19A device.
loaded on demand, used by x10 cmd line & data_engine (plasma widgets)
[li]new cmd line utility (x10) :[/li]x10 e2 + : e2 on (- | + | s | b)
x10 e2 5 : dim to 5 (-1 to 7)
x10 all on | off
x10 status | start | stop | quit

0.3.0 Tuned up QueueManager and reading incoming events from device

0.2.0 using Plasma DataEngine, Service & job architecture to share data among widgets

0.1.0 Initial version. static QueueManager

For full history, check http://cyberdine.ca/svn/x10-widget/debian/changelog

12345678910
2
product-maker vitoubien Feb 25 2013 9 excellent
product-maker Contrast Feb 24 2013 9 excellent
product-maker Base: 4 x 5.0 Ratings
File (click to download) Version Description Downloads Date Filesize DL OCS-Install MD5SUM
*Needs ocs-url or ocs-store to install things
Pling
0 Affiliates
Details
license
version
0.6.4
updated Dec 11 2013
added Feb 24 2013
downloads 24h
0
page views 24h 4