[Asterisk-bsd] I4B by HPS + chan_capi + 1.4.8 on 6.2 = choppy audio & hangups

Michael Iedema michael at askozia.com
Thu Jul 19 12:35:07 CDT 2007


Hello everyone,

I finally have ISDN up and running on my soekris net4801 test system
here using the components mentioned above. Many thanks to Hans Petter
Selasky for getting support added for the card I'm using and
troubleshooting.

Here's how everything is connected.

ISDN Phone (2600) <--> ISDN pbx <--> ISDN TE Port (2601) on Asterisk System


Calling the conference (and other internal phones) from the ISDN phone
results in choppy audio from the music on hold as well as from other
conference members. ztdummy is loaded but seems to not be working
properly.

Even before attempting ISDN support, conferences were accumulating
delay. I have already enabled "internal_timing" and "highpriority" in
asterisk.conf to give it priority over other processes on the machine.

zttest gives me a worst score of 99.975586 after 10 passes. This gets
much worse if I attempt to do other things on the box while it runs.
Shouldn't it be accurate as long as the CPU isn't completely
overwhelmed? Any pointers here? Is there a way to pull timing from the
ISDN card?

Also, when calling extensions connected to the Asterisk system (SIP,
conferences, etc) from the ISDN phone (2600) sometimes they are
hung-up after a few hundred milliseconds. Calling back repeatedly
results in some calls being successfully connected and other silently
canceled. I have seen this issue before and resolved it by adding a
Wait(1) to give the ISDN systems time to sync and be happy. This has
not solved the issue this time. Has anyone seen something like this?

Let me know what additional output would be of use.

Thanks in advance for any insight into these problems!
-Michael I.


------- extensions.conf ------
; Tester System
[ISDN-PROVIDER-1925636366469e045b28b82]
exten => s,1,Ringing()
exten => s,2,Wait(1)
exten => s,3,Answer()
exten => s,4,MeetMe(2663,M)
exten => s,5,Hangup()


------ capi.conf --------
$ cat /usr/local/etc/asterisk/capi.conf
	
[general]
nationalprefix=0
internationalprefix=00
rxgain=1.0
txgain=1.0
;debug=yes


; Tester System
[ISDN-PROVIDER-1925636366469e045b28b82]
isdnmode=msn
incomingmsn=*
msn=2601
controller=9
group=1
softdtmf=off
relaxdtmf=off
context=ISDN-PROVIDER-1925636366469e045b28b82
holdtype=local
echocancel=yes
devices=2



------ capi debug fail -------
    -- capi_handle_connect_indication:6045:ENTRY=:PLCI=0x1f09:PBX_CHAN=**Unknown**:
    --   Incoming call from '2600' to '2601', CIP=0x0010,
sending_complete=no
  == cd_start_pbx:5935:ENTRY=ISDN-PROVIDER-1925636366469e045b28b82:PLCI=0x1f09:PBX_CHAN=CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-1c:
  ==   Started PBX
    -- Executing [2601 at ISDN-PROVIDER-1925636366469e045b28b82:1]
Wait("CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-1c", "1") in new
stack
  == cd_free:2150:ENTRY=ISDN-PROVIDER-1925636366469e045b28b82:PLCI=0x1f09:PBX_CHAN=CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-1c:
  ==
       > CAPI: Command=DISCONNECT_IND, 0x848c: no call descriptor for
PLCI=0x1f09, MSGNUM=0x0000:
  == Spawn extension (ISDN-PROVIDER-1925636366469e045b28b82, 2601, 1)
exited non-zero on
'CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-1c'


------ capi debug success -------
    -- capi_handle_connect_indication:6045:ENTRY=:PLCI=0x1a09:PBX_CHAN=**Unknown**:
    --   Incoming call from '2600' to '2601', CIP=0x0010,
sending_complete=no
  == cd_start_pbx:5935:ENTRY=ISDN-PROVIDER-1925636366469e045b28b82:PLCI=0x1a09:PBX_CHAN=CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-17:
  ==   Started PBX
    -- Executing [2601 at ISDN-PROVIDER-1925636366469e045b28b82:1]
Wait("CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-17", "1") in new
stack
    -- Executing [2601 at ISDN-PROVIDER-1925636366469e045b28b82:2]
Answer("CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-17", "") in
new stack
    -- Executing [2601 at ISDN-PROVIDER-1925636366469e045b28b82:3]
MeetMe("CAPI/ISDN-PROVIDER-1925636366469e045b28b82/2601-17", "2663|M")
in new stack



------ kernel conf --------
machine		i386
cpu		I586_CPU
ident		ASKOZIAPBX_NET48XX

options		HZ=1000

options		CPU_GEODE
options		CPU_SOEKRIS

hints		"ASKOZIAPBX_NET48XX.hints"

options 	SCHED_4BSD		# 4BSD scheduler
options 	INET			# InterNETworking
options 	FFS			# Berkeley Fast Filesystem
options 	SOFTUPDATES		# Enable FFS soft updates support
options 	MD_ROOT			# MD is a potential root device
options 	COMPAT_43		# Compatible with BSD 4.3 [KEEP THIS!]
options 	SCSI_DELAY=5000		# Delay (in ms) before probing SCSI
options 	SYSVSHM			# SYSV-style shared memory
options 	SYSVMSG			# SYSV-style message queues
options 	SYSVSEM			# SYSV-style semaphores
options 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options 	ADAPTIVE_GIANT		# Giant mutex is adaptive.

options		NO_SWAPPING
options		DEVICE_POLLING

device		apic			# I/O APIC

# I4B
options		IPR_VJ
device		"i4bdss1"
device		"i4b"
device		"i4btrc"
device		"i4bctl"
device		"i4brbch"
device		"i4btel"
device		"i4bipr"
device		"i4bisppp"

device		ihfc
device		sound
# end I4B

# Bus support.
device		eisa
device		pci

# ATA and ATAPI devices
device		ata
device		atadisk		# ATA disk drives
options 	ATA_STATIC_ID	# Static device numbering

device          scbus           # SCSI bus (required for SCSI)
device          da              # Direct Access (disks)

# Add suspend/resume support for the i8254.
device		pmtimer

# Serial (COM) ports
device		sio		# 8250, 16[45]50 based serial ports

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device		miibus		# MII bus support
device		sis			# Silicon Integrated Systems SiS 900/SiS 7016

# Pseudo devices.
device		loop		# Network loopback
device		random		# Entropy device
device		ether		# Ethernet support
device		pty			# Pseudo-ttys (telnet etc)
device		md			# Memory "disks"

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device		bpf		# Berkeley packet filter

# USB support
device		ohci		# OHCI PCI->USB interface
device		usb			# USB Bus (required)
device		ugen		# Generic
device		uhid		# "Human Interface Devices"
device		ukbd		# Keyboard
device		umass		# Disks/Mass storage - Requires scbus and da

# USB Ethernet, requires miibus
device		aue		# ADMtek USB Ethernet
device		axe		# ASIX Electronics USB Ethernet
device		cdce	# Generic USB over Ethernet
device		cue		# CATC USB Ethernet
device		kue		# Kawasaki LSI USB Ethernet
device		rue		# RealTek RTL8150 USB Ethernet



More information about the Asterisk-BSD mailing list