Frequently asked questions

 Frequently asked questions

1) Installation

First off: install everything like usual, follow our instructions on the download page.
Then come back to this topic to make the required changes.

The issue:
Since DSM 6, Synology is having 2 different versions of PHP running at the same time.
A very small one, and a normal one.
PulseStation needs the normal one.

To fix this, we will rename the small one and make a shortcut from the big one to the small one.
This will make your entire system use the proper normal php version.

Just 2 lines to fix this:

Open ssh terminal and execute following commands:

sudo mv /usr/bin/php /usr/bin/phpORIG
sudo ln -s /usr/local/bin/php56 /usr/bin/php

Now execute the command:
php -m
And verify whether ‘mysql’ is in the list.

If it’s not, try following commands:
sudo mv /usr/bin/php /usr/bin/phpORIG
sudo ln -s /volume1/@appstore/PHP5.6/usr/local/bin/php56 /usr/local/bin/php

Now execute the command:
php -m
And verify whether ‘mysql’ is in the list.

sudo mv /usr/local/bin/php /usr/local/bin/phpORIG
sudo ln -s /usr/local/bin/php56 /usr/local/bin/php

Now all services will use the proper php version and for instance the connection to the database will work again.

Symptoms we had before we fixed this:
– No connection to the database (or only partially)
– Virtual devices were not updating

By default when installing PulseStation, it will install all necessary drivers for you.

The main question will be “On which serial port is the USB key running”?
You need to know this in order to set-up Z-wave in PulseStation.

1) Verify SSH is activated in the control panel of your NAS. For Raspberry Pi this is enabled by default.

2) Unplug the USB key and reboot your device

3) Now insert your USB key

4) Login to your server via SSH (you can execute following command in the terminal of your computer):
Raspberry pi: ssh pi@ITS_IP
NAS / Linux: ssh root@ITS_IP
And then enter your password.

5) Execute following command: dmesg | grep tty

6) Verify in the output (near the bottom) whether it lists something like:
“usb 1-1.3: cp210x converter now attached to ttyUSB0”.

The ttyUSB0 or ttyACM0 is the serial port to which the usb key is attached.

In PulseStation, install the Z-wave service from the store, then go in the left menu to:
Services / Zwave / Serial port
Inside the serial port field, you need to enter to which serial port the USB key has been attached (see above).
Note: you will need to prefix the serial port with “/dev/”
Eg: /dev/ttyACM0 or /dev/ttyUSB0

Click outside of the input field and the system will ask you to restart the Zwave service, allow it to restart in order to start detecting all your Z-wave devices.
Let it scan for about 10 minutes. If you refresh this page, below “Devices” you will see the new devices being added and details being populated during the scan.

With the edit icon next to the device you can rename it and assign it to rooms.

PulseStation is only working on DSM 5 or newer.

1) Set the trust level to “Any Publisher” in Package Center.

2) Add the following repo in package center :

3) Install the package “MariaDB” (used to store your virtual devices and device configuration) and the package “Webstation”.
Inside the Webstation settings, tick following boxes as additional modules to be loaded:
Zip, openssl, mysql, pdo_mysql and curl

4) Activate Mysql inside the webstation settings.

5) Install the package PulseStation under “Community”
There is no need to start the package from within Synology center. It will then show as if it’s not running, but in fact it is, just open the link below:

6) Now you can open PulseStation in your browser:
Front-end: http://IP-OF-YOUR-SYNOLOGY/PulseStation/
Admin: http://IP-OF-YOUR-SYNOLOGY/PulseStation/administration/

You can now login with following credentials:
Login: admin
Password: admin
Don’t forget to modify the default password in the Users page after logging in.  

Note: if you cannot access PulseStation now, it could be your router is blocking it.
You can try adding an extra http port in your synology configration: webservices / tick the box to add an extra http port and add a new port, eg: 5020.
Don’t forget to open this port then as well in your synology firewall and router.
The new url would then be: http://IP-OF-YOUR-SYNOLOGY:5020/PulseStation/administration/


  • Are you on DSM 6?
    You may need to perform these DSM6 actions in order for the database to work (needed to write data correctly).
  • The service will pretend it’s not running inside DSM administration center, but it is always running in the background, no need to start/stop the package.
    If you really want to stop it, stop the core service inside PulseStation.

To install PulseStation on Ubuntu, first open a terminal window or login via ssh.

Execute following commands:

1) wget
2) sudo chmod +x
3) sudo ./
4) sudo cd /var/www/html/
5) sudo mv PulseStation* /var/www
6) sudo service PulseStation start

