@ccollins476ad I looked further into this and I think my changes in this PR are 
just a workaround for a bug in `hal_i2c_master_write`. In the case where 
`last_op` is 0 and an error takes place, `EVENTS_STOPPED=0` doesn't ever happen 
in this function and I think that results in the bus being left without a stop 
condition. My workaround to go ahead and call `hal_i2c_master_read` adds the 
missing `EVENTS_STOPPED=0` and I think this is why it works.

I'll try this out and let you know if it seems to fix the hang in the same way. 

Any comments on this approach?

[ Full content available at: https://github.com/apache/mynewt-core/pull/1400 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to