Asterisk doesn´t detect hangup

I have a central with asterisk 1.4.21.2 and FreePBX 2.4.1. I have defined one trunk type ZAP with 4 line.
When I set a queue for incoming calls, and a caller hangs up the asterisk doesn’t detect hangup and leaves open the entry line. However, if I disable the queue there is no problem, when a caller hangs asterisk detect it and releases the line.
Does anyone know how to solve this problem?

Thank you

Lack of some details will make this hard to answer (good providing * and FreePBX version info). how are the calls coming in? what type of trunk, Sip, ZAP, IAX, etc…

If it is a zap card (saw your update), then the first place to check is that the zap card is set properly for your area. Realize that by default the drivers assume US telco signalying as the default. So if you are in a different country then you will probably need to configure the card for your country as line signaling is different between telco companies and countries that the zaptel.conf file might need. It is also possible that you will need to add opermode= in the /etc/modules.conf (see http://linux.die.net/man/8/fxotune). The UK, Italy are two that I know for example need to have changes made to detect line ring and/or hangups properly (http://www.voip-info.org/wiki/view/UK+Asterisk+Details).

Google zaptel and your country for further information.