You can now open PulseStation in your browser:

Front-end: http://IP-OF-YOUR-DEVICE/PulseStation/
Admin: http://IP-OF-YOUR-DEVICE/PulseStation/administration/

You can find the IP  by entering the command “ifconfig” or by looking in the router logs or by just trying.
Usually it’s something like: 192.168.1.x
Replace x with numbers ranging from to up till about 15.

You can now login with following credentials:
Login: admin
Password: admin

Inside Synology package center, we cannot always retreive the status of our own service.
This is due to a limitation inside Synology.

This means PulseStation could actually be running, but you just don’t know it.

Try visiting the PulseStation url
And then check after logging in whether in the left menu under services the “Core” service is running.

If it is, everything is fine and PulseStation is running for you in the background.
You can ignore the status in the Package Center.

If that doesn’t solve it, please check the other FAQ messages in order to debug the cause.

PulseStation generates a log file after the installation.

The log file can be found here : /var/packages/PulseStation/target/log/install.log

DiskStation> more /var/packages/PulseStation/target/log/install.log
05/06/15-11:02:13 Installation started
05/06/15-11:02:17 PulseStation’s web interface installed.
05/06/15-11:02:17 Default PulseStation’s services installed.
05/06/15-11:02:18 Configuration done.
05/06/15-11:02:19 Drivers installed.
05/06/15-11:02:19 Drivers loaded.
05/06/15-11:02:19 Installation successfull.

Recently there is a new version of the DSM (5.2).

If you use the Zwave/EnOcean service, you have to uninstall and install PulseStation.

Why ?

Because PulseStation installs some drivers that are needed to use USB Dongle.
These drivers are not backup when there is a DSM Update.

DSM 5.2 ?

PulseStation is normally compatible with DSM 5.2.
If you encoured a problem please consult the installation log or feel free to contact us info [at]

Note : You can use the backup’s service to restore your data after the reinstallation.

1) Insert the SD card into your computer.

Mac: Download and install “ApplePi-Baker
Windows: Download and install “Win32DiskImager

3) Download a Raspbian Image Raspberry Download
Or even easier: Install Raspbian system on your RPi by using NOOBS as the instructions in says. It is more convenient to use the NOOBS method, instead to use directly the Raspbian image, in order to take advantage of all the uSD capacity without any tweak.

4) Open the downloaded software, select the correct device of the SD card (make certain you select the correct one, otherwise you could lose data on your computer!),
then select the downloaded Raspbian image.

5) After the image has been burned to the SD card, safely remove it from your computer and insert it in the Raspberry Pi.
Power it on and wait till it’s booted.

6) From a terminal (first time, since maybe you don’t know the assigned IP, I recommend to access directly with a monitor and a keyboard/mouse), execute the following:

sudo apt-get update && sudo apt-get upgrade
sudo wget -O - | sudo bash

Note: if you get error’s, just run the script a few times until you get the success message.
If you get stuck on the input screen of phpmyadmin (database configuration), then you can just manually restart the configuration by using following command:

sudo dpkg --configure -a

8) You can now open PulseStation in your browser:

Front-end: http://IP-OF-YOUR-RASPBERRY-PI/PulseStation/
Admin: http://IP-OF-YOUR-RASPBERRY-PI/PulseStation/administration/

You can find the IP in the router logs or by using the command ifconfig from a terminal in the RPi.
Usually it’s something like: 192.168.1.x
Replace x with numbers ranging from to up till about 15.

You can now login with following credentials:
Login: admin
Password: admin

2) Administration

Now that PulseStation is running, you will want to add functionality to it.

