Difference between revisions of "Install dawnDusk"
(→Launch the xPL clock device at startup) |
(→Ubuntu) |
||
Line 32: | Line 32: | ||
The xPL dawnDusk device is to be launched after the xPL hub. | The xPL dawnDusk device is to be launched after the xPL hub. | ||
− | == Ubuntu == | + | == Debian with SystemD == |
+ | |||
+ | On Debian with [https://wiki.debian.org/systemd systemd] (such as [https://www.raspbian.org/ Raspbian] | ||
+ | or [https://www.ubuntu.com/ Ubuntu]), the scripts can be defined as services. | ||
+ | |||
+ | Edit <code>/lib/systemd/system/xpl-dawnDusk.service</code>: | ||
+ | [Unit] | ||
+ | Description=xPL dawnDusk | ||
+ | After=xpl-hub.service | ||
+ | |||
+ | [Service] | ||
+ | Type=simple | ||
+ | User=control | ||
+ | Group=users | ||
+ | ExecStart=/home/control/Documents/Controls/xpl-dawnDusk.pl -n home | ||
+ | Restart=always | ||
+ | |||
+ | [Install] | ||
+ | WantedBy=multi-user.target | ||
+ | |||
+ | Activate the service: | ||
+ | su | ||
+ | systemctl enable xpl-dawnDusk.service | ||
+ | |||
+ | Reboot and check: | ||
+ | ps aux | grep -v grep | grep -i xpl | ||
+ | ps ax | grep -i xpl | grep -v grep | sed 's/.*\/Controls\///' | ||
+ | systemctl list-units --type=service --state=running | grep xpl | ||
+ | service xpl-dawnDusk status | ||
+ | |||
+ | == Ubuntu with Upstart== | ||
On Ubuntu, the xPL dawnDusk device starts-up once <code>xpl-hub_started</code> has been emitted. | On Ubuntu, the xPL dawnDusk device starts-up once <code>xpl-hub_started</code> has been emitted. |
Revision as of 16:08, 29 December 2017
The dawnDusk device sends an xPL message at dawn, sunrise, sunset and dusk.
Before all, make sure you have installed an xPL hub.
Contents
[hide]Install xPL dawnDusk device
Download the xPL device script.
Move the script to xPL scripts directory:
SCRIPTS_BASE_DIR=/home/control/Documents/Controls mv xpl-dawnDusk.pl $SCRIPTS_BASE_DIR chown control:users $SCRIPTS_BASE_DIR/*.pl chmod 775 $SCRIPTS_BASE_DIR/*.pl
Test xPL dawnDusk device
Open a terminal window and launch the device:
SCRIPTS_BASE_DIR=/home/control/Documents/Controls $SCRIPTS_BASE_DIR/xpl-dawnDusk.pl -v
Open a second terminal window (on any machine with xPL installed) and monitor the xPL protocol:
SCRIPTS_BASE_DIR=/home/control/Documents/Controls $SCRIPTS_BASE_DIR/xpl-monitor.pl -vf
Open a third terminal window (on any machine with xPL installed) and monitor the xPL protocol:
SCRIPTS_BASE_DIR=/home/control/Documents/Controls $SCRIPTS_BASE_DIR/xpl-send.pl -c dawnDusk.basic command=status query=all
The monitor should report dawn and dusk times for the current day.
Launch the xPL dawnDusk device at startup
The xPL dawnDusk device is to be launched after the xPL hub.
Debian with SystemD
On Debian with systemd (such as Raspbian or Ubuntu), the scripts can be defined as services.
Edit /lib/systemd/system/xpl-dawnDusk.service
:
[Unit] Description=xPL dawnDusk After=xpl-hub.service [Service] Type=simple User=control Group=users ExecStart=/home/control/Documents/Controls/xpl-dawnDusk.pl -n home Restart=always [Install] WantedBy=multi-user.target
Activate the service:
su systemctl enable xpl-dawnDusk.service
Reboot and check:
ps aux | grep -v grep | grep -i xpl ps ax | grep -i xpl | grep -v grep | sed 's/.*\/Controls\///' systemctl list-units --type=service --state=running | grep xpl service xpl-dawnDusk status
Ubuntu with Upstart
On Ubuntu, the xPL dawnDusk device starts-up once xpl-hub_started
has been emitted.
Edit /etc/init/xpl-dawnDusk.conf
:
################################################################################ # xPL dawnDusk, sends dawn and dusk occurence messages # description "xPL dawnDusk" version "1.0" author "Francois Corthay" #------------------------------------------------------------------------------- # Configuration variables # env SCRIPTS_DIR='/home/control/Documents/Controls' env SCRIPT_NAME='xpl-dawnDusk.pl' env PARAMETERS='-n home' #------------------------------------------------------------------------------- # Start and stop conditions # start on xpl-hub_started stop on shutdown respawn setuid control setgid users #------------------------------------------------------------------------------- # Start daemon # exec $SCRIPTS_DIR/$SCRIPT_NAME $PARAMETERS
Start the device and check it is up and running:
su root service xpl-dawnDusk start service xpl-dawnDusk status initctl list | grep xpl
Mac OS
On Mac OS, the xPL dawnDusk device starts-up later than the hub.
Edit /Library/LaunchDaemons/xpl-clock.plist
:
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>xPL dawn-dusk indicator</string> <key>OnDemand</key> <false/> <key>UserName</key> <string>control</string> <key>ProgramArguments</key> <array> <string>/Users/control/Documents/Controls/xpl-dawnDusk.pl</string> <string>-n</string> <string>home</string> <string>-w</string> <string>25</string> <string>-l</string> <string>46.0037</string> <string>-o</string> <string>18</string> </array> </dict> </plist>
Start the device and check it is up and running:
su root launchctl load /Library/LaunchDaemons/xpl-dawnDusk.plist launchctl list | grep -i xpl