summaryrefslogtreecommitdiff
path: root/decoders/i2c
AgeCommit message (Collapse)Author
2014-04-13Rename 'probe' to 'channel' everywhere.Uwe Hermann
Variables of type 'struct srd_channel *' are consistently named 'pdch' to make them easily distinguishable from libsigrok's 'struct sr_channel *' variables that are consistently named 'ch'.
2014-03-14Bring various test output files up to date.Bert Vermeulen
2014-03-10Probes, optional probes and annotations now take a tuple.Bert Vermeulen
Annotation entries also consist of a tuple, not a list.
2014-03-10Remove unused probes and optionsBert Vermeulen
2014-03-10Change PD options to be a tuple of dictionaries.Bert Vermeulen
Each option consists of a dictionary with the following keys: id The option id, which is passed in when setting a value. desc A description of the option, suitable for display. def The default value for this option. values (optional) If present, a tuple containing values the option may take. They must be of the same type as the default. Valid types for the options are UTF-8-encoded strings, integers, and floating point values.
2014-02-09i2c: Emit per-bit annotations/packets and define annotation rows.Uwe Hermann
2014-01-30s/out_proto/out_python/.Uwe Hermann
The output type is now called OUTPUT_PYTHON, adapt all PDs to that.
2014-01-28All PDs: Drop unneeded comments.Uwe Hermann
The single comment re-stating the PD's name / description / purpose in each pd.py file is not really needed, that info is available in the Decoder class' attributes already.
2014-01-28All PDs: Improve/fix descriptions.Uwe Hermann
2013-12-28i2c: Replaced I2C with I²CJoel Holdsworth
2013-12-13i2c: Add Python tests.Bert Vermeulen
2013-12-13i2c: Avoid obsolete method.Bert Vermeulen
2013-12-12i2c: Add binary tests.Bert Vermeulen
2013-12-12Use new binary class definition format.Bert Vermeulen
2013-12-10Add protocol decoder testing framework.Bert Vermeulen
This adds a tool in the tests directory, called pdtest. It uses the "test/" directory in every PD directory, if present, to run the PD against dumps found in the sigrok-dumps repository, and compares the output against ".output" files in the "test/" directory. The file "test/test.conf" is used to configure which tests to run. A separate tool (tests/runtc.c) is used to run the actual decoding and report output. To get an overview of the options, run tests/pdtest without any options.
2013-11-27Automate protocol decoder installation.Bert Vermeulen
This automatically figures out the files to install for each protocol decoder, without involving autotools. All python files (filenames ending in .py) are always installed. If a protocol decoder requires installation of a non-python file, a small file called 'config' can be created in that protocol decoder's directory, with the following content: # comments are ok extra-install vendorlist.txt commands.txt
2013-11-15Use OUTPUT_BINARY with four classes.Bert Vermeulen
2013-11-15Drop obsolete report() method.Bert Vermeulen
2013-11-15Emit meta bitrateBert Vermeulen
2013-11-07Rename inter-PD output type to SRD_OUTPUT_PYTHONBert Vermeulen
This better reflects what it is: a python object generated and processed by python code.
2013-10-30The start() method no longer takes a metadata parameterBert Vermeulen
2013-09-14i2c: Drop unneeded 'addressing' option.Uwe Hermann
This (unimplemented so far) option is not needed at all, since the decoder will be able to detect 7/10 bit slave addresses automatically, the user doesn't have to specify slave address sizes.
2013-09-14i2c: Drop obsolete TODOs.Uwe Hermann
2013-09-14i2c: Move OUTPUT_PROTO docs to pd.py.Uwe Hermann
2013-09-14i2c: Moved extensive protocol docs to the wiki.Uwe Hermann
2013-09-14i2c: Various fixes to make the PD suitable for GUIs.Uwe Hermann
The output format of the slave address is now a PD option. It can be "shifted" or "unshifted", i.e. bit 0 (which contains a read/write marker) is either shifted out or not, i.e., the slave address is displayed as 8bit or 7bit number (or 11bit/10bit number for 10bit slave addresses). Data bytes (not address bytes) are always shown as 8bit values, of course. Add annotation types for the individual I2C components such as start conditions, stop conditions, ACK/NACK, address read/writes, data read/writes and so on. This fixes bug #151.
2013-09-08i2c: Fix corner-case that can occur with LA triggers.Uwe Hermann
Until now the I2C PD was basically ignoring the very first sample, and using that as the initial 'oldscl'/'oldsda' value. However, if your logic analyzers trigger on, say, SDA=low that will result in a file where the first sample is really important since it is the one which the PD will need to know that there's a falling edge on SDA. Thus, assume both SCL and SDA are high/1 when the PD starts. This is a good assumption since both pins have pullups on them in practice and are thus high/1 when the bus is idle. Later on we might want to have config options to let the PD assume other states of SDA/SCL initially.
2013-04-23GPL headers: Use correct project name.Uwe Hermann
2012-11-24Fix bugs in "Invalid state" printing/exceptions.Uwe Hermann
2012-11-24All PDs: Name the files pd.py consistently.Uwe Hermann
The Python module name is determined by the directory name (e.g. dcf77), the *.py file names in that directory don't matter and can be kept consistent.
2012-07-11srd: Performance improvements for various PDs.Uwe Hermann
Ignore/skip identical samples in most (low-level) PDs, as we're usually (but not necessarily always) only interested in pin changes. This yields a significant performance improvement for the PDs. The mechanism was already used in the 'i2s', 'jtag', and 'lpc' PDs, but not yet in all supported low-level decoders. The following PDs now also use this mechanism: 'dcf77', 'i2c', 'spi', 'uart', and 'usb_signalling'. Thanks Lars-Peter Clausen <lars@metafoo.de> for bringing this to our attention.
2012-06-12srd: Cosmetics.Uwe Hermann
2012-05-09srd: Add usable one-liner descriptions for all PDs.Uwe Hermann
2012-03-31srd: Decoders: Fix/simplify samplenum usage.Uwe Hermann
2012-03-04srd: I2C: Update PD protocol docs.Uwe Hermann
2012-03-04srd: PDs: More cosmetics.Uwe Hermann
2012-03-04srd: PDs: Use strings for states, too.Uwe Hermann
2012-02-28srd: I2C: change format to have ACK/NACK bits as separate eventsBert Vermeulen
2012-02-28srd: PDs: Whitespace and cosmetics.Uwe Hermann
2012-02-01srd: Move all protocol docs to __init__.py files.Uwe Hermann
2012-02-01srd: rename extra_probes to optional_probes in all PDsBert Vermeulen
2012-01-25srd: All PDs: Various fixes, cosmetics.Uwe Hermann
- List all API methods and metadata variables in all PDs to make things easier and more consistent for new PD writers. - Fix probe assignment in a few PDs. - Raise exceptions upon invalid states of the PD state machines (bug).
2012-01-17I2C: no need to copy default option values over from the classBert Vermeulen
definition anymore: it happens automagically.
2012-01-15I2C: properly use sample numbers in proto/annotation outputBert Vermeulen
2012-01-15srd: Add 'api_version = 1' to all PDs.Uwe Hermann
2012-01-15srd: Each PD now has its own subdirectory.Uwe Hermann