Difference between revisions of "EIB/KNX with eibd"
(16 intermediate revisions by 3 users not shown) | |||
Line 5: | Line 5: | ||
[[Category: EIB/KNX]] | [[Category: EIB/KNX]] | ||
[[category: Automation]] | [[category: Automation]] | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Hardware Compatibility== | ==Hardware Compatibility== | ||
The eibd project has a wiki with lots of [http://sourceforge.net/apps/trac/bcusdk/wiki/SupportedHardware hardware compatibility] information. | The eibd project has a wiki with lots of [http://sourceforge.net/apps/trac/bcusdk/wiki/SupportedHardware hardware compatibility] information. | ||
− | ==installing eibd== | + | ==installing eibd, only if LinuxMCE < 10.04== |
+ | |||
+ | *THIS STEP CAN BE SKIPPED STARTING FROM 10.04 | ||
+ | |||
look here: | look here: | ||
http://www.auto.tuwien.ac.at/~mkoegler/index.php/eibdeb | http://www.auto.tuwien.ac.at/~mkoegler/index.php/eibdeb | ||
i link the page in case they want to modify it.. thus this page doesn't have to be modified too | i link the page in case they want to modify it.. thus this page doesn't have to be modified too | ||
+ | |||
+ | * Add the sources.list entry highlighted above | ||
+ | * apt-get install bcusdk | ||
+ | * Executing eibd --help will give a list of commandline options | ||
+ | * To have eibd talk to a KNX/IP interface two things need to happen | ||
+ | ** Add a multicast route: route add 224.0.23.12 dev eth0 (eth0 is the network the KNX/IP interface is connected to | ||
+ | ** Start eibd with /usr/bin/eibd -D -T -R -S -i -u --daemon=/var/log/eibd.log ipt:10.1.2.179 (10.1.2.179 is the IP address of the KNX/IP interface | ||
+ | === Problems with some KNX/IP gates === | ||
+ | If you have a problem with multiple commands not getting through, make sure you run at least eibd 0.0.5 AND add --no-tunnel-client-queuing to the startup script for eibd. | ||
+ | |||
+ | === Use ETS to talk to the KNX in parallel with LinuxMCE === | ||
+ | The good thing about the eibd daemon is its routing capabilities. This allows multiple clients to talk to the eibd, and the eibd talks to the KNX interface. In ETS you have to configure a communication interface of type KNXnet/IP, name it however you like, and put the IP address of the machine eibd is running on. | ||
==installation of EIB== | ==installation of EIB== | ||
− | ===LinuxMCE | + | ===LinuxMCE 1004 alpha=== |
+ | EIB via eibd has been included in 10.04 as own device. Just install device template 2195 on your core and it should work. | ||
+ | |||
+ | ===LinuxMCE 0810=== | ||
No device data needed but you need to make sure that eibd is running. The driver is in the src/EIB-eibd directory of the 0810 branch. | No device data needed but you need to make sure that eibd is running. The driver is in the src/EIB-eibd directory of the 0810 branch. | ||
Line 28: | Line 40: | ||
(you need to create an account, until someone releases it )<br /> | (you need to create an account, until someone releases it )<br /> | ||
then untar it and copy it instead of the former EIB sources.(rename them to be able to get them later, just in case). | then untar it and copy it instead of the former EIB sources.(rename them to be able to get them later, just in case). | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
now you must compile and run sql2cpp: place yourself in the source folder, run | now you must compile and run sql2cpp: place yourself in the source folder, run | ||
Line 55: | Line 49: | ||
dont forget to modify the existing EIB so that it has good launching parameters! | dont forget to modify the existing EIB so that it has good launching parameters! | ||
+ | == Use EIBd == | ||
+ | === Starting demon if LinuxMCE < 10.04 === | ||
+ | * Add the EIB device to your device tree | ||
+ | * Don't use the EIB Submenu to add devices, but use the regular lighting etc devices. | ||
+ | * Start the eibd - for example if you use a KNX/IP gate the following line in /etc/rc.local is helpful | ||
+ | /usr/bin/eibd -D -T -R -S -i -u --eibaddr=0.0.1 --daemon=/var/log/eibd.log ipt:10.1.2.179 | ||
+ | * If you have problems with timeouts or race conditions using an IP gate, try adding the following to the eibd startup | ||
+ | --no-tunnel-client-queuing | ||
+ | |||
+ | === Adding a light switch === | ||
+ | For a regular on/off light this is device template 37 | ||
+ | * In ETS you need to create two new group addresses. | ||
+ | ** One group address to on/off the device (let's assume 0/0/1) | ||
+ | ** One group address to read the status of the device (let's assume 0/0/2) | ||
+ | * In the newly added device of device template 37, the channel has to be on-off-GA|status-GA, i.e. in our example it would be '''0/0/1|0/0/2'''. | ||
+ | === Adding drape control === | ||
+ | For a drapes switch we use the device template 68 (the drapes switch is also under lights) | ||
+ | * In ETS you need to create four new group addresses. | ||
+ | ** One group address to open the drapes a specific percentage (let's assume 0/0/3) | ||
+ | ** One group address to read the open percentage (let's assume 0/0/4) | ||
+ | ** One group address to open/close the drapes (let's assume 0/0/5) | ||
+ | ** One group address to stop the drapes movements (let's assume 0/0/6) | ||
+ | * In the newly added device of device template 68, the channel has to be open%-GA|open-amount-status-GA|open-close-GA|stop-movement-GA, i.e. in our example it would be '''0/0/3|0/0/4|0/0/5|0/0/6''' | ||
+ | === Adding a motion sensor (or any type of sensor) === | ||
+ | All sensors basically work the same way. But specifying the right sensor type allows some LinuxMCE magic to happen. | ||
+ | * In ETS create a new group that gets the information from the sensor | ||
+ | * Create a new device using any of the device templates in the sensor group | ||
+ | * Put GA address into the channel. The format is again '''x/x/x''' | ||
+ | * Done | ||
+ | |||
== Send time/date to KNX == | == Send time/date to KNX == | ||
− | http://www.hoerndlein.de/cms/ | + | == LinuxMCE < 10.04 == |
+ | http://www.hoerndlein.de/cms/index.php/eib | ||
+ | |||
+ | == LinuxMCE >= 10.04 == | ||
+ | Simply go to your KNX / eibd device in webadmin, enable "Send Date / Time to KNX bus" and put GA's into date and /or time fields. | ||
+ | |||
== Links == | == Links == | ||
https://www.auto.tuwien.ac.at/%7Emkoegler/index.php/eibd | https://www.auto.tuwien.ac.at/%7Emkoegler/index.php/eibd |
Latest revision as of 01:18, 28 September 2015
Version | Status | Date Updated | Updated By |
---|---|---|---|
710 | Unknown | N/A | N/A |
810 | Unknown | N/A | N/A |
1004 | Unknown | N/A | N/A |
1204 | Unknown | N/A | N/A |
1404 | Unknown | N/A | N/A |
Usage Information |
Hardware Compatibility
The eibd project has a wiki with lots of hardware compatibility information.
installing eibd, only if LinuxMCE < 10.04
- THIS STEP CAN BE SKIPPED STARTING FROM 10.04
look here:
http://www.auto.tuwien.ac.at/~mkoegler/index.php/eibdeb
i link the page in case they want to modify it.. thus this page doesn't have to be modified too
- Add the sources.list entry highlighted above
- apt-get install bcusdk
- Executing eibd --help will give a list of commandline options
- To have eibd talk to a KNX/IP interface two things need to happen
- Add a multicast route: route add 224.0.23.12 dev eth0 (eth0 is the network the KNX/IP interface is connected to
- Start eibd with /usr/bin/eibd -D -T -R -S -i -u --daemon=/var/log/eibd.log ipt:10.1.2.179 (10.1.2.179 is the IP address of the KNX/IP interface
Problems with some KNX/IP gates
If you have a problem with multiple commands not getting through, make sure you run at least eibd 0.0.5 AND add --no-tunnel-client-queuing to the startup script for eibd.
Use ETS to talk to the KNX in parallel with LinuxMCE
The good thing about the eibd daemon is its routing capabilities. This allows multiple clients to talk to the eibd, and the eibd talks to the KNX interface. In ETS you have to configure a communication interface of type KNXnet/IP, name it however you like, and put the IP address of the machine eibd is running on.
installation of EIB
LinuxMCE 1004 alpha
EIB via eibd has been included in 10.04 as own device. Just install device template 2195 on your core and it should work.
LinuxMCE 0810
No device data needed but you need to make sure that eibd is running. The driver is in the src/EIB-eibd directory of the 0810 branch.
linuxmce 710
you first need to get a partially compiled version of linuxmce 710, and its sources. you may have problems doing so, but if the libs are compiled there is no actual matter. see Compiling from 710 sources to get one.
when it's done, grab the file at
http://mantis.linuxmce.org/view.php?id=4299
(you need to create an account, until someone releases it )
then untar it and copy it instead of the former EIB sources.(rename them to be able to get them later, just in case).
now you must compile and run sql2cpp: place yourself in the source folder, run
cd sql2cpp; make; ./sql2cpp
and you template modifications are recorded you just have to place yourself in the EIB source folder, type
make
to get the EIB programm. rename the former one in /usr/pluto/bin (such as old_EIB) and move the one you compiled instead. restart your lmce router
dont forget to modify the existing EIB so that it has good launching parameters!
Use EIBd
Starting demon if LinuxMCE < 10.04
- Add the EIB device to your device tree
- Don't use the EIB Submenu to add devices, but use the regular lighting etc devices.
- Start the eibd - for example if you use a KNX/IP gate the following line in /etc/rc.local is helpful
/usr/bin/eibd -D -T -R -S -i -u --eibaddr=0.0.1 --daemon=/var/log/eibd.log ipt:10.1.2.179
- If you have problems with timeouts or race conditions using an IP gate, try adding the following to the eibd startup
--no-tunnel-client-queuing
Adding a light switch
For a regular on/off light this is device template 37
- In ETS you need to create two new group addresses.
- One group address to on/off the device (let's assume 0/0/1)
- One group address to read the status of the device (let's assume 0/0/2)
- In the newly added device of device template 37, the channel has to be on-off-GA|status-GA, i.e. in our example it would be 0/0/1|0/0/2.
Adding drape control
For a drapes switch we use the device template 68 (the drapes switch is also under lights)
- In ETS you need to create four new group addresses.
- One group address to open the drapes a specific percentage (let's assume 0/0/3)
- One group address to read the open percentage (let's assume 0/0/4)
- One group address to open/close the drapes (let's assume 0/0/5)
- One group address to stop the drapes movements (let's assume 0/0/6)
- In the newly added device of device template 68, the channel has to be open%-GA|open-amount-status-GA|open-close-GA|stop-movement-GA, i.e. in our example it would be 0/0/3|0/0/4|0/0/5|0/0/6
Adding a motion sensor (or any type of sensor)
All sensors basically work the same way. But specifying the right sensor type allows some LinuxMCE magic to happen.
- In ETS create a new group that gets the information from the sensor
- Create a new device using any of the device templates in the sensor group
- Put GA address into the channel. The format is again x/x/x
- Done
Send time/date to KNX
LinuxMCE < 10.04
http://www.hoerndlein.de/cms/index.php/eib
LinuxMCE >= 10.04
Simply go to your KNX / eibd device in webadmin, enable "Send Date / Time to KNX bus" and put GA's into date and /or time fields.