I2C causes CoreTimerInterrupt problem on Wifire

Post Reply
shirleyc
Posts: 3
Joined: Thu Jun 16, 2016 11:09 am

I2C causes CoreTimerInterrupt problem on Wifire

Post by shirleyc » Thu Jul 28, 2016 4:35 pm

Hi, I'm using the CoreTimerInterrupt (see snippet of code posted with under Multi-Platform IDE with topic "3 IDEs have different timings for core timer service callback; also service stops!") with Digilent Wifire or uC32 boards and their Analog Shield that runs under SPI. I managed to fix my earlier problems. Now everything works fine on uC32, but when I use the Wifire and add an I2C device (4 line x 20 char display that uses Wire and LiquidCrystal_I2C libraries), then the core timer interrupts stop after a few seconds. Via a keystroke, I can then turn the core timer interrupts off and then back on, and then they work again for a few seconds and then stop again. This procedure can be repeated. If I disconnect the I2C device, the interrupts don't stop randomly but continue without fail. Also, no such problems occur with the uC32 board; the interrupts also happily continue. I read that I2C also uses interrupts but at priority 3, whereas CoreTimer interrupt is priority 7. Since I thought this meant that the CoreTimer Interrupts would always trump the I2C interrupts, why would they stop? Is there a problem with the Wire library and the Wifire board? Or is the much higher speed of the Wifire causing the problem? Looking with a logic analyzer, it appears there is continuous traffic on the SCL and SDA lines.
The code is currently fairly stupid and refreshes the I2C LCD display every time it goes through loop. I could certainly change it so that it only updates if there is a change to the information to be displayed. Would that be likely to help?
--Shirley

User avatar
Jacob Christ
Posts: 723
Joined: Sat May 28, 2011 6:34 am
Location: Southern California
Contact:

Re: I2C causes CoreTimerInterrupt problem on Wifire

Post by Jacob Christ » Thu Aug 25, 2016 7:38 am

Shirley,

We have been using I2C with ADC on a WiFire this last week and are seeing the board lock up. I don't know if it is related. Both work fine by themselfs but together boom. If I figure something out I'll post it here.

Jacob
PONTECH Quick240 an industrial form factor platform for chipKIT and Arduino users.

Post Reply