Thanks for this help Pete! I like this approach much better and don't wonder if this was a cause of some of my lockup issues before... The main code does a lot of parm checking between the reads...
However, its not fixing the problem.
It still locks up on the second I2C write 95ms after the first.
First write is shows up on logic analyzer as would expect and second just has the address byte then holds both SDA and SCL low.