Log into the administration panel (http://IP/PulseStation/administration/)
login: admin
password: admin
and navigate to the Add-ons.

Inside the Add-ons page, install the services you would like to use.
Eg: Zwave, EnOcean, …

A service allows you to talk to devices, read the current weather, …
It does all the backend work for you.
You do not need to install services you do not need, eg: Don’t install the Sonos service if you don’t own a Sonos device.
Every service puts extra load on your hardware.

After installation of the services you would like to use, configure them under the Services menu.
If there is a “Serial port” field inside, please lookup which port the USB device is using.
For this, see the question “How do I know my USB key is detected” in this page

Inside the Add-ons you can find the Pushover service.

After you install it, under services you will get a new line called “Pushover”.
Open it and click on “Add Pushover application”.
Afterwards click on the edit icon to configure it.

Inside the edit pop-up, go to the “Properties” tab.
In here, fill in your Pushover application token and user key.
This you can find on the pushover website.
You will need to create an account and add a new application.

Add a Pushover application: you can just use our details:
Name: PulseStation
Type: website
Description: Home automation
Check the box and create the application.
You will now get an application token.

Press “Ok” on PulseStation, to save the credentials inside the service.
You can now use the Pushover blocks inside Blocky.

We always recommend adding a Network Key to your z-wave configuration.
This will encrypt communication between your devices with this key and makes your network more secure.
More recent devices even require you to put a Network Key.

It could also fix issues if your zwave service stops you have this kind of error: “Invalid Network Key”.

You can set-up the network key in:
PulseStation > Administration > Services > Zwave

Example Network Key:
0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x06, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10

We however recommend changing this key, so it cannot be guessed.
Reorder things between the , characters, eg:
0x01, 0x02, 0x03, …
0x03, 0x01, 0x02, …

You will have to restart the zwave service after changing this key!

If you want to help us to translate PulseStation, please visit the following collaborative tool : Translate PulseStation

Join the group and start translating !

In order to control PulseStation, you can use the Imperihome mobile app.


1) Inside the PulseStation administration panel, go to the Add-ons and install the Imperihome service.

2) Once it’s installed, install the Imperihome app.
There is a free version of the app available in Google Play store.
Note: the Imperihome iOS app will be launched in the coming weeks. It’s currently being tested.

3) Go to settings inside the app, open “My systems”, tap on “Add a new system”, choose for the “Imperihome Standard System”.
Fill in following url: http://IP:4070 (replace IP with the IP of your PulseStation server).
Also provide the login and password from PulseStation.

4) Press next and verify the system was detected. If not: open TCP port 4070 in your firewall (needed on Synology for instance).

You are now set to control your house from your mobile phone

3) Front-end (Dashboard)

You can access the front-end to actually control your devices on following url:

In here you can click on the devices to turn them on or off.


If you have assigned devices to a specific room, you can use the Rooms menu on top to switch to a different room.
By default you will see all devices from all rooms.

You can create any kind of blocks.
Below you can see an example of a 4-digit panel to arm your alarm and
an example of the yahoo weather information box.



4) Advanced (blocky) rules + examples

First a warning: you cannot reuse a Zipato keypad that has been included before in a different gateway/system, unless you excluded it before.
So if your usb key ever crashes or gets lost, you cannot reuse the keypad and you will have to buy a new device.
This is done on purpose to prevent your device from being included in a different system and hacking your home security this way.

After you include the keypad, you can start learning your tags.

  1. Press the home button and wait for 2 seconds until the red light stays on
  2. Touch the keypad with your new rfid tag
  3. Now in the logs the code of this rfid tag will be visible, eg: 
    2016-04-24 12:03:55.421 Info, Node019, ApplicationCommandHandler – Unhandled Command Class 0x63
    2016-04-24 12:03:55.438 Detail, Node019, Received: 0x01, 0x07, 0x00, 0x03, 0x00, 0x13, 0x02, 0x83, 0x07, 0x61
  4. The code of your keytag is marked in bold above. You need to remove the comma’s between it, eg: 0x01 0x07 0x00 0x03 0x00 0x13 0x02 0x83 0x07 0x61
  5. Now add this code under services/zwave/select your keypad, edit icon / properties and enter the code above inside the field called “Code 1:”
  6. Press OK
  7. Wake up the keypad by pressing the home button, but doing nothing else.
  8. Wait 3 minutes and wake up the keypad again by pressing the home button. By now he should have learned this new code.

Now you can use this in your blocky scenes.
Eg: in the code below, my tagreader is zwave-19.
In your case this will be a different number.
In my case TAG_1 is my first tag, code 1, allowing me to turn off the alarm:


If inside the parameters section of your device there is no option to change from Farenheit to Celcius, then your device is a US device and does not support it.
Either bring it back to the store and complain there, or fix it in a hacky way:

1) Create a virtual value device, eg: celcius
2) Create a blocky rule that looks like:


The top line puts the farenheit in a parameter,
the middle converts it to celcius and puts it in a variable “item” and
the bottom one puts the celcius in a virtual value, so it can be displayed and easily reused.

You can also choose to keep it as a variable if you only need it in blocky.

Hereby an example that explains how you can trigger blocky rules only when the current date is between 2 days:


The php code used inside the block, so you can copy paste it:

