@mrlambchop ,
Hi,
I’m not familiar with Qualcomm/Quectel modems at all until now with a Particle Tachyon purchase, So, on a little discovery and no doubt there’ll be a few surprises along the way. 
Other very well known modem vendors provide real-time modem trace tools for their SoCs for free, with export to Wireshark. Qualcomm QXDM licence cost is not only far to expensive but subscription based. Also, it’s almost impossible to find out the QXDM cost!
Luckily Open Source comes to the rescue yet again!
As we’re waiting for Particle to release the Tachyon Debugger board, the online documentation seem to imply that the Tachyon’s debug interface uses Qualcomm Diag protocol, i.e. QCDM (Qualcomm Diagnostic Monitor).
Is this correct? Thanks.
Hey zpm1066
Request is into the team to document this in the developer docs and I’ll loop back how to turn it on!
Thanks
Nick.
And… we just updated the documentation around the Qualcomm debug interface, which allows you to collect diagnostic logs directly on the device. You can find that here:
We’ll be updating the docs shortly to include guidance for exposing QXDM over USB. This involves setting up a USB composite device, so it’s a bit more involved, but hopefully useful for experimentation.
In terms of QXDM, I’ll leave you to explore that side of the house or utilize Qualcomm’s tools at createpoint.qualcomm.com .
Hope that is good enough to get started with!
Thanks
Nick.
1 Like
Thanks @mrlambchop . Much appreciated!
Hopefully QCSuper (pisec) will work without any additional support.
Have you tried using it?
Hi @mrlambchop ,
I’ve received a Tachyon Debug board today. It looks to be a pretty useful board and works fine in exposing the MCU and Linux console ports.
How do I setup a USB composite device to enable QXDM over USB?
Is this the same as what is referred to as the Qualcomm Diag protocol / QCDM (Qualcomm Diagnostic Monitor?
Cheers!
Hi @mrlambchop ,
I’ve been exploring the MCU debug commands. Most commands seem to be fairly straight forward and are very useful to control the modem, LED patterns, MCU GPIO, reboot MCU hard/soft, power control/status, get/set configuration, etc.
I'm keen to use the Qualcomm DIAG protocol (QCDM
) that can be exposed on the MCU debug port, via the open-source QCSuper
tool (here) , in place of the vendor Windows QXDM client
provided by Qualcomm.
QCSuper allows to capture raw radio frames and layer 3. The latter is the most important for Wireshark
live and/or PCAP
capture analysis.
Attempted to switch on the diagnostic mode using commandsDIAG
, 560D_DBG
, and also AT$QCDMG
. The AT
command was accepted as OK
but there was nothing at the MCU USB port.
Currently, when DIAG
is enabled, only battery and uptime info are output in a loop.
-
How is QCDM enabled on the MCU USB port?
-
Can you share more details on the commands accessible from the MCU USB port (other than the current ‘help’ page)?
-
Could you please provide a link to the Quectel SG560D-xx AT Commands Manual
or a list of SG560D AT commands that Particle currently supports?
I haven’t been able to find the SG560D
AT Commands Manual at their website.
Cheers!
@mrlambchop , @BDub ,
Do you have any updates on how the DIAG USB port
can be exposed so that QCSuper
, a Qualcomm DIAG protocol tool, can be used for live network traffic analysis in Wireshark
?
Using particle-cell-qxdm
script (which utilizes the Qualcomm’s proprietary diag_mdlog
binary to store DIAG logs on the filesystem) to generate qmdl
logs and their conversion to pcap
files for analysis in Wireshark is straightforward using SCAT.
Can a modified version of the particle-cell-qxdm
script be used for live network traffic analysis, without the need to use the DIAG USB port?
Can the DIAG protocol be used to generate pcapng
files, with the raw 2G/3G/4G (Layer 3), AT commands & IP traffic as a single data stream or is it a case of getting them separately as diag_log.qmdl
, particle-tachyon-rild.log
and tcpdump.log
files?
btw - With other vendor modems, I can easily get live modem traces with LTE, IP and AT traffic in Wireshark and capture them as pcapng
files.
Will you be documenting the supported AT commands and provide a link to the SG560D
AT Commands Manual?
Cheers!
@mrlambchop , @BDub ,
Any updates on the above questions? Thanks.