Conversation
--messages-live mode, which prints MSG events--messages-live mode to print MSG events
--messages-live mode to print MSG events--messages-live module to print MSG events
|
Hello, Are there still changes expected to be added before merging? |
|
Yes, I have some refactoring locally that I never pushed. I'll try to get those posted tonight. Thanks! |
|
Ok, sorry for the long react time I have been on leave at P1 :) |
|
FYI QCSuper now uses the |
This doesn't currently allow sending a range of subsystem IDs, nor do we print the mask of each log message, making the mask piece of the argument difficult to determine. But it's a good start.
--messages-live module to print MSG events--messages-live module to print MSG events
|
Rebased to latest master and formatted each commit with ruff. Still have to push the refactorings. |
|
Hi! This PR has been open since 1 year, feel free to tell if you wish me to merge this as is to the master tree/release for the moment (If you want to refactor it later it should no be an issue, I'm working on another Diag-related app so I'm not touching substantially to QCSuper) |
I believe this is one of the main features of QXDM, but there's very little open-source support for it. The only projects I'm aware of are qc_debug_monitor, which works well but doesn't support USB modems or the new Qshrink4 terse message format, and nano-dm, which I couldn't get to work at all because of many hardcoded chipset-specific command strings.
QCSuper seems to be the best-maintained open-source DIAG tool around, so including this feature seems natural. It does require a fair bit of new code, including 1) a custom printf implementation to recombine the format string and argument values exposed by the protocol, and 2) a parser for Qualcomm's Qshrink and Qshrink 4 database file formats, which contain out-of-band format strings for "terse" messages and can often be found in device GPL dumps.
The code's not quite ready to merge, but it's good enough to review. Here's a screenshot of what the output looks like for the command

./qcsuper.py --usb-modem 04e8:685d:1:2 --messages-live --qdb qdsp6m.qdbon a Galaxy S10e, withqdsp6m.qdbsourced from the phone's GPL source: