just a little followup, i had esp_intr() build a little histogram of retries (i.e. 'i' in esp.c): 0 11772 1 211 2 6101 3 718 4 190 5 466 6 313 7 216 8 96 9 76 10 118 11 280 12 631 13 268 14 346 15 384 16 110 17 131 18 50 each 'slot' here, represents delay(500) so it appears that a delay(1000) would seem to catch of most of the retries.