Wireless nRF24L01+ sniffer for MySensors
-
Everything works now.
Did not see any packets coming in though but I remember having an issue with a couple of Uno's and I am not sure if this was one of them.
Anyway, I will do some more testing tomorrow.
Very exited :) -
Everything works now.
Did not see any packets coming in though but I remember having an issue with a couple of Uno's and I am not sure if this was one of them.
Anyway, I will do some more testing tomorrow.
Very exited :)@marceltrapman Great you got it working man!
In the meantime, please have a look at the last part I wrote, detailing the use of Wireshark and the sniffer: http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-3.htmlFor tonight I'm totally done with this sniffer -- Aaaarghhh! ;-)
Btw. Could you also post stuff you had to do to get it working (just a wrapup) to my blog, to keep stuff together? Thanks!
-
@marceltrapman Great you got it working man!
In the meantime, please have a look at the last part I wrote, detailing the use of Wireshark and the sniffer: http://yveaux.blogspot.nl/2014/07/nrf24l01-sniffer-part-3.htmlFor tonight I'm totally done with this sniffer -- Aaaarghhh! ;-)
Btw. Could you also post stuff you had to do to get it working (just a wrapup) to my blog, to keep stuff together? Thanks!
-
@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?
-
@marceltrapman said:
both x64
The console application is 32bits. I don't know if the 32 bits versions are included in the 64 bits installers...
@Yveaux said:
The console application is 32bits. I don't know if the 32 bits versions are included in the 64 bits installers...
That was not the issue...
Below is the wrap-up that I also posted on your blog:
There are 3 things that I bumped into though that I would like to share with you and those that decide to use the sniffer.
-
Immediately after starting** 'Nrf24Sniff.exe -P6'** (the rest is default in my case) I got this error message 'The program can't start because MSVCR110.dll is missing...'. It basically complains that 'Visual C++ Redistributable Packages for Visual Studio 2012 SP 4' is not installed but that is not true. After doing a bit of searching I found that I needed to** install or repair 'Microsoft Essentials'**.
Once this was done the program works as expected (don't ask me why, this must be pure MS genius). -
Once Wireshark was started like described I noticed that the Nrf24Sniff console window displayed a *'Wait for sniffer to restart' *message. The author mentions that this will only take a few seconds but in my case I actually needed to reset the Arduino for it to go away. No exception.
-
After creating the correct setup in Wireshark I expected data to show up but it did not. I wondered why and ran a complete test to see that the Ardiuno was ok, radio sufficiently powered etc. but that was all ok. I then re-read the article and found that the author says 'when monitoring MySensors 1.4beta traffic (at non-default 1Mb/s)'. I completely missed this and that caused the issue.The MySensors 1.4beta is set to 250b/s by default. Once I started the sniffer like 'Nrf24Sniff.exe -P6 -r2' everything works as expected.
Now I have to find some time to read the third article so that I understand what happens on my screen :)
Anyway, good stuff and a big thank you goes to @Yveaux ...
-
-
@Yveaux can you do me a favour ? colord blind people cannot read red on black... they represent 10% of the population...
Also, does your software runs under nano ;-)
-
@Yveaux can you do me a favour ? colord blind people cannot read red on black... they represent 10% of the population...
Also, does your software runs under nano ;-)
@Yveaux ah a vb programmer... you need to install the msvcr110.dll msvcr110.dll t to make it start with wine. (does not work with mono...)
then I have wireshark but I don't understand what to do next...
"Connect Wireshark to \.\pipe\wireshark to continue..." -
@epierre said:
Also, does your software runs under nano ;-)
I can't think of a reason why it would not work.
Just try (once you can read the blog :) ).@marceltrapman yes but for the reason just above I can't... had to select all the text to read...
mono Nrf24Sniff.exe Cannot open assembly 'Nrf24Sniff.exe': File does not contain a valid CIL image. -
@marceltrapman yes but for the reason just above I can't... had to select all the text to read...
mono Nrf24Sniff.exe Cannot open assembly 'Nrf24Sniff.exe': File does not contain a valid CIL image.@epierre said:
@marceltrapman yes but for the reason just above I can't... had to select all the text to read...
I was really... Joking with you :)
BTW I can imagine that trying to make this work with wine will give you all sorts of issues that are hard to comment on for those that don't use it.
-
@Yveaux said:
The console application is 32bits. I don't know if the 32 bits versions are included in the 64 bits installers...
That was not the issue...
Below is the wrap-up that I also posted on your blog:
There are 3 things that I bumped into though that I would like to share with you and those that decide to use the sniffer.
-
Immediately after starting** 'Nrf24Sniff.exe -P6'** (the rest is default in my case) I got this error message 'The program can't start because MSVCR110.dll is missing...'. It basically complains that 'Visual C++ Redistributable Packages for Visual Studio 2012 SP 4' is not installed but that is not true. After doing a bit of searching I found that I needed to** install or repair 'Microsoft Essentials'**.
Once this was done the program works as expected (don't ask me why, this must be pure MS genius). -
Once Wireshark was started like described I noticed that the Nrf24Sniff console window displayed a *'Wait for sniffer to restart' *message. The author mentions that this will only take a few seconds but in my case I actually needed to reset the Arduino for it to go away. No exception.
-
After creating the correct setup in Wireshark I expected data to show up but it did not. I wondered why and ran a complete test to see that the Ardiuno was ok, radio sufficiently powered etc. but that was all ok. I then re-read the article and found that the author says 'when monitoring MySensors 1.4beta traffic (at non-default 1Mb/s)'. I completely missed this and that caused the issue.The MySensors 1.4beta is set to 250b/s by default. Once I started the sniffer like 'Nrf24Sniff.exe -P6 -r2' everything works as expected.
Now I have to find some time to read the third article so that I understand what happens on my screen :)
Anyway, good stuff and a big thank you goes to @Yveaux ...
-
-
@Yveaux can you do me a favour ? colord blind people cannot read red on black... they represent 10% of the population...
Also, does your software runs under nano ;-)
@epierre said:
@Yveaux can you do me a favour ? colord blind people cannot read red on black... they represent 10% of the population...
What is red on black? Some coloring in Wireshark?
If so, I don't choose the colors, Wireshark does! I just mark it as 'warning'.
Have a look at Edit->Preferences->User Interface->Font and colors to see if you can change it to your likings.AH, now I see what you mean! The text on my blog :-)
Also, does your software runs under nano ;-)
I didn't test it, but don't see why it shouldn't!
-
@epierre said:
@Yveaux can you do me a favour ? colord blind people cannot read red on black... they represent 10% of the population...
What is red on black? Some coloring in Wireshark?
If so, I don't choose the colors, Wireshark does! I just mark it as 'warning'.
Have a look at Edit->Preferences->User Interface->Font and colors to see if you can change it to your likings.AH, now I see what you mean! The text on my blog :-)
Also, does your software runs under nano ;-)
I didn't test it, but don't see why it shouldn't!
-
@Yveaux said:
What is red on black? Some coloring in Wireshark?
It is your blog.
Mostly white on black but, when highlighted, also red on black... -
@Yveaux ah a vb programmer... you need to install the msvcr110.dll msvcr110.dll t to make it start with wine. (does not work with mono...)
then I have wireshark but I don't understand what to do next...
"Connect Wireshark to \.\pipe\wireshark to continue..." -
@epierre It's not written in vb! Shame on your! It's pure hardcore C!
If you get it to run on Linux (?) using Wine then let us know please! -
@Yveaux yes I did... but I stopped here not knowing how to do it:
Connect Wireshark to \.\pipe\wireshark to continue...@epierre It's in the blog: start a new command window and navigate to the wiresrak directory (c:\program files\wireshark)
Then run:wireshark -k -i \\.\pipe\wiresharkAnd it should automatically connect to the named pipe (which is written to from the nrf24sniff.exe tool) and start capturing.
-
@epierre It's in the blog: start a new command window and navigate to the wiresrak directory (c:\program files\wireshark)
Then run:wireshark -k -i \\.\pipe\wiresharkAnd it should automatically connect to the named pipe (which is written to from the nrf24sniff.exe tool) and start capturing.
-
@Yveaux yes but through wine are they POSIX compliant so my linux wireshark can connect to it ?
@epierre I guess not, as Linux uses files as named pipes and \.\pipe\wireshark is not a regular Linux file path...
Furthermore the Wireshark dissectors should compile on Linux, but I didn't test it.
You could try to also run windows Wireshark through Wine, maybe the named pipes will pass the data along just fine... -
@Yveaux said:
The console application is 32bits. I don't know if the 32 bits versions are included in the 64 bits installers...
That was not the issue...
Below is the wrap-up that I also posted on your blog:
There are 3 things that I bumped into though that I would like to share with you and those that decide to use the sniffer.
-
Immediately after starting** 'Nrf24Sniff.exe -P6'** (the rest is default in my case) I got this error message 'The program can't start because MSVCR110.dll is missing...'. It basically complains that 'Visual C++ Redistributable Packages for Visual Studio 2012 SP 4' is not installed but that is not true. After doing a bit of searching I found that I needed to** install or repair 'Microsoft Essentials'**.
Once this was done the program works as expected (don't ask me why, this must be pure MS genius). -
Once Wireshark was started like described I noticed that the Nrf24Sniff console window displayed a *'Wait for sniffer to restart' *message. The author mentions that this will only take a few seconds but in my case I actually needed to reset the Arduino for it to go away. No exception.
-
After creating the correct setup in Wireshark I expected data to show up but it did not. I wondered why and ran a complete test to see that the Ardiuno was ok, radio sufficiently powered etc. but that was all ok. I then re-read the article and found that the author says 'when monitoring MySensors 1.4beta traffic (at non-default 1Mb/s)'. I completely missed this and that caused the issue.The MySensors 1.4beta is set to 250b/s by default. Once I started the sniffer like 'Nrf24Sniff.exe -P6 -r2' everything works as expected.
Now I have to find some time to read the third article so that I understand what happens on my screen :)
Anyway, good stuff and a big thank you goes to @Yveaux ...
@marceltrapman said:
- Once Wireshark was started like described I noticed that the Nrf24Sniff console window displayed a *'Wait for sniffer to restart' *message. The author mentions that this will only take a few seconds but in my case I actually needed to reset the Arduino for it to go away. No exception.
I changed the nrf24snif.exe to explicitly reset the Arduino (works for Uno) by lowering DTR/RTS lines. Should work for (most?) other Arduino's too, but I don't have any other to test one.
For me it seems to work now. Could you test if this works stable for you too?Oh yeah, I added support for some status leds to the Sniffer, connected to A0..A4 and via resistors to GND:
- A0 sniffer monitoring (LED turns off during reset)
- A1 sniffer receiving a packet
- A2 sniffer transmitting (serially) a packet
- A3 new configuration received
- A4 buffer overflow
-