I am starting to think that it might be a hardware related problem.
Not sure it is an hardware problem, dahdi still has some serius problems handling properly ptmp isdn lines; looking in the digium issue tracker everyone can easily find a lot of (still open) acknowleged tickets related to isdn framing in ptmp setups.
However, an hdlc abort is not necessarily a symptom of failure... if it happens occasionally (
http://www.erg.abdn.ac.uk/~gorry/eg3567/dl-pages/hdlc.html).
Hdlc aborts that happens at regular intervals may be caused by the driver not properly handling the idle line state; this is part of euroisn standard and many telcos use it to save power.
Also timing errors may cause framing errors then hdlc aborts.
The first thing I would suggest to users living in europe is to set
switchtype=euroisdn in the isdn provider advanced settings.
To test if this is caused by timing errors check dmesg to see if the dahdi drivers switch the clock to another port because the actual sync source goes idle:
[ ... ] wcb4xxp 0000:00:0c.0: new card sync source: port 1
[ ... ] ...
[ ... ] wcb4xxp 0000:00:0c.0: new card sync source: port 2but the new one may be also idle... because all ports are idle.
Finally check if hdlc aborts happens only when there are not active calls, after a defined time (the idle timeout is 15 seconds in Italy). This should confirm that is a failure caused by the idle line state.
The last resort will be a pri debug ;-)