$startTime = strtotime($startdate);
$endTime = strtotime($enddate);
$startFormat = date('Y-m-d',$startTime);
$endFormat=date('Y-m-d', $endTime);
if(date('Y-m-d') >= $startFormat && date('Y-m-d') < = $endFormat){

If you want to do it between 2 timestamps instead,
there is inside blocky under "Utils" the option "Time =".
If you click on the = sign you can change it to "between".
This allows you to put "Time between".

Issue: you want to change a parameter of a device, but it’s not inside the dropdown of the standard Blocky block of that device.

Go to the parameters o
First, modify the property via the zwave service and see what happens in the log of the core service.
You should see something like this :
2015-11-16 06:10:12.650 Message In Core : 1|HUB|zwave|UPDATEPROPERTY|zwave-2|37-user-bool-1-0|true
2015-11-16 06:10:12.917 Forwarding message : 1|HUB|zwave|UPDATEPROPERTY|zwave-2|37-user-bool-1-0|true
2015-11-16 06:10:14.961 Message Finished, remove it from the stack (0|HUB|HUB|AUTORESTART)
2015-11-16 06:10:15.043 zwave : Message received – 1|HUB|zwave|UPDATEPROPERTY|zwave-2|37-user-bool-1-0|true|1447650614624|447409f9bfb16fc245d3496fef722b73
2015-11-16 06:10:15.131 Message Finished, remove it from the stack (1|HUB|zwave|UPDATEPROPERTY|zwave-2|37-user-bool-1-0|true)

Then, go to your blockly scene and add a php block with the following code :
//instructions: setValue(“THE SERVICE”,”THE DEVICE ID”,”THE PROPERTY ID”,”THE VALUE”);

So put in the parameters you see in the core log.
This allows you to change any parameter via blocky.

A variable by default is reset every time a scene is run.

That’s why most users use virtual devices to keep the status of a variable for now.

If you however want to keep a certain value, you can also write it into a file.
This then allows you to read the content of this file, the next time you execute the scene and continue from there.

You can do this in 2 simple blocks.
You use the custom PHP block for this inside blocky.

Step 1: you write the value you want to save to a file.
$file = ‘VariableName.txt’;
$current = file_get_contents($file);
$current = “Put your content here“;
file_put_contents($file, $current);

Step 2: you read the file and put this value back into your variable.
You do this when you need to retreive the value of your variable.
$file = file_get_contents(‘VariableName.txt’, FILE_USE_INCLUDE_PATH);

You can now use the real variables system (eg: create a variable named “file” in this case) to put the variable block inside IF statements.
It looks something like:
IF file = TEXT 123

You can use the php function addlog($file); in step 2 to debug the scene.
It will write the contents to your scenes log file.

In the administration panel of PulseStation you click in the left menu on “Blocky”.

You will now get a page with a lot of tabs on the left.
In here you can drag and drop to create your rules.

A blocky rule almost always starts with an IF-DO statement.
You can find it under “Control”.

Try creating a simple rule:
IF the time is 17:00
DO turn the light on

Under “Control”, drag in the IF-DO block.
From under Util, drag in the “Time 0 : 0” block, put it next to the IF, so that the blocks stick together. Now modify the time to 17:00
From under Zwave, select the Blue ribbon, drag it next to the DO statement, so that they click together.
Select the device in the dropdown you want to turn on (switch to “True”).
Press the “Save” button and give it a name.

Note: if you don’t see the Zwave tab, you have not installed it. You can also select a different device type, like EnOcean.
The blue blocks can be used in the DO statement.

I’ve created a basic alarm system.

Goal: inform me if thieves enter my house while I am away + turn light on to scare them away.

When the 4digit panel is armed with a code and motion is detected, send me a Pushover notification on my Phone and turn the lights on.

If motion is detected and the alarm is on (4digit status = armed),
then send me a notification on my phone using the Pushover app and turn the light on to scare away the thieves.
Inside the Pushover notification I put the Priority to Emergency, so that the message is delivered asap.

Note: you could also start a siren or let the camera record the thieve. Sending an SMS is also possible using the Google SMS service.
The Fibaro smoke sensor can also be used a a siren and can be found in our Store.

Below you can find a basic example of my rule for automatically controlling the lights.
I have a Fibaro motion sensor and a Fibaro Wall Plug (both can be found in our store).

Main idea: if it’s dark outside and motion is detected, I want to turn on my lights for 20 minutes.
If during these 20 minutes new motion is detected, reset the timer and keep it active for another 20 minutes.

Additional rule: if it’s after midnight, I do not want to turn the light on for 20 minutes, but only for 3 minutes.



First I’m checking whether it’s dark already, the lights do not need to go on during the day.
For this I use the yahoo weather device, to get the sunset and sunrise.
During sunset and sunrise (dark), I verify if motion is detected in the last purple block.
If it’s both dark and motion is detected, I do following:
1) I turn the light on
2) I put a timer to turn the light off again in a few minutes (if no new motion is detected).

