News:

Rule #1 - Be Patient - Rule #2 - Don't ask when, if you don't contribute - Rule #3 - You have coding skills - LinuxMCE's small brother is available: http://www.agocontrol.com

Main Menu

EIB/KNX configuration

Started by girlaldo, December 24, 2016, 09:12:03 AM

Previous topic - Next topic

Marie.O

not the device template, but the bcusdk version, ie.

dpkg -l | grep eib
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

girlaldo

ldo@dcerouter:~$ dpkg -l | grep eib
ii  eibd-client-sources                         0.0.5-1~lmce0~trusty1                                            all          Sources of the eibd client programs
ii  eibd-clients                                0.0.5-1~lmce0~trusty1                                            i386         eibd clients
ii  eibd-server                                 0.0.5-1~lmce0~trusty1                                            i386         eibd server
ii  libeibclient-dev                            0.0.5-1~lmce0~trusty1                                            i386         eibd client library
ii  libeibclient0                               0.0.5-1~lmce0~trusty1                                            i386         eibd client library
ii  lmce-eib-eibd                               2.0.0.47.15121131752                                             i386         <insert up to 60 chars description>

Marie.O

Hmm, that looks good, and identical to my packages.

Did you follow the wiki, specifically these two paragraphs:

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

I did add the group address later as well, but first make sure the above is working
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

girlaldo

I always get Segmentation fault

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
10.0.2.0        *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1000   0        0 eth1
192.168.80.0    *               255.255.255.0   U     0      0        0 eth1
224.0.23.12     *               255.255.255.255 UH    0      0        0 eth0
aldo@dcerouter:~$ /usr/bin/eibd -D -T -R -S -i -u --daemon=/var/log/eibd.log ipt:192.168.80.137
Segmentation fault
aldo@dcerouter:~$

Marie.O

The route should be to the network where you KNX/IP device is, ie. eth1 in your case.
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

girlaldo

eth0 is connected to the external network where 224.0.23.12 is, while eth1 is connected to my internal network where the subnet 192.168.80.0 is.
I can't ping 224.0.23.12 but I think nobody can while I can ping google dns
aldo@dcerouter:~$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=63 time=115 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=63 time=56.9 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=63 time=55.0 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=63 time=53.3 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=63 time=54.3 ms

and I can ping my knx/ip device:
aldo@dcerouter:~$ ping 192.168.80.137
PING 192.168.80.137 (192.168.80.137) 56(84) bytes of data.
64 bytes from 192.168.80.137: icmp_seq=1 ttl=128 time=2.84 ms
64 bytes from 192.168.80.137: icmp_seq=2 ttl=128 time=1.75 ms
64 bytes from 192.168.80.137: icmp_seq=3 ttl=128 time=1.79 ms
64 bytes from 192.168.80.137: icmp_seq=4 ttl=128 time=1.70 ms
64 bytes from 192.168.80.137: icmp_seq=5 ttl=128 time=1.74 ms

