DTMF generation problem

I am using a third-party analog card by Amtelco. When Asterisk receives DTMF via RTP DTMF events, Asterisk is supposed to tell the card to generate the DTMF tones. However, if the digits are pressed fairly quickly, Asterisk seems to ignore every other digit. I.E. 987654321 only plays back 97531. I noticed a message in the DTMF log that puzzles me:

Jun 22 10:44:12] DTMF[3517] channel.c: DTMF end ‘9’ received on SIP/OSV1-00000003, duration 0 ms
[Jun 22 10:44:12] DTMF[3517] channel.c: DTMF begin emulation of ‘9’ with duration 100 queued on SIP/OSV1-00000003
[Jun 22 10:44:12] DTMF[3517] channel.c: DTMF end emulation of ‘9’ queued on SIP/OSV1-00000003
[Jun 22 10:44:12] DTMF[3238] channel.c: DTMF end ‘8’ received on SIP/OSV1-00000003, duration 0 ms
–>[Jun 22 10:44:12] DTMF[3238] channel.c: DTMF end accepted without begin ‘8’ on SIP/OSV1-00000003
[Jun 22 10:44:12] DTMF[3238] channel.c: DTMF end passthrough ‘8’ on SIP/OSV1-00000003
[Jun 22 10:44:12] DTMF[3517] channel.c: DTMF end ‘7’ received on SIP/OSV1-00000003, duration 0 ms
[Jun 22 10:44:12] DTMF[3517] channel.c: DTMF begin emulation of ‘7’ with duration 100 queued on SIP/OSV1-00000003
[Jun 22 10:44:13] DTMF[3517] channel.c: DTMF end emulation of ‘7’ queued on SIP/OSV1-00000003

I did a Wireshark and for every digit, six RTP events per digit are sent from the device (a Siemens Xpert server). The last two have the end flag set. I’ve seen traces from other devices that have three packets with the end flag set and work fine.

I am using Asterisk 1.4.40. The driver for the card only supports Asterisk 1.4.

What causes the “end accepted without begin” message? Is there some sort of reconfiguration of Asterisk I can do? I tried playing with the relaxdtmf option and rfc2833compensate options without any change.