Skip to content
Benjamin Vernoux edited this page Mar 27, 2025 · 4 revisions

HydraNFC V2 Sniffer Decoder

Overview

The HydraNFC V2 Sniffer Decoder v0.8.3 is an open source specialized protocol decoder for ISO14443A / MifareClassic NFC communications. It works with DSView & Sigrok/PulseView and is designed specifically for the HydraNFC Shield_V2 hardware.

See repository https://github.com/hydrabus/hydranfc_v2_sniffer_decoder

HydraNFC v2: Real-Time NFC Sniffing & Cracking Powerhouse Video by Penthertz https://www.youtube.com/watch?v=2Cf_BwMrgbk

System Requirements

Hardware

  • HydraBus v1 + HydraNFC Shield v2 hardware

  • Compatible Logic Analyzer

    • DSLogic or Sigrok / PulseView-compatible hardware
    • Minimum 10MHz sampling rate ( >25MHz recommended)
    • Memory capacity for extended captures (we can captures hours of communication depending on RAM available in the computer and feature like RLE)
  • Positioning for NFC Sniffing

    • To successfully capture NFC communication, stack components in this specific order (from top to bottom):
      • NFC Tag (topmost position)
      • HydraNFC v2 Antenna (middle position)
      • NFC Reader Antenna (bottom position)
    • You can also try(depending on reader/tag):
      • HydraNFC v2 Antenna (topmost position)
      • NFC Tag (middle position)
      • NFC Reader Antenna (bottom position)
    • You can also try(depending on reader/tag):
      • HydraNFC v2 Antenna (topmost position)
      • NFC Reader Antenna (middle position)
      • NFC Tag (bottom position)
  • Signal Strength Considerations

    • Ensure good centering of all three components along the same vertical axis
    • Too far may result in weak signal capture with errors (on NFC Reader or and HydraNFC v2)
    • Adjust positioning incrementally while monitoring signal quality

Software Compatibility

  • PulseView v0.5 (libsigrokdecode v0.6 / Python 3.4)
  • DSView v1.3.2 (libsigrokdecode4DSL 0.6.0 / Python 3.6)

Hardware Setup

Logic Analyzer Connections

  • GND → HydraNFC v2 GND
  • Channel 0 → HydraNFC v2 ST25R3916 CSO pin (Digital Demodulation output)
  • Optional Channel 1 → HydraNFC v2 ST25R3916 CLK/PA5 (configured at 3.39MHz based on HydraNFC v2 NFC clock 27.12MHz)

Analyzer Configuration

  • Capture trigger on Channel 0 (CSO) with rising edge
  • Sampling rate: ≥10MHz (>25MHz recommended)
  • Configurable pre/post-trigger buffers

Installation Guide

Installing DSView

Windows Installation

  1. Download and install DSView

  2. Install the HydraNFC V2 Sniffer Decoder Plugin

    C:\Program Files\DSView\decoders\
    

Linux Installation

  1. Download and install DSView

  2. Install the HydraNFC V2 Sniffer Decoder Plugin

Installing PulseView (sigrok)

Windows Installation

  1. Download PulseView

  2. Install the HydraNFC V2 Sniffer Decoder Plugin

    C:\Program Files\sigrok\PulseView\share\libsigrokdecode\decoders\
    

Linux Installation

  1. Install PulseView Using Package Manager

    • For Ubuntu/Debian:
    sudo apt-get update
    sudo apt-get install pulseview sigrok
    • For Fedora:
    sudo dnf install pulseview sigrok
    • For Arch Linux:
    sudo pacman -S pulseview sigrok
  2. Install the HydraNFC V2 Sniffer Decoder Plugin

    /usr/share/libsigrokdecode/decoders

Start a capture

DSView

  1. Launch DSView
  2. Start a Capture (see the Hardware Setup section)
  3. Open "Decoder" panel
  4. Search for "hydranfc"
  5. The "HydraNFC V2 Sniffer" should appear in the list
    • Choose the channel corresponding to HydraNFC v2 ST25R3916 CSO pin (Digital Demodulation output)
    • Option "Time Tag in µs" can be changed to 1000 instead of default 10000 for some Tags like MifareClassic...
  6. If not visible, restart DSView or check the decoder path installation

PulseView

  1. Launch PulseView
  2. Start a Capture (see the Hardware Setup section)
  3. Click "Decoders" button
  4. Search for "hydranfc" in the decoder list
  5. The "HydraNFC V2 Sniffer" should appear in the list
    • Choose the channel corresponding to HydraNFC v2 ST25R3916 CSO pin (Digital Demodulation output)
    • Option "Time Tag in µs" can be changed to 1000 instead of default 10000 for some Tags like MifareClassic...
  6. If not visible, restart DSView or check the decoder path installation

Troubleshooting

Common Issues with DSView

  • Decoder not found: Ensure the plugin is copied to the correct directory
  • Dependency errors: Install missing dependencies using your package manager
  • Permission issues: Check file permissions of the decoder directory

Common Issues with PulseView

  • Missing Python environment: Ensure Python 3.4+ is installed and in your PATH
  • Library errors: Verify libsigrokdecode is properly installed
  • Decoder path issues: Set the SIGROKDECODE_DIR environment variable to your decoder directory

For additional support, please refer to the GitHub repository issues section: https://github.com/hydrabus/hydranfc_v2_sniffer_decoder/issues