In 2 I added an additional if to make the time shorter if it’s after midnight.
Chances are slim that I will still be working so late, probably I just need to take something out of that room.
So the lights go out after 3 minutes already instead of 20 minutes.

Note: I have one more condition in the first IF, I also verify whether the light is not already turned on.
This way less checks need to be done, because it will not execute all the additional checks if the light is already on.
It’s not required, just me trying to save a millisecond of processing time

By default, all scenes are checked every minute and executed if they match the conditions.
In some cases, you may however only want to execute a complex scene manually (eg: by pressing the Run button in the dashboard).

You can do this by dragging the “Run Scene Manually” block into your Blocky middle frame.
It doesn’t matter where you drag it, it doesn’t need to click into any other block.
As soon as it’s in the scene, the scene will no longer be verified/executed every minute

5) Store

PulseStation domotica software is free, no monthly costs!

Prices on our website include VAT! No surprises when you are at the checkout!

Lowest Price Guarantee: If you currently find the same * product for sale at a lower price from another distributor in Europe, we will offer you the product at the same price.

The supplier must have the product in stock without any additional conditions (eg minimum purchase volume, mandatory membership, price increase for credit card payments, etc. .. ). Furthermore, we will not compete with obscure Asian websites where the customer is not sure whether the goods will be actually delivered and where the transport and customs clearance fees, import duties and VAT are included or not. Often, the customer only discovers these practices upon delievery.

* The same product : ie complete same version, same plug, same technical specifications, manuals, etc … !
Lowest Price Guarantee can not be combined with any other discount or gift certificate.
The lowest price guarantee does not apply to temporary promotions or end of range offers!

If shipping costs are charged; these will also be included in the total price calculation.

Contact us and answer following questions:

Link to website where product is offered at lower price
Price on this website (incl. shippping costs)
Price which you are willing to pay

Pulse-Station has the right to change the price of items in the store at any time.
If it turns out we cannot deliver your order because we would lose money on it, we have the right to cancel your order.

New items purchased from that are “dead on arrival”, arrived in damaged condition, or is still in an unopened box can be returned for a full refund within 30 days of purchase.
Refunds will be issued in the same method of payment as the original payment.

Please contact us first before shipping items back. This will allow us to give you the correct address and maybe even solve your issue remotely. will test “dead on arrival” returns and impose a customer fee equal to 15 percent of the product sales price if the customer misrepresents the condition of the product.
Any returned item that is damaged through customer misuse, is missing parts, or is in unsellable condition due to customer tampering may result in the customer being charged a higher restocking fee based on the condition of the product.

If the order is valued at €100 or more, insure the shipment for the value of the merchandise and ship your return with a signature shipping service.
If a package doesn’t arrive and you don’t use a trackable method to return or if you refuse the shipment as a method of return, we may not be able to cover you.

When a promotional item included in the original transaction is not returned, the value of the promotional item will be deducted from the refund amount.

Please note delivery fees are not refundable once the order has shipped or if the merchandise is returned to the store, discount coupons may become invalid and decrease the refund amount.

We ship all items using, using tracking.

You can follow the shipment of your order on their website with the tracking code we provided you a few days after payment has been received for your order.

6) Further hacks

You can also trigger devices and scenes by just calling a url.
Eg: use NFC retag on Android to trigger a Tasker task that calls a url to toggle a light on and off.

For Z-wave devices: http://your.local.ip.x:4020/message=1|HUB|zwave|UPDATEPROPERTY|zwave-4|37-user-bool-1-0|true
For Scenes: http://your.local.ip.x:4020/message=1|HUB|scene|RUN|Toggle-lights.xml
But you can control anything:
just run a command manually from within the front-end dashboard, look inside the Core service log file and there you can find what to put behind the message= field.

In order to control devices remotely, not from within you local network, you will need to provide the username and password.
Note: replace username and password with the actual user login and password.
We recommend creating a new user that has limited access rights if you use external calls with the password in the url.

You can use a floor plan of your house and drag&drop elements on top of it. This allows you to create a beautiful home design. To make this floor plan, we ourselves use following software:

If you after installing it google for sweethome3d furniture library, you get a wide choice of ready made additional items that you could add inside your house.

Once you have your floor plan ready, you can install the “floor plan “add-on from the Add-ons, go into “Dashboard” and start adding your floor.

Don’t forget to assign locations to your floor and press save after every step.


Inside the Fibaro RGBW device, you have a parameter called “Starting predefined program”.

It allows you to trigger certain scenario’s, by changing the value:
6 = Fireplace
7 = Storm
8 = Rainbow
9 = Aurora
10 = LPD => Police lights, to signal an alarm state

You can start them by setting a value from  6 to 10 and
stop them with setting it back to 1 or change the color index.


By default with Imperihome, the screen will stay on during the night.
This is not ideal for your screen.

We have found a solution to this.
The camera will keep on working even when the device is in standby (screen off).

Using built-in camera

  1. Download Motion Detector.
  2. Download Tasker.
  3. Download AutoStart
  4. Launch Tasker app and tap the three dots in the top right corner.
  5. Tap PreferencesUI (at the top), uncheck Beginner Mode.
  6. Exit out of that, and tap the Vars tab at the top.
  7. Tap + and name it %DISPLAYSTATE.
  8. Go to the Profiles tab, and tap + → select EventDisplayDisplay On.
  9. Tap Back key/button. Tap New Task, name it Display On.
  10. Tap +VariablesVariable Set. Tap the pencil icon next to Name.
  11. Tap %DISPLAYSTATE and where it says To, make it 1.
  12. Repeat “step 8 to 11”, but change everything to Display Off and change step 11 from 1 to 0.
  13. Go to the Scenes tab at the top.
  14. Tap + and name it something.
  15. Hold down and drag on the dashed line and make it the size of your screen.
  16. Tap the gear icon in the upper left corner to go back.
  17. Tap on Profiles, and create a new one by using the + button.
  18. Tap on EventSystemIntent Received.
  19. You can ignore everything except where it says Action. Here you need to enter org.motion.detector.ACTION_GLOBAL_BROADCAST (caps are important).
  20. Tap the gear icon (back) in the top left corner. It will pop up with a menu.
  21. Tap New task and name it something.
  22. Within that task, tap the + again and hit SceneShow Scene.
  23. Where it says Name, tap the magnifying glass icon (not the pencil) and tap on your scenes name.
  24. Now where it says Display As,  set it to: “Activity, Full Display, No Bar”.
  25. Scroll to the bottom and it will say if. Tap the pencil icon and select %DISPLAYSTATE.
  26. Tap the button in the middle and change it to Equals. On the right box, type 0.
  27. Tap + and do TaskWait.
  28. Change MS to somewhere between 25 to 100.
  29. Tap +SceneDestroy Scene and hit the magnifying glass icon on Name. Select your scene.
  30. Now go back to the main screen of Tasker app.
  31. Go into the Motion Detector app, and make sure it is turned off. If not, tap the blue circle.
  32. Go to the bottom and where it says Send, make sure it is On.
  33. Go back to the top and tap the blue circle again to make it turn on.
  34. Open Auto Start and make sure it says On.
  35. Tap AddShow all applicationsMotion Detector.
  36. Check “go to home screen after auto start” and change “start delay” to 5.

Also, do note that in Motion Detector there are settings you can change when Motion Detector is off.
One of the most important is Camera. If you are experiencing problems, please make sure that Camera is set to Front.

If you now start imperihome, while the motion detector is ‘On’, it will wake up the device to imperihome when motion is detected.
Note: by default it’s not great in the dark.
We recommend following changes:
Noise filter: off,
Try to increase sensor resolution and camera resolution,
If supported increase exposure compensation

On Synology you cannot access the “real” ping command.
That’s why we need to bypass it and add a port.

This also means you have to find an open port on your device.

For Android you can use following app to find “LISTEN” ports, ports on which your device is listening:
The second tab tells you all the open ports.

I found out you can use for instance the skype port, if you have it installed.
The Facebook Messenger port however does not work.

In the end I installed a webserver on my phone that is always listening on port 12345.
NOTE: inside the settings you have to enable the authentication and set up a strong password.
Otherwise users can access the content of your device.
I also recommend to make it start automatically with your device.

So now you can always see whether your device is enabled, or that you are at home if you set it up on your phone.
To add your device, open the service ‘Virtual devices’ (you need to install it first from the Add-ons) and add a ‘ping’ device.
Inside the properties of this device, fill in the IP and port of your device.
Now PulseStation will check every minute whether the device can be reached.
You can use this for instance in your blocky rules.

If you find a good port/webserver for iPhone, let us know in the forum and we will add it here.
There are for sure solutions for iPhone as well.

Note: inside your router you can assign a fixed IP to your device. That way the IP will never change.

In certain cases you do not want to enter twice the same scene entirely.
Eg: when you disable the alarm, send a fake device motion event, to turn on the lights.

Step 1:
Trigger a device event

Step 2: look inside the core log file, so see this message.
It looks something like:
scene: Message received – 1|zwave|scene|CHECKSCENESEVENT|zwave-15_ON|1458344682927|494abcd26057a6cf69bb1321913917f8
You take everything in this message, before the starting of the range of numbers:

Step 3: Add a php block inside your scene, that calls the url to trigger this device event:

It’s time to take the next step in your home automation:

  • Start coffee machine 5 minutes before alarm goes off in the morning
  • Slowly enable lights in the bedroom and hallway if it’s still dark outside
  • Start heating the house 20 minutes before the alarm goes off
  • Flash a light if I need to go to bed, so you sleep enough

All this is possible thanks to 2 great apps:

  1. Set your alarm ready inside Sleep as Android
  2. Open Tasker app
  3. Under profiles, tap on the + sign bottom right
  4. Select “Event” / “Plugin” / “Sleep” and press the edit icon next to “Configuration”
  5. Now you get a whole list of things you could use as a trigger for actions or scenes inside Pulse-Station.
  6. In this example I will turn off my lights when I start the sleep tracking, so I select “Sleep analysis started”
  7. I tap the top left back < icon
  8. Next up I want to create a new task linked to this event, so that I can actually turn of the light. I select “New Task” and give it a name.
  9. Then I am inside the task edit screen, here I press the bottom + icon to add a new action to it.
  10. I select “Net” / “HTTP Get”
  11. Now we need to enter the command we want to send to Pulse-Station to execute.
  12. This is documented here. But I will just run a scene:
  13. Under Server:Port I enter the ip running Pulse-Station, followed by the port. Eg:
  14. Under Path I enter the command to be executed, eg: message=1%7CHUB%7Cscene%7CRUN%7CLights.xml (capital sensitive)
    (The %7C is just a | character that is URL encoded. The actual message I am sending is: message=1|HUB|scene|RUN|Lights.xml )
    Note: you have to create the Blocky rule to turn off  the lights as well. In this case I have to save it as “Lights”

With this combination the sky is the limit. 🙂
Please do not hesitate to ask for help in case you are stuck on our forum.

In following file you can search for the name or brand of your Z-wave device to verify whether it’s supported by the official OpenZwave library:

If it’s listed, it should be supported and you should be able to control it from within PulseStation.

7) Solving problems

Certain battery powered devices cannot immediately be recognized properly.
Symptoms: properties are missing, device is recognized as wrong type, parameters are empty, temperature missing, …

Sample devices having these kind of issues:
Fibaro motion, temperature and light sensor FGMS-001
Fibaro smoke sensor

How to resolve this?

  1. Try pressing the button three times very quickly after eachother, wait 2 minutes and do this again. Do this +/- 5 times.
    This will wake up the device and hopefully make it sync.
  2. Try in administration panel under services / zwave / controller commands to “Clear config files”, then do step 1 after 5 minutes.
  3. Try waiting up to 24 hours for the device to synch itself
  4. If it then still doesn’t work, exclude the device, reset it (see manual of your battery powered device) and then include it again. Then repeat from step 1.

For us this always worked…
Note: if it’s a brand new device that has been launched only recently, maybe it’s not supported yet. Just ask in the forum.

If one of your scenes, when you open it, is not displayed properly (white, or all elements are floating on top of each other),
then this is usually caused by a device being removed.
As such the block is missing and we cannot display properly your blocks.

If you do not want to redo your entire scene, you can manually repair the xml file.
All your scenes are saved in:

If for instance you removed zwave device numer 5 (zwave-5), then you need to replace it with either a similar device (eg: zwave-4) or remove the xml blocks concerning this device.

After saving the fixed xml, it will be displayed properly as well.


If inside the zwave service no devices are listed after including your first device,
then probably saving these devices in the config files is not working due to problems in the access rights.

Execute following command via ssh on Synology:
sudo chmod 777 -R /volume1/web/PulseStation/data/*

Execute following command via ssh on Raspberry pi:
sudo chmod 777 -R /usr/share/PulseStation/data/*

Then go to Services / Zwave / Controller commands
And click on the button “Clear config files”.
Do not click on the button to reset your usb key (do this only if all else fails).

Now your zwave service restarts and you should start seeing the devices in about 5 to 25 minutes (depending on the amount of devices).
If it doesn’t work, just repeat the steps. This has so far solved the issue for all users with this issue.

Inside Synology package center, we cannot always retreive the status of our own service.
This is due to a limitation inside Synology.

This means PulseStation could actually be running, but you just don’t know it.

Try visiting the PulseStation url
And then check after logging in whether in the left menu under services the “Core” service is running.

If it is, everything is fine and PulseStation is running for you in the background.
You can ignore the status in the Package Center.

If that doesn’t solve it, please check the other FAQ messages in order to debug the cause.

If you are running PulseStation on a Raspberry Pi and  notice in the log files that the time is not correct,
it is very likely that you need to set the correct timezone for PHP.

You can do this by executing following commands:

sudo nano /etc/php5/apache2/php.ini

Then add following line (doesn’t matter where, just needs to be on a new line):
date.timezone = "Europe/Brussels"

Replace Europe and Brussels with the region and country that is in your timezone.
You can find the full list here:

Then press the keyboard combination: ctrl + x
Then enter “y” and
press enter button.

Now your changes will have been saved and PulseStation logs should start using the correct timezone.

Inside the core service there is an option to stop everything.
It’s located in the start/stop dropdown.

In case this doesn’t work and you see some services are still running,
you can always use following command to stop all PulseStation services:

ps -ef | grep ‘PulseStation’ | grep -v grep | awk ‘{print $2}’ | xargs sudo kill -9
Raspberry pi:
kill $(ps | grep ‘PulseStation’ | awk ‘{print $1}’)

You will have to execute it using an ssh session on your unix machine (raspberry pi, synology, ubuntu, …).


This is usually a write issue on a certain file.

This could happen for instance for the service ifttt, yahoo weather, virtual device, …

On Synology, execute following ssh command:
sudo chmod 777 -R /volume1/web/PulseStation/data/*

On Raspberry Pi execute following ssh command:
sudo chmod 777 -R /usr/share/PulseStation/data/*

If it’s the zwave service that is not storing parameters, check the zwave logs instead. This is written to the device, not to PulseStation itself.

Sometimes when you reboot your hardware or just start it,
your z-wave USB key is not ready yet to accept your commands when PulseStation tries to connect to it.

This results in PulseStation z-wave service thinking it’s running, but it’s not actually connected to your z-wave usb key.
Inside the Z-wave service log files, you will see messages like:

2016-04-26 08:44:35.644 Warning, WARNING: Out of frame flow! (0x76).Sending NAK.
2016-04-26 08:44:35.644 Warning, WARNING: Out of frame flow! (0x00). Sending NAK.

In this case the solution is usually very simple: just restart the zwave service and everything should start working again.

Sorry, this entry is only available in Dutch. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Certain roller shutters / blind devices (eg Fibaro) never go to 100.
Their scale is from 0 – 99.
So if you use this in blocky rules, use 99 instead of 100.

If even 99 does not work, check the associations tab of your device.
It should be associated to your zwave-1.

When something is not working as it should inside PulseStation, you can start here.

When is this message useful
– core does not start,
– scene does not run,
– service does not start

This message is not useful when
– You can’t control your z-wave devices => you need to check the logs inside the z-wave service.
If it states something as “Error code 13”, then PulseStation cannot access your usb key.
You need to do a chmod 777 on it.

The explanation

We want to debug PulseStation.
1) Open a ssh terminal
2) You can start it by going into the directory where PulseStation is installed, eg: cd /volume1/web/PulseStation
3) Then start the core service: ./services/core/core
4) The core will start and it will normally start all other services.
Now you can see all details from PulseStation and all error messages will appear here.
Don’t worry if you don’t understand them.
There will be a lot of lines here.
5) If it’s action related, eg running a scene, now is the time to trigger the scene to run.
You will see in the debug terminal what is happening behind the scenes.

Last advice
– Do not put all services on auto-restart: yes.
It will be much easier to find issues when only the service is running that is having an issue (eg: core + scene service)

8) Hardware installation

Installing a Fibaro Relay Switch FGS-212 for use with PulseStation and ImperiHome


Many thanks to Coldbringer for this movie!

Load More

Do you have an idea or a bug? Report it here!