here are the interfaces
aldo@dcerouter:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:9c:bb:97 
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:963527 errors:0 dropped:0 overruns:0 frame:0
          TX packets:530814 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:744585766 (744.5 MB)  TX bytes:80129911 (80.1 MB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:78:71:f1 
          inet addr:192.168.80.1  Bcast:192.168.80.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:522962 errors:0 dropped:0 overruns:0 frame:0
          TX packets:941368 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:62990564 (62.9 MB)  TX bytes:1320045366 (1.3 GB

Marie.O

The route is a broadcast route that is needed for KNX/IP to work.
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

girlaldo

I can't understand why 224.0.23.12 should be searched inside my network.
Anyway I changed the routing table and I restarted eibd but the result was the same:
Segmentation fault

aldo@dcerouter:~$ sudo route delete 224.0.23.12 dev eth0
aldo@dcerouter:~$ sudo route add 224.0.23.12 dev eth1
aldo@dcerouter:~$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
10.0.2.0        *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1000   0        0 eth1
192.168.80.0    *               255.255.255.0   U     0      0        0 eth1
224.0.23.12     *               255.255.255.255 UH    0      0        0 eth1
aldo@dcerouter:~$ /usr/bin/eibd --no-tunnel-client-queuing -D -T -R -S -i -u --eibaddr=1.1.255 --daemon=/var/log/eibd.log ipt:192.168.80.137
Segmentation fault

Marie.O

Does the logfile  /var/log/eibd.log  show anything of interest?
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

Marie.O

Oh, one more thing: execute eibd as root, ie. sudo eibd...
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

girlaldo

If I run it as root it doesn't reply nothing but the process does not run

aldo@dcerouter:~$ sudo /usr/bin/eibd --no-tunnel-client-queuing -D -T -R -S -i -u --eibaddr=1.1.255 --daemon=/var/log/eibd.log ipt:192.168.80.137
[sudo] password for aldo:
aldo@dcerouter:~$ ps -aux | grep eib
aldo     10347  0.0  0.0   4696  2040 pts/21   S+   17:52   0:00 grep --color=auto eib
aldo@dcerouter:~$ cat /var/log/eibd.log
cat: /var/log/eibd.log: No such file or directory
aldo@dcerouter:~$

anyway it is executable by anybody

aldo@dcerouter:~$ ls -al /usr/bin/eib*
-rwxr-xr-x 1 root root 397148 dic 11  2015 /usr/bin/eibd
-rwxr-xr-x 1 root root  38416 dic 11  2015 /usr/bin/eibnetdescribe
-rwxr-xr-x 1 root root  38420 dic 11  2015 /usr/bin/eibnetsearch


Marie.O

I am really a bit at a loss here. Could you, just for giggles, please change your GA to 0.0.1, please, and see if that does make a difference. And please continue to run eibd via sudo, or as root.
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

girlaldo

#27
I did the change of eibaddr to 0.0.1 but nothing changed as a result.
The eib address from ETS4 of my IP interface is 1.1.255 (if as eibaddr is meant the knx address of the IPS/S2.1 IP Interface,MDRC device that let me to connect to knx network with ETS4).
You have been so kind and you spent a lot of time trying helping me.
I'll buy you a coffee anyway and as last thing I 'd like you to do for me is to put a post reply when a new " lmce 14.04 i386 iso " file completed with eibd package will be ready and working.
Thank you so much

Marie.O

It is not about the coffee.

It is about getting something working that usually works very straight forward. Let's get the stuff one by one:

* eibd must be run as root ie. sudo
* The --eib-address is not the address of the target KNX/IP gate, but our own
* run without --daemon= so you might be able to see additional notes
* remove one parameter after the other, until you get it to at least run

If outside ssh access is possible, let me know, and I'll get you a public key to put on your system, and maybe come into Freenode #linuxmce chat - I'm connected 24/7 but will be at the keyboard around 10 am CET
If I helped you, feel free to buy me a coffee: [url="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES"]https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2VKASZLTJH7ES[/url]

girlaldo

#29
GOOD NEWS:
I did the installation again starting from LMCE-1404-20161119175532-i386.iso and I realized that probably I didn't fill in the right place the 2195 core profile. In fact it isn't immediately so clear where to put it (at least for a newbie).
So I finally I managed to get the eibd running.
But new problems are coming. here they are
What are they?
========== NEW LOG SECTION ==========
1   12/30/16 14:41:48   40 (spawning-device)   Starting... 24
1   12/30/16 14:41:48   40 (spawning-device)   Found /usr/pluto/bin/EIB
10   12/30/16 14:41:48.366      Device: 40 starting.  Connecting to: localhost <0xb7265700>
10   12/30/16 14:41:48.366      Getting Config and Connect <0xb7265700>
10   12/30/16 14:41:48.368      Setting timeout for socket 4 to 20 <0xb7265700>
10   12/30/16 14:41:48.444      EIB GetConfig done <0xb7265700>
10   12/30/16 14:41:48.444      EIB populating <0xb7265700>
10   12/30/16 14:41:48.444        EIB populating done <0xb7265700>
10   12/30/16 14:41:48.444      EIB threadspawning done <0xb7265700>
10   12/30/16 14:41:48.445        Config and Connect OK <0xb7265700>
10   12/30/16 14:41:48.445      Requesthandler 0x9f797c0 (device: 40) runThread now running <0xb6261b40>
21   12/30/16 14:41:48.445      lock(0x9f7990c) (>94) MessageQueue: Command_Impl.cpp:852  <0xb6a62b40>
21   12/30/16 14:41:48.445      acquired(0x9f7990c) #0 (>94) MessageQueue Command_Impl.cpp:852  <0xb6a62b40>
21   12/30/16 14:41:48.445      start cond wait Command_Impl.cpp:852 (0x9f7990c)  <0xb6a62b40>
10   12/30/16 14:41:48.445      starting listening thread <0xb7263b40>
10   12/30/16 14:41:48.445      regenerating the connection <0xb7263b40>
05   12/30/16 14:41:53.446        error while opening eibd port, error count: <0xb7263b40>
05   12/30/16 14:41:58.446        error while opening eibd port, error count: <0xb7263b40>
05   12/30/16 14:42:03.446        error while opening eibd port, error count: <0xb7263b40>
....

....

10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40>
10   12/30/16 15:08:55.741      regenerating the connection <0xb7291b40