I'm still learning and I'm most grateful for all the helpful suggestions on this forum - thanks.
I have an oscilloscope but it is buried somewhere in my loft - guess it would be worth me digging it out.
I tried without the opto isolator and got no interrupts which I guessed was because the signal from tsl was too weak - I could not measure precisely because the pulse is too quick for my meter. When I first put the opto isolator in everything worked fine then after a day of running just stopped and I could not get it working again. The pulses from the meter LED are around 1 per second (when I'm gobbling power and we have something like a spin drier on) and get slower.
MurMan's suggestion of the comparator is obviously the best one and I would have done that when he first suggested it but I did not have one, there are no local electronic shops, most online places have minimum orders and in any case the post is terrible hear right now because of the weather.
I stole portions of the code from Gratulacje! Twoja domena została zarejestrowana w OVH! and that had the comment:
SREG = oldSREG; // restore interrupts
and as my interrupts were occurring I did not investigate further. I had not realised I needed to call sei() but this makes me wonder how it ever worked - but it did. I did not see cli/sei in the reference guide but presume they are nointerrupts and interrupts. I also found http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1261124850 which suggested restoring SREG restored the interrupt and the code I stole is correct?
I assumed interrupts still occurred when you were in delay() as they appeared to for me. The documentation says:
Certain things do go on while the delay() function is controlling the Atmega chip however, because the delay function does not disable interrupts. Serial communication that appears at the RX pin is recorded, PWM (analogWrite) values and pin states are maintained, and interrupts will work as they should.
UPDATE: I forgot to mention i know the ISR is being called because I took the digital pin 3 low and high manually by connecting to +5v and gnd and the interrupt fired.