10

Bug Report - Packet ID Doesn't Work Properly


Avatar
Tim

For LLAs that support Packet IDs (such as our I2C Analyzer), Packet ID remains at "0" for all entries in an export and doesn't count properly in Logic 2.


Workarounds:

(1) The data table export includes enable and disable events. The data table has it's own export feature separate from the SPI's built-in export. This does not add a packet ID to each row, which our old Logic 1.x software did (and is not working in Logic 2). Instead, it creates new rows at the time stamp where the enable line asserted / de-asserted.

(2) It's also possible to write a new HLA that takes in the SPI events, and produces new events, removing the enable/disable flag, and adding a packet ID to the data bytes. More information on developing Python HLAs can be found in the link below: https://support.saleae.com/extensions

(3) Finally, it's possible to produce 1 event for each entire transaction, allowing you to export 1 line per SPI packet, as well as search for sequences of bytes instead of 1 byte at a time in the data table. An extension called "Text Messages" is available from within our Extensions Marketplace (found in our Logic 2 app) can be installed which can combine multiple analyzer frames into a single frame to ease reading the raw results.

Some Background on the Issue: The root problem is that the packet ID system for analyzers is broken in Logic 2. Specifically, we allow analyzers to run while the software is in looping mode, and the analyzer API as written can't properly handle what happens when older analyzer results are deleted from memory (we didn't disconver this until late in the implementation).

Instead, we decided to add the enable and disable events into the new data table system Logic 2 uses. The advantage of the new data table system is that users can write their own python HLAs that process those events and produce new events for display in the software. Data table results can be exported via the instructions below: https://support.saleae.com/user-guide/using-logic/exporting-data

A

Activity Newest / Oldest

Avatar

Tim

discuss.saleae.com/t/looking-to-buy-an-old-saleae-hardware/2792
"Thank you for your answer, well the issue is the packet id witch is on 1.x software but not on 2.x software and my logic 8 pro is not compatible with 1.x software, i know that you guys have more important stuff to do in steed of fixing the packet id issue , and in order for me to be able to move faster in my project i think the best solution is to find an old logic hardware to buy and that why i will be able to use it with the logic 1.x software and all my issues are solved."


Avatar

Tim

