Serial Decoding - I2C

Forum for discussing PicoScope version 6 (non-automotive version)
Post Reply
MatsI
Newbie
Posts: 0
Joined: Thu May 30, 2013 1:21 pm

Serial Decoding - I2C

Post by MatsI » Thu May 30, 2013 1:34 pm

I am using a 3406B with PicoScope 6.7.21.2 and having problems decoding I2C. It seems that Repeated Start is not supported, the decoding gets out of sync when this is used. Can someone confirm this, or am I doing something wrong?

Hitesh
Site Admin
Site Admin
Posts: 2836
Joined: Tue May 31, 2011 3:43 pm
Location: St. Neots, Cambridgeshire

Re: Serial Decoding - I2C

Post by Hitesh » Mon Jun 03, 2013 10:32 am

Hi MatsI,

Could you please post an example psdata file or send it to support@picoctech.com?

By repeated start, do you mean Repeat trigger?

Thanks,
Hitesh

Technical Support Engineer

MatsI
Newbie
Posts: 0
Joined: Thu May 30, 2013 1:21 pm

Re: Serial Decoding - I2C

Post by MatsI » Mon Jun 03, 2013 11:37 am

Hi,
attached is an example file showing one short package that reads the content of a registry . The target is a Freescale MMA8451Q accelerometer, which uses an I2C mechanism called Repeated Start. In this case the Host starts with a Write Address to device 0x1D, followed by the registry to read, 0x0C. Then a Repeated Start occures, repeating the slave address with read flag, followed by the data byte.

You can see that the decoder gets out of sync, probably because of the extra Clock pulse inserted by the Repeated Start.

Thanks!
Mats
Attachments
20130603-0004.psdata
(154.9 KiB) Downloaded 188 times

Hitesh
Site Admin
Site Admin
Posts: 2836
Joined: Tue May 31, 2011 3:43 pm
Location: St. Neots, Cambridgeshire

Re: Serial Decoding - I2C

Post by Hitesh » Mon Jun 03, 2013 12:57 pm

Hi Mats,

This has been reported as a bug. An update will be provided once a response has been received.

Thanks,
Hitesh

Technical Support Engineer

stef84
Newbie
Posts: 0
Joined: Thu Jun 27, 2013 12:00 am

Re: Serial Decoding - I2C

Post by stef84 » Thu Jun 27, 2013 1:01 am

Hi,
I have a similar problem with I2C. I'm running PicoScope® 6 - PC Oscilloscope software version: 6.7.27.5.
The I2C serial protocol decoder doesn't recognize repeated start condition and stop condition. The REPEATED START condition is something that can happen on the BUS between a normal START condition and a STOP condition.
Anyway, in my case, the STOP condition is not recognized too. If you look at the attached file in the first buffer page, @time 113 us a STOP condition occurs (the SDA line has a LOW-to-HIGH transition when the SCL line stay HIGH). As you can see the software doesn't recognize it, and identify the next packet as a normal data packet. At the same time, the immediately next START condition (@115 us) is ignored, then all the next data will be wrongly decoded.
In the second page buffer you can see the wrong behavior of the Picoscope software during the REPEATED START condition. The REPEATED START condition occurs @58 us, it is completely ignored by the serial protocol decoder.

I hope this bug will be fixed... :(

Thank you for your support.

Stefano
Attachments
I2C_issue.psdata
STOP/REPEATED START conditions not recognized
(11.99 KiB) Downloaded 201 times

Hitesh
Site Admin
Site Admin
Posts: 2836
Joined: Tue May 31, 2011 3:43 pm
Location: St. Neots, Cambridgeshire

Re: Serial Decoding - I2C

Post by Hitesh » Thu Jun 27, 2013 10:34 am

Hi stef84,

This bug has been fixed in PicoScope 6.7.28 (RC) which can be downloaded from http://www.picotech.com/software.html

Regards,
Hitesh

Technical Support Engineer

stef84
Newbie
Posts: 0
Joined: Thu Jun 27, 2013 12:00 am

Re: Serial Decoding - I2C

Post by stef84 » Thu Jun 27, 2013 11:31 pm

Thanks Hitesh, I'll check with the new version!!!

Post Reply