README
BCU 1 driver for Linux 2.6
--------------------------
Supported Linux versions: 2.6.14 - 2.6.31
Supported Hardware: Any PC with 16550A compatible serial ports (only tested on i386 Linux)
This is a driver to handle the low level protocol (PEI16)
to communicate with a KNX/EIB BCU 1 (or a BCU 2 configured to use PEI16).
It can be used to send/receive EMI 1 messages.
eibd (part of the BCU SDK, http://www.auto.tuwien.ac.at/~mkoegler/index.php/bcusdk)
provides a high level interface on top of it. Several
existing applications also use this driver directly.
bcu1driver 0.2.6.5.1 is the last version, which supports kernels between
2.6.10 and 2.6.13
Usage:
------
Ensure that the build files of the current kernel are available at
the default location:
ls -l /lib/modules/`uname -r`/build/
Fedore Core ships them as part of the kernel image, SuSE in the
kernel source packages.
Extract the driver and run
make
Load the driver (as root):
insmod eib-common.ko
insmod eib-8250.ko
insmod eib-pei16.ko
If you are using udev, /dev/eib0 to /dev/eib4 are created automatically.
To grant access to all users, copy eib.rules to the udev rule directory.
If you are not using udev, do the following as root:
mknod /dev/eib0 c `grep "eib" /proc/devices |cut -d' ' -f1` 0
mknod /dev/eib1 c `grep "eib" /proc/devices |cut -d' ' -f1` 1
mknod /dev/eib2 c `grep "eib" /proc/devices |cut -d' ' -f1` 2
mknod /dev/eib3 c `grep "eib" /proc/devices |cut -d' ' -f1` 3
Each device corresponds to a serial port (e.g., /dev/ttyS0 to /dev/eib0).
To use a port, the serial driver must be detached (as root):
setserial /dev/ttyS0 uart none
To start eibd on it, use:
eibd -u bcu1:/dev/eib0
To use different settings (I/O port, IRQ, UART base frequency), echo the new values
to /sys/bus/platform/devices/eib/eib[0-4]/(base|irq|port).
Make sure that you use the correct notation (eg. hex for the port). Read the file
after the change to verify.
The settings become effective at the next open of the device.
Ports:
------
If you are not using a 8250 compatible UART, you must port eib-8250.c
to your UART. There is an (untested) port to the PXA CPU in eib-pxa.c.
----------------------------------------------------------------------
Questions should be directed to the mailing list:
http://lists.sourceforge.net/lists/listinfo/bcusdk-list
List archive:
http://sourceforge.net/mailarchive/forum.php?forum_id=47098
Martin Koegler
mkoegler@auto.tuwien.ac.at