(#87132)
"my issue is that in the past i use using the old Logic software to get the SPI hex data from the cc1121 and cc1101 and once i get the data i use using a python code as a parser to extract the necessary data that i use looking for but the python code is using Packet ID to extract the data and the new logic 2 is not using the Packet ID so my python code is not working anymore... and i can not adapt it so and from what i understand i can not use the new Saleae logic analyzer hardware with the old Logic software version to get new capture with Packet ID....."


Avatar

Tim

(#87020)
"Currently, when SPI export to TXT/CSV, the Packet ID is always 0. I hope that the exported data can be added with a Packet ID based on CS."


Avatar

Tim

(#85005)
"Now the new question is why all the Packet ID is ‘0’ as below."


Avatar

Tim

(#80095)
"The last column in the “result” rows is not incrementing for some bytes and there it stays at "." so it looks something is wrong."


Avatar

Tim

(#79066)
"For exported I2C data, the packet ID is always 0. In older versions (eg. Logic-1.2.40), the packet ID incremented based on stop and restart. Without this information, it is impossible to identify the different read/write sequences within the data export."


E

Edu

Hey Together, i wanted also to Use Logic 2 as the SaleAE Pro 16 was verry expensive for our Project.
But as this Bug is more than 2 years old and still no intention to fix it
i think to Drop Saleae. Our Company would to Order some 50 Parts Worldwide for our Analysis Teams, but if i see that a necessary function like "counting Packet IDs" is not working because " the community choose anoter Feature" to be developped first, this kind of Bug will never be fixed.

Sad that this function was fully working on Logic 1.x ...
Bug fixes should never be "voted"

Best Regards
Edu


  • E
Avatar

Tim

Hi Edu, I want to sincerely apologize for not having made progress on this bug fix. We definitely agree that we need to get this fixed, despite the vote count. Otherwise, you are right that we would never get to working on this due to something else being "higher" in vote count.

In the short term, the data table export includes enable and disable events. The data table has it's own export feature separate from the SPI's built-in export. More info can be found below:
support.saleae.com/user-guide/using-logic/exporting-data

This does not add a packet ID to each row, which our old Logic 1.x software did (and is not working in Logic 2). Instead, it creates new rows at the time stamp where the enable line asserted / de-asserted.


Avatar

Tim

Hi Edu, I added some more information in the original post above with details on the workaround, and some background on the root cause of the issue.


Avatar

Tim

(#78441)
"i have an issue with the New Logic 2.4.6. The Packet ID is not counting the Chip Select phases.
in the old Logic 1.2.29 this was Working so far. I use here the export to TXT function in the Analyzer SPI.

If this ist just a wrong setting, please send me an instruction how i can setup these correct."


Avatar

Tim

(#78327)
"SPI transactions are defined by the select line. You correctly decode SPI data only when the select is asserted for the defined decoder. But when you export SPI data to CSV you do not include any indication of the transaction boundaries, which makes it nearly impossible to use the export because there's no way to determine which bytes belong to a transaction. It would help if you included a counter or something that would help indicate which transaction bytes are associated with."


Avatar

Tim

(#77908)
"Yes, the packet ID count feature not working on Logic 2. Our scripts are dependent on that for creating SPI frames."


Avatar

Tim

(#77472)
"We faced maybe another bug. When we are doing acquisition on SPI, after using a legacy_export_analyzer function, we don’t get a Packet ID column, it is always 0. We tried with Logic 1 and it is working fine."


  • N
N

Nate

This is high priority, please implement packet IDs in Logic 2 as soon as possible.


  • E
  • N
Avatar

Tim

(#75141)
"My company has been looking at purchasing a batch of Pro 16s, but heard that you have removed the SPI packet ID function, and thus rendered SPI captures unable to processed with any any industry standard tools such as SniffROM."


  • N
M

Matan

This feature of packet ID is very urgent and important to us , please try to fix it soon.


  • N
Avatar

Tim

(#74866)
"With logic 1, when I exported I2C analyzer data as txt file, there was packet ID for each data packet.
Now, with Logic 2 , using the same feature the packet ID is missing.
Is There a way to configure the data export from the I2C analyzer such that the packet ID will be included (With Logic 2.59) ?
I attached two example files : The first from logic 1 with packet id and the other from logic 2 without packed Id."


  • M
Avatar

Tim

(#70245)
"The Packet ID of the csv file exported by i2c data is always 0"


Avatar

Tim

(#68832)
"Affecting Logic 2.x.x only, for some reason the Packet ID column of the SPI analyzer's CSV export doesn't seem to contain reasonable values anymore. In Logic 1, the Packet ID column contained an index which got increased for every frame; however, if a frame contained multiple packets (e.g. four 8bit transfers within a 32bit frame), although resulting in multiple lines in the CSV the Packet ID value was kept the same for every packet within that frame, allowing to easily identify the start of a new frame in the CSV file. Unfortunately, in Logic 2.x.x all the Packet ID values are zero only which renders the associated column useless. As we're using an interpretation tool that relies on the Packet ID value for synchronization purposes, Logic 2.x.x is not working for us anymore. May I kindly ask you to have a look into this and – if possible – restore the SPI analyzer's behavior to what it used to be in Logic 1.x.x?"


S

Shankaranarayana

It is very difficult to understand the exported file without a packet ID. Please include this basic feature required for logic.


  • E
Avatar

Tim

(#63265)
"The second column contains a SPI packet counter.
With the new version 2.3.25, this packet counter remains 0"


  • N
Avatar

Tim

(#61790)
"I am using salea logig version 2.3.30
and when i export the i2c log as text
packet id is always zero"


Avatar

Tim

(#61766)
"Exporting SPI data, packet_id is always 0, whilst logic 1 incremented packet_id for each succesive chip select cycle. The numbering in the export allows for post data processing of the data dump (reconstruct an entire eeprom memory for example with a script)"


Avatar

Tim

(#61060)
"Hello. I have a question about SPI txt logging on saleae 2.3.28. If I export SPI data to txt, there is 'Packet ID' data on txt. When I export txt on saleae 1.2.18, there is 'Packet ID' from 0 to 1,2,3, and so on. BUT, On saleae 2.3.28, 'Packet ID' data are all 'zero'. What is the different?. Please let me know. Thanks"


Avatar

Tim

github.com/saleae/spi-analyzer/issues/10
"In the transcript we see only the bytes send. Will be better to have a possibility to detect each transfert.
...
@timreyes already points the issue, he proposes to add "packet id"
...
The probleme happen when you export all the analyzer together"