Проект linux-zigbee реализует стек протоколов ieee802.15.4 в виде набора драйверов ядра linux, драйвер трансивера zigbee, firmware для трансивера и набор утилит. Взаимодействие с транисивером идет через последовательный порт. Отладка выполняется в UserModeLinux.
Первый шаг – получить исходники драйвера (svn co https://zigbee-stack-t.svn.sourceforge.net/svnroot/zigbee-stack-t zigbee-stack-t). Дальше – zigbee-stack-t/trunk/README.txt с небольшими исправлениями:
diff -bur linux-2.6.25-org/include/linux/net.h linux-2.6.25/include/linux/net.h --- linux-2.6.25-org/include/linux/net.h 2008-04-17 06:49:44.000000000 +0400 +++ linux-2.6.25/include/linux/net.h 2008-08-10 00:58:00.000000000 +0400 @@ -26,7 +26,7 @@ struct inode; struct net; -#define NPROTO 34 /* should be enough for now.. */ +#define NPROTO 35 /* should be enough for now.. */ #define SYS_SOCKET 1 /* sys_socket(2) */ #define SYS_BIND 2 /* sys_bind(2) */ diff -bur linux-2.6.25-org/include/linux/socket.h linux-2.6.25/include/linux/socket.h --- linux-2.6.25-org/include/linux/socket.h 2008-04-17 06:49:44.000000000 +0400 +++ linux-2.6.25/include/linux/socket.h 2008-08-10 00:57:47.000000000 +0400 @@ -189,7 +189,7 @@ #define AF_BLUETOOTH 31 /* Bluetooth sockets */ #define AF_IUCV 32 /* IUCV sockets */ #define AF_RXRPC 33 /* RxRPC sockets */ -#define AF_MAX 34 /* For now.. */ +#define AF_MAX 35 /* For now.. */ /* Protocol families, same as address families. */ #define PF_UNSPEC AF_UNSPEC
depmod dmesg -n8 modprobe ieee80215_lib modprobe zb modprobe dbg_print modprobe ieee80215 debug_opts=20 ts=1 modprobe zb_ldisc dev_name="my_dev1" modprobe af_zigbee
Тестовый набор патчей для достижения первой цели: