x100p callerid weirdism

I have an x100p (from x100p.com) that occasionally fails to decode the caller id of an incoming call. This happens probably once in every 7-8 calls. I have a caller ID box hooked up on a separate outlet that will briefly display “error” when this occurs and it too fails to show any caller id for these calls. When the x100p is not in use the callerid box always works correctly.

Is it possible that the x100p is answering in the middle of the callerid info before it’s completely decoded? Is there any way to control this? I’ve tried putting a Wait() in my dialplan just before the Answer() but this doesn’t help. Also have the following in /etc/zapata.conf:

usecallerid=yes
callerid=asreceived

When callerid fails I sometimes, but not always, see the following:

-- Starting simple switch on 'Zap/1-1' NOTICE[14250]: chan_zap.c:6245 ss_thread: Got event 18 (Ring Begin)... ERROR[14250]: callerid.c:276 callerid_feed: fsk_serie made mylen < 0 (-14) WARNING[14250]: chan_zap.c:6277 ss_thread: CallerID feed failed: Success WARNING[14250]: chan_zap.c:6321 ss_thread: CallerID returned with error on channel 'Zap/1-1'
I live in Alabama and my telco is AT&T. I’m using zaptel-1.2.23 and asterisk-1.2.21.1-r1 on a Gentoo system.

Any ideas?