nRF Sniffer for 802.15.4 doesn't appear on Wireshark interface

I am struggling to see nRF Sniffer for 802.15.4 as an interface in the Wireshark interface list under the startup welcome screen. I am using nRF62840-Dongle and flashed it by utilizing the nrf802154_sniffer_dongle.hex available under the GitHub nRF-Sniffer-for-802.15.4 repository. I didn't find a specific binary for nRF62840-Dongle device there.

  • Since I flashed the nRF62840-Dongle device using a mismatched binary nrf802154_sniffer_dongle.hex, is it the main cause of the issue? If so, where do I get the correct binary for the nRF62840-Dongle device?

I have Python 3 installation with Homebrew including Pip 3. I have listed the relevant installation path in the following:

  • which pythonpython not found
  • which pip/usr/local/bin/pip
  • which python3/usr/local/bin/python3
  • which pip3: /usr/local/bin/pip3

I installed pyserial using pip3 install pyserial. I copied the nrf802154_sniffer.py file under the ~/.config/wireshark/extcap location which is a Personal Extcap path.

When running the python3 nrf802154_sniffer.py --extcap-interfaces command, it outputs the following valid confirmation:

extcap {version=0.7.2}{help=https://github.com/NordicSemiconductor/nRF-Sniffer-for-802.15.4}{display=nRF Sniffer for 802.15.4}
interface {value=/dev/cu.usbmodemF1BD057D01BB1}{display=nRF Sniffer for 802.15.4}
control {number=6}{type=button}{role=logger}{display=Log}{tooltip=Show capture log}

So, what am I missing? Why nRF Sniffer for 802.15.4 interface isn't appearing on the Wireshark Custom Interface list?

Parents
  • Hi,

    I assume you meant nRF52840-Dongle? The firmware named "nrf802154_sniffer_dongle.hex" is the correct file to use with this dongle. We do not have other dongles that support IEEE 802.15.4. The output from the "--extcap-interfaces" command also indicates that the sniffer firmware is found and working correctly.

    I do not have too much experience with MacOS, but I assume this is caused by the missing "python" application. Can you try to change the first line of the script from "python" to "python3", or to create a symbolic link from python3 to python?

    Best regards,
    Jørgen

  • Did you try both suggestions?

    Have you tried restarting Wireshark and reboot the computer?

    Which Python 3 version are you using?

  • Also, i have installed wireshark using rpm and dont build using source. Is it mandatory to build using source for linux machine?

    I hope nRF dongle works with tshark right?

    I will re-look at the link do if any steps missing

    Why wireshark -D is not listing nrf dongle... i can see in /dev/serial/by-id/USB-Nordic dongle

    Also, in the above link Installing nRF Sniffer for 802.15.4which i didnt follow or didnt find is

    • Install the nRF Sniffer capture plugin.

    Could you guide me plug in w.r.t linux machine what should be done? I didn find any shell script similar to bat file in windows?

  • JANC said:
    Also, i have installed wireshark using rpm and dont build using source. Is it mandatory to build using source for linux machine?

    No, I recommend using a package manager for installing wireshark.

    JANC said:
    Could you guide me plug in w.r.t linux machine what should be done? I didn find any shell script similar to bat file in windows?

    From https://infocenter.nordicsemi.com/index.jsp?topic=%2Fug_sniffer_802154%2FUG%2Fsniffer_802154%2Fintro_802154.html :

  • I see, What is package manager. Can you share the link for the same? That will help me.

    Also regarding nrf802.15.4_sniffer.py --extcap-interfaces - does display the characters as show in your pic. The only thing missing is i am using rpm wireshark version 2.1.1.

    Does nrf dongle support for wireshark 2.1.1?

    [root@pc12rve3 nrf802154_sniffer]# python3 nrf802154_sniffer.py --extcap-interfaces
    extcap {version=0.7.2}{help=github.com/.../nRF-Sniffer-for-802.15.4}{display=nRF Sniffer for 802.15.4}
    interface {value=/dev/ttyACM0}{display=nRF Sniffer for 802.15.4}
    control {number=6}{type=button}{role=logger}{display=Log}{tooltip=Show capture log}
    [root@pc12rve3 nrf802154_sniffer]#

    But i dont see the device in wireshark -D interfaces

    [root@pc12rve3 nrf802154_sniffer]# sudo tshark -i /dev/ttyACM0
    Running as user "root" and group "root". This could be dangerous.
    Capturing on '/dev/ttyACM0'
    tshark: The capture session could not be initiated on interface '/dev/ttyACM0' (/dev/ttyACM0: SIOCETHTOOL(ETHTOOL_GET_TS_INFO) ioctl failed: No such device).
    Please check to make sure you have sufficient permissions, and that you have the proper interface or pipe specified.
    0 packets captured

  • JANC said:
    I see, What is package manager. Can you share the link for the same? That will help me.

    https://itsfoss.com/package-manager/

    JANC said:
    But i dont see the device in wireshark -D interfaces

    Do you see anything in the Wireshark GUI?

    JANC said:
    [root@pc12rve3 nrf802154_sniffer]# sudo tshark -i /dev/ttyACM0
    Running as user "root" and group "root". This could be dangerous.

    Try to run this as a user and not as root.

    Which firmware do you run on the dongle?

  • Hi,

    Yes I am using RPM package manager and installed the wireshark.

    GUI also doesn't show up the interfaces. But the usb is enumerated as /dev/ttyACM0.

    Dongle firmware is loaded in the dongle nrf802154_sniffer_dongle.hex was loaded. The same dongle captures packets in windows platform.

    The issue is only with Linux plactform.

    Does nrf dongle work on FC25 kernel version 4.8.6, wireshark version 2.0.1?

    I am blocked because of this, could you let me know what else should be checked?

    When i run the python file, 

    [root@pc12rve3 nrf802154_sniffer]# python3 nrf802154_sniffer.py --extcap-interfaces
    extcap {version=0.7.2}{help=github.com/.../nRF-Sniffer-for-802.15.4}{display=nRF Sniffer for 802.15.4}
    interface {value=/dev/ttyACM0}{display=nRF Sniffer for 802.15.4}
    control {number=6}{type=button}{role=logger}{display=Log}{tooltip=Show capture log}
    [root@pc12rve3 nrf802154_sniffer]#

    The output is as expected, then why the interfaces is not listed.

Reply
  • Hi,

    Yes I am using RPM package manager and installed the wireshark.

    GUI also doesn't show up the interfaces. But the usb is enumerated as /dev/ttyACM0.

    Dongle firmware is loaded in the dongle nrf802154_sniffer_dongle.hex was loaded. The same dongle captures packets in windows platform.

    The issue is only with Linux plactform.

    Does nrf dongle work on FC25 kernel version 4.8.6, wireshark version 2.0.1?

    I am blocked because of this, could you let me know what else should be checked?

    When i run the python file, 

    [root@pc12rve3 nrf802154_sniffer]# python3 nrf802154_sniffer.py --extcap-interfaces
    extcap {version=0.7.2}{help=github.com/.../nRF-Sniffer-for-802.15.4}{display=nRF Sniffer for 802.15.4}
    interface {value=/dev/ttyACM0}{display=nRF Sniffer for 802.15.4}
    control {number=6}{type=button}{role=logger}{display=Log}{tooltip=Show capture log}
    [root@pc12rve3 nrf802154_sniffer]#

    The output is as expected, then why the interfaces is not listed.

Children
Related