Skip to content
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Development
  3. Wireless nRF24L01+ sniffer for MySensors
  • Getting Started
  • Controller
  • Build
  • Hardware
  • Download/API
  • Forum
  • Store

Wireless nRF24L01+ sniffer for MySensors

Scheduled Pinned Locked Moved Development
omgsnifferwiresharknrf24l01+
108 Posts 19 Posters 70.0k Views 18 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • YveauxY Offline
    YveauxY Offline
    Yveaux
    Mod
    wrote on last edited by Yveaux
    #1

    Ok, brace yourself! :zap:

    I finally had the time to write on my blog about the wireless network sniffer I've been working on lately.
    For the impatient see:

    • http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-1.html
    • http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-2.html
    • http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-3.html

    This wireless sniffer allows you to capture traffic on air between multiple nodes of your MySensors network and is able to even capture packets with invalid CRC Values. The amount of CRC errors gives a fair indication of link quality, which is not provided by the nRF24.

    The sniffer in action:
    http://www.youtube.com/embed/wxjxm0LnkAk

    Actual capturing is performed by an nRF24L01+ module connected to an Arduino (we all known how to do that ;-) ). No other hardware is required.

    A small piece of software (currently only for Windows, sorry @hek) reads the packet data from the sniffer and forwards it to Wireshark, a network protocol analyzer.
    Wireshark then allows you to inspect the packages from high-level down to the individual bits, filter by content, and analyze statistics.
    Details are all in the blog posts. Last post in this series, which is yet to be written, will dive into using Wireshark and getting useful information from it.
    I didn't want to keep this tool to myself until finally finished and documented, so there can (will?) still be some bugs left...

    Please discuss any issues/ideas/suggestions in here or in my blog.

    Happy sniffin' to all of you!

    http://yveaux.blogspot.nl

    marceltrapmanM DammeD 2 Replies Last reply
    5
    • hekH Offline
      hekH Offline
      hek
      Admin
      wrote on last edited by
      #2

      Cool. You must start collecting some statistics on link quality for different nrf-antenna layouts/models.

      YveauxY 1 Reply Last reply
      0
      • hekH hek

        Cool. You must start collecting some statistics on link quality for different nrf-antenna layouts/models.

        YveauxY Offline
        YveauxY Offline
        Yveaux
        Mod
        wrote on last edited by
        #3

        @hek with this tool anybody can do it!

        http://yveaux.blogspot.nl

        1 Reply Last reply
        0
        • YveauxY Yveaux

          Ok, brace yourself! :zap:

          I finally had the time to write on my blog about the wireless network sniffer I've been working on lately.
          For the impatient see:

          • http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-1.html
          • http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-2.html
          • http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-3.html

          This wireless sniffer allows you to capture traffic on air between multiple nodes of your MySensors network and is able to even capture packets with invalid CRC Values. The amount of CRC errors gives a fair indication of link quality, which is not provided by the nRF24.

          The sniffer in action:
          http://www.youtube.com/embed/wxjxm0LnkAk

          Actual capturing is performed by an nRF24L01+ module connected to an Arduino (we all known how to do that ;-) ). No other hardware is required.

          A small piece of software (currently only for Windows, sorry @hek) reads the packet data from the sniffer and forwards it to Wireshark, a network protocol analyzer.
          Wireshark then allows you to inspect the packages from high-level down to the individual bits, filter by content, and analyze statistics.
          Details are all in the blog posts. Last post in this series, which is yet to be written, will dive into using Wireshark and getting useful information from it.
          I didn't want to keep this tool to myself until finally finished and documented, so there can (will?) still be some bugs left...

          Please discuss any issues/ideas/suggestions in here or in my blog.

          Happy sniffin' to all of you!

          marceltrapmanM Offline
          marceltrapmanM Offline
          marceltrapman
          Mod
          wrote on last edited by
          #4

          @Yveaux said:

          A small piece of software currently only for Windows

          What language, tool did you create this with?

          Maybe I can help making it either multi platform (Java or Xojo) or Mac (Cocoa)...

          Fulltime Servoy Developer
          Parttime Moderator MySensors board

          I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
          I have a FABtotum to print cases.

          YveauxY 1 Reply Last reply
          0
          • marceltrapmanM marceltrapman

            @Yveaux said:

            A small piece of software currently only for Windows

            What language, tool did you create this with?

            Maybe I can help making it either multi platform (Java or Xojo) or Mac (Cocoa)...

            YveauxY Offline
            YveauxY Offline
            Yveaux
            Mod
            wrote on last edited by
            #5

            @marceltrapman it's written in C (got a cpp extension on visual studio...) but builds heavily on Windows api for serial comms and named pipe interfacing.

            http://yveaux.blogspot.nl

            marceltrapmanM 1 Reply Last reply
            0
            • daulagariD Offline
              daulagariD Offline
              daulagari
              Hero Member
              wrote on last edited by
              #6

              Impressive project, that indeed deserves the title "Embedded Innovation" :thumbsup:

              Did dead the blog posts, very good documented, good to have this information.

              I am eager to see more of the Wireshark protocol dissector/analyzer. I find looking at traces almost always the best way to get familiar with protocols.

              1 Reply Last reply
              0
              • YveauxY Yveaux

                @marceltrapman it's written in C (got a cpp extension on visual studio...) but builds heavily on Windows api for serial comms and named pipe interfacing.

                marceltrapmanM Offline
                marceltrapmanM Offline
                marceltrapman
                Mod
                wrote on last edited by
                #7

                @Yveaux hmm ok. Will check it out first on my Windows box.

                Fulltime Servoy Developer
                Parttime Moderator MySensors board

                I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                I have a FABtotum to print cases.

                1 Reply Last reply
                0
                • ch3b7C Offline
                  ch3b7C Offline
                  ch3b7
                  wrote on last edited by
                  #8

                  Very good job man! i have a question! can i use a vb.net program to send commands from the gateway (conected via usb) to sensors. if y use de command SERIAL.WRITE (in vb.net) dont work!

                  YveauxY 1 Reply Last reply
                  0
                  • ch3b7C ch3b7

                    Very good job man! i have a question! can i use a vb.net program to send commands from the gateway (conected via usb) to sensors. if y use de command SERIAL.WRITE (in vb.net) dont work!

                    YveauxY Offline
                    YveauxY Offline
                    Yveaux
                    Mod
                    wrote on last edited by
                    #9

                    @ch3b7 better create a new topic for this, but I don't see why it wouldn't be possible

                    http://yveaux.blogspot.nl

                    1 Reply Last reply
                    0
                    • marceltrapmanM Offline
                      marceltrapmanM Offline
                      marceltrapman
                      Mod
                      wrote on last edited by marceltrapman
                      #10

                      @Yveaux Do you have any idea why I get this error when compiling:

                      NRF24_sniff.ino: In function 'void loop()':
                      NRF24_sniff.ino:287:20: error: 'class CircularBuffer<_NRF24_packet_t>' has no member named 'clear'
                      

                      I am using Arduino 1.5.7 (but 1.0.5 generates the same error).
                      As mentioned in your post I created a separate 'Arduino Sniffer' folder with its own libraries in there.

                      Any idea what I am doing wrong?

                      Fulltime Servoy Developer
                      Parttime Moderator MySensors board

                      I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                      I have a FABtotum to print cases.

                      YveauxY 1 Reply Last reply
                      0
                      • marceltrapmanM marceltrapman

                        @Yveaux Do you have any idea why I get this error when compiling:

                        NRF24_sniff.ino: In function 'void loop()':
                        NRF24_sniff.ino:287:20: error: 'class CircularBuffer<_NRF24_packet_t>' has no member named 'clear'
                        

                        I am using Arduino 1.5.7 (but 1.0.5 generates the same error).
                        As mentioned in your post I created a separate 'Arduino Sniffer' folder with its own libraries in there.

                        Any idea what I am doing wrong?

                        YveauxY Offline
                        YveauxY Offline
                        Yveaux
                        Mod
                        wrote on last edited by
                        #11

                        @marceltrapman I recently added the clear method to the circular buffer implementation. Maybe I forgot to commit to the sniffer repository... I'm mobile right now, so maybe you can check the circular buffer component in the root of my GitHub account. If this does have the clear method you should copy that over the one from the sniffer repo.
                        I'll check things tonight....

                        http://yveaux.blogspot.nl

                        YveauxY 1 Reply Last reply
                        0
                        • YveauxY Yveaux

                          @marceltrapman I recently added the clear method to the circular buffer implementation. Maybe I forgot to commit to the sniffer repository... I'm mobile right now, so maybe you can check the circular buffer component in the root of my GitHub account. If this does have the clear method you should copy that over the one from the sniffer repo.
                          I'll check things tonight....

                          YveauxY Offline
                          YveauxY Offline
                          Yveaux
                          Mod
                          wrote on last edited by
                          #12

                          @Yveaux damn, forget it... The latest version is only on my development pc then... I'll update the repo tonight.

                          http://yveaux.blogspot.nl

                          marceltrapmanM 1 Reply Last reply
                          0
                          • YveauxY Yveaux

                            @Yveaux damn, forget it... The latest version is only on my development pc then... I'll update the repo tonight.

                            marceltrapmanM Offline
                            marceltrapmanM Offline
                            marceltrapman
                            Mod
                            wrote on last edited by
                            #13

                            @Yveaux said:

                            @Yveaux damn, forget it... The latest version is only on my development pc then... I'll update the repo tonight.

                            I had already 'sniffed' the libraries and could not find it but I always think it is me doing something wrong :)

                            No problem, the rest is installed.
                            Uploading the sketch was the last thing to do!

                            Fulltime Servoy Developer
                            Parttime Moderator MySensors board

                            I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                            I have a FABtotum to print cases.

                            YveauxY 1 Reply Last reply
                            0
                            • marceltrapmanM marceltrapman

                              @Yveaux said:

                              @Yveaux damn, forget it... The latest version is only on my development pc then... I'll update the repo tonight.

                              I had already 'sniffed' the libraries and could not find it but I always think it is me doing something wrong :)

                              No problem, the rest is installed.
                              Uploading the sketch was the last thing to do!

                              YveauxY Offline
                              YveauxY Offline
                              Yveaux
                              Mod
                              wrote on last edited by
                              #14

                              @marceltrapman Good to hear you got that far!
                              I knew I missed something... Now it should be fixed.
                              Please try again!

                              http://yveaux.blogspot.nl

                              marceltrapmanM 1 Reply Last reply
                              0
                              • YveauxY Yveaux

                                @marceltrapman Good to hear you got that far!
                                I knew I missed something... Now it should be fixed.
                                Please try again!

                                marceltrapmanM Offline
                                marceltrapmanM Offline
                                marceltrapman
                                Mod
                                wrote on last edited by
                                #15

                                @Yveaux said:

                                @marceltrapman Good to hear you got that far!
                                I knew I missed something... Now it should be fixed.
                                Please try again!

                                Thank you, I will check out your updated sketch and load it into my Arduino.
                                Not sure that I will have the time to test it tonight though (but I must admit that I am a bit restless :) ).

                                Fulltime Servoy Developer
                                Parttime Moderator MySensors board

                                I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                                I have a FABtotum to print cases.

                                1 Reply Last reply
                                0
                                • marceltrapmanM Offline
                                  marceltrapmanM Offline
                                  marceltrapman
                                  Mod
                                  wrote on last edited by
                                  #16

                                  Compiling and uploading went well. Now the rest :)

                                  Fulltime Servoy Developer
                                  Parttime Moderator MySensors board

                                  I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                                  I have a FABtotum to print cases.

                                  YveauxY 1 Reply Last reply
                                  0
                                  • marceltrapmanM marceltrapman

                                    Compiling and uploading went well. Now the rest :)

                                    YveauxY Offline
                                    YveauxY Offline
                                    Yveaux
                                    Mod
                                    wrote on last edited by
                                    #17

                                    @marceltrapman Apparently you're the first to build the 'thing', so thanks for pioneering!

                                    http://yveaux.blogspot.nl

                                    marceltrapmanM 1 Reply Last reply
                                    0
                                    • YveauxY Yveaux

                                      @marceltrapman Apparently you're the first to build the 'thing', so thanks for pioneering!

                                      marceltrapmanM Offline
                                      marceltrapmanM Offline
                                      marceltrapman
                                      Mod
                                      wrote on last edited by marceltrapman
                                      #18

                                      @Yveaux Not a problem, I like being a pioneer and I greatly appreciate the efforts you put into this :)

                                      I thought I had everything in order this afternoon.
                                      Installed Visual C++ Redistributable Packages for Visual Studio 2012 SP 4 but forgot to test...

                                      Right now, whatever I use 'Visual C++ Redistributable Packages for Visual Studio 2012 SP 4' or (for testing purposes) 'Visual C++ Redistributable Packages for Visual Studio 2013' both x64 I still see the error message 'The program can't start because MSVCR110.dll is missing...'.
                                      A restart should not be necessary but even a restart did not help.

                                      Uninstalling all packages and reinstalling did not help either.

                                      Any idea?

                                      Fulltime Servoy Developer
                                      Parttime Moderator MySensors board

                                      I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                                      I have a FABtotum to print cases.

                                      marceltrapmanM YveauxY 2 Replies Last reply
                                      0
                                      • marceltrapmanM marceltrapman

                                        @Yveaux Not a problem, I like being a pioneer and I greatly appreciate the efforts you put into this :)

                                        I thought I had everything in order this afternoon.
                                        Installed Visual C++ Redistributable Packages for Visual Studio 2012 SP 4 but forgot to test...

                                        Right now, whatever I use 'Visual C++ Redistributable Packages for Visual Studio 2012 SP 4' or (for testing purposes) 'Visual C++ Redistributable Packages for Visual Studio 2013' both x64 I still see the error message 'The program can't start because MSVCR110.dll is missing...'.
                                        A restart should not be necessary but even a restart did not help.

                                        Uninstalling all packages and reinstalling did not help either.

                                        Any idea?

                                        marceltrapmanM Offline
                                        marceltrapmanM Offline
                                        marceltrapman
                                        Mod
                                        wrote on last edited by
                                        #19

                                        For those following this topic I have not solved it but it could be related to this:
                                        Upgrade to 8.1 and stuff stops working (not what most people would call an "up"-grade).

                                        Fulltime Servoy Developer
                                        Parttime Moderator MySensors board

                                        I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                                        I have a FABtotum to print cases.

                                        marceltrapmanM 1 Reply Last reply
                                        0
                                        • marceltrapmanM marceltrapman

                                          For those following this topic I have not solved it but it could be related to this:
                                          Upgrade to 8.1 and stuff stops working (not what most people would call an "up"-grade).

                                          marceltrapmanM Offline
                                          marceltrapmanM Offline
                                          marceltrapman
                                          Mod
                                          wrote on last edited by
                                          #20

                                          OK, for those of you on Windows 8.1 this will probably not work 'out of the box'.

                                          For me, a Mac user, the following solution makes complete sense :-P

                                          You have to install or repair Microsoft Essentials and the dll will be available.
                                          Don't ask me why but it works!

                                          Fulltime Servoy Developer
                                          Parttime Moderator MySensors board

                                          I use Domoticz as controller for Z-Wave and MySensors (previously Indigo and OpenHAB).
                                          I have a FABtotum to print cases.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          4

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular