Ethernet over power: Homeplug

A few weeks ago my father came with a box of hardware that he did no longer use. One of the hardware things was a D-LINE CPL-85 of Dinh-Telecom. It was just a case of plugging in both devices in the power outlet and the connection between my server and the network was there.
This is of course nice, but I wanted to know a little more about the devices. It is coming with windows software that offers it the ability to set things like encryption. As I personally don’t use windows I wondered whether there was Linux software that would do the same. On freshmeat I was unable to find any and a apt-cache search did not give any relevant hits either. The problem was that I did not know what to search for! So I decided to do some more testing. I installed the windows software on my girlfriends laptop, connected it to my wired network and the software recognized one of the CPL-85’s right away. As it sees it via my Linksys switch, it must be “seeing” it via some kind of IP connection.
I decided to connect my laptop and the windows laptop to a hub and that one to the switch and see wether I would see traffic with wireshark. It showed that the protocol was Homeplug. That made searching for other software a bit easier. There is both plc (graphical) and plconfig (cli interface). I tried plconfig first. Building it was the easy part. Just a simple make was enough. Starting it worked (as root) and gave the following result:$ sudo ./plconfig -r eth0It might be useful information to a lot of people, but not really to me. I decided to give plc a try. Building that a bit less easy. I needed to do a qmake before the make (as explained on the plc homepage). Then the compile failed with:
- Parameters and Statistics response from 00:14:5c:80:9f:20
Tx ACK Counter: 37550
Tx NACK Counter: 33180
Tx FAIL Counter: 0
Tx Contention Loss Counter: 10774
Tx Collision Counter: 7034
Tx CA3 Latency Counter: 10841
Tx CA2 Latency Counter: 21900
Tx CA1 Latency Counter: 55379
Tx CA0 Latency Counter: 0
Rx Cumul. Bytes per 40-symbol Packet Counter: 77395170
net_pcap.cpp:29:20: fel: global.h: Filen eller katalogen finns inte make: *** [net_pcap.o] Fel 1This global.h file was included by net_pcap.cpp and is not part of plc-0.1.3.tar.gz. Luckily it is included in the plc-0.1.2.tar.gz file so copied the file from the 0.1.2 version to the 0.1.3 directory, after which the build worked. (I e-mailed the author about this missing file) Besides the gui (which is quite similar to the one on the windows laptop) it is also giving some information about the connection to STDOUT:
add_mac start, mac : “00:14:5c:80:9f:20″ add_mac endOn feature that is not there on the windows software is that this even worked wireless. It recognized one of the two CPL-85’s when my laptop was not connected wireless to the linksys.
MID = 24 (response)
plc_send_mm : Get Channel capacities for transmit
dest: “ff:ff:ff:ff:ff:ff”
src : “00:18:DE:4C:15:8F”
From 00:14:5c:80:9f:1f : 0×2
Vendor Specific Parameters
MID = 24 (response)
received channel capacities response mme for TX
1 TX station(s)
Station 0
MAC 00:14:5c:80:9f:20
TxBytesPerBlock = 2565
TxBytesRate = 7 MBytes/s
TxBitRate = 61 MBits/s
As shown, the connection speed is quite good. Not the 85 MBits/s that should be possible, but 61 MBits/s is not too far below that specs either.
Comments
Comment from Tony Heywood
Time: June 13, 2008, 11:13 am
Just getting to grips with the jargon around fast ethernet. Thanks for the post, keep up the good work.
I am looking for something silmar as my wireless router is always over heating and cutting out!
Comment from Stéphane List
Time: April 15, 2008, 8:40 am
Hi,
I’m the author of plc.
I’ve corrected the bug you have found.
The new version is online…
http://slist.lilotux.net/linux/plc/
Have fun
Stephane