Quantcast
Channel: VOIP-info.org Wiki Changes
Viewing all articles
Browse latest Browse all 5767

Asterisk timer ztdummy

$
0
0

How to compile ztdummy

ztdummy is a Linux kernel module that will provide your Asterisk with a Zaptel timer even if you don't have any Digium hardware installed in your Linux server. For Linux kernel version 2.4 the ztdummy module takes timing from the usb-uhci kernel module, which should be loaded before ztdummy. Note that usb-uhci must not be compiled into the kernel, it'll only work with ztdummy if loaded as a module! On kernel version 2.6 ztdummy uses internal high-resolution kernel timer and does not require any USB. Using the internal kernel timer is recommended.

General instructions for compiling all of the zaptel modules including ztdummy are here: Asterisk Zaptel Installation

Do you have the correct USB Controller?

If you are using a Linux 2.4 kernel you will need a USB controller to use ztdummy.
There are two types of USB controller chips used on motherboards: USB OHCI and USB UHCI. To use ztdummy, you need an USB UHCI type controller on the motherboard, as the OHCI chips work very differently. If you do not have an appropriate USB controller as a timing source, then you should use Asterisk zaprtc. It was originally written by Klaus-Peter Junghanns and is distributed at http://www.junghanns.net/asterisk/.

  1. To check if you have the usb_uhci module, do lsmod
  2. Check out the zaptel module from the Asterisk CVS repository
  3. Make sure you have the Linux Kernel source files installed
  4. Edit the Makefile and remove the '#' in front of ztdummy in the top
  5. Do a make all
  6. Do make install
  7. To load the ztdummy, do modprobe ztdummy

You will probably want to include 'modprobe ztdummy' in your /etc/rc.d/rc.local to make sure it is present at startup before Asterisk is launched.

Additional info


This page contains outdated information. Now that 2.6 kernels are norm, it still talks about 2.4 and 'make linux26' which have been deprecated.
Also these instructions do not work on Fedora 6/7 as of kernel 2.6.22.1-32 . These are the errors when doing modprobe ztdummy after compilation
ztdummy: Unknown symbol rtc_register
ztdummy: Unknown symbol rtc_unregister
ztdummy: Unknown symbol rtc_control

even though crc_ccitt is set as M. here is the output from lsmod | grep zaptel
zaptel 186404 0
crc_ccitt 6337 1 zaptel

There is a bug opened with Digium

http://bugs.digium.com/view.php?id=10426

Install instructions for Debian Lenny as of 2/3/2010 for ztdummy timer

Check out zaptel package
svn checkout http://svn.digium.com/svn/zaptel/branches/1.4 zaptel
Install kernel source (assuming you've got build-essential)
sudo apt-get install linux-headers-`uname -r`
cd zaptel
./configure
make
sudo make install
sudo modprobe ztdummy

Install instructions for CentOS as of 3/10/2008 for ztdummy timer only


Install the CentOS kernel sources (google it)
Build the kernel source
Make sure /usr/src/kernel/.config is your kernel config
Make sure /lib/modules/`uname -r`/build points to your kernel directory

Required Packages:
  1. Subversion
  2. ncurses
  3. ncurses-devel
  4. newt
  5. newt-devel
  6. bison
  7. bison-devel

cd /usr/src
svn co http://svn.digium.com/svn/zaptel/tags/1.4.2.1 zaptel
cd zaptel
. ...

Viewing all articles
Browse latest Browse all 5767

Trending Articles