-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Does not run on 2 minute cycles #59
Comments
Seems to run ok for me, but no spots: ./rtlsdr_wsprd -f 40m -d 2 -c x -l x -i 1 -n 4 Using device 1: Generic RTL2832U OEM Starting rtlsdr-wsprd (2021-12-07, 19:35z) -- Version 0.3
Allocating 15 zero-copy buffers |
Well, I guess I broke something during the refactor or some update... The next step is to include some testing in the build pipeline :) @mkarliner @sm3ulc Thanks for these reports, I will investigate. |
Note to the future myself: Diff back-end side: https://github.com/Guenael/rtlsdr-wsprd/blob/main/wsprd/wsprsim_utils.c#L123
< call6=strtok(NULL," ");
< *n=pack_call(call6);
---
> *n = pack_call(strtok(NULL, " "));
https://github.com/Guenael/rtlsdr-wsprd/blob/main/wsprd/wsprsim_utils.c#L300
< unsigned int nencoded=162;
---
> unsigned int nencoded = (nbytes * 2 * 8); // This is how much encode() writes
https://github.com/Guenael/rtlsdr-wsprd/blob/main/wsprd/wsprd.c#L477
< } else {
< fhash = fopen("hashtable.txt", "w+");
---
> fclose(fhash); |
Rollback to test/check this issue : #59 Note : Will generate an error back-end side, by the code checker.
@sm3ulc @mkarliner I rollback a change in the backend, could you double check and also try with -S -Q options? Thanks! |
Note: Q needs "argument". ./rtlsdr_wsprd -f 40m -d 2 -c x -l x -i 1 -n 4 -S -Q q Using device 1: Generic RTL2832U OEM Starting rtlsdr-wsprd (2021-12-08, 07:25z) -- Version 0.3
Allocating 15 zero-copy buffers |
Thanks for your reports. I will write a self-test function, it will be easier. |
I made an update, with to new functions:
The decoder works fine, so I guess it's an issue with the rtl interface code. Anyway, additional help appreciated to test this version (I don't have any radio setup for now). |
I've tried -t which says it works |
I hope this issue is solved now.
Thanks!! |
I couldn't get a recording to work on the RPi, here is one from Debian (no spots Github won't take the .i suffix, so I've renamed this to .zip - hope this works. Also, on Debian, I'm getting no decodes despite my WSPR beacon being at the other end of the garden ... |
@mkarliner Ok, I took a look on this sample, and there is no visible signals (only white gaussian noise). But I also double checked the command your started on your previous screenshot, and I'm not sure what you trying to do. Quick questions:
Thanks |
For any further test, please use a Linux x86 machine, and not a Raspberry Pi.
|
Yes, you are righ about me missing out the -d 2 on my last test - my bad. I assume that each two minutes, it should either report no spots or a list of spots, I'll see what I can do to get a decent antenna feed close to the x86 box. |
I conducted some other test, on a RPi 2 & 3, with a legacy version (0.2) and a new one. For both, CPU processing is in the roof, for both
I'm confuse, nothing changed, it my legacy app, and this app worked fine on a Raspberry PI 1!! I will reinstall an old version RPi OS, 2015/2017 - not sure, and double check if there is any improvement. |
I tried exactly the same thing yesterday! This explains the timing issues. |
@mkarliner Some hope!! I finally found the issue 🎉 I will continue my tests to try to identify the differences between this old version of the OS and the new one. FYI, I used this image: And if you take a look on the official web page, there is two tracks:
I guess the raspios oldstable will work, but I will make a test. I will also put this on the README page, a section about the OS supported, definitely useful :) |
The decoder works fine with .c2 files saved by wsjt-x if we skip the first 26 bytes, eg with dd: I suggest that you make the read and write options of rtlsd_wsprd use the same format as wsjt-x for easier testing See writec2file() that writes a header with filename, duration in minutes (2 or 15 I think) and dial frequency. https://sourceforge.net/p/wsjt/wsjtx/ci/master/tree/lib/wsprd/wsprd.c#l657
In addition, the static array for the filename in rtlsd_wsprd.h is be too small to hold the 41 bytes of ~/.local/share/WSJT-X/save/211212_2144.c2 and I I suggest that you store the value of the optarg pointer instead. |
@dforsi yep, good idea, for both points. I add this in my todo-list :) |
Some updates, I ran a couple of tests, and I found something interesting. Before this update, the OS was booted with a kernel Details below:
$ file /lib/arm-linux-gnueabihf/ld-2.28.so
/lib/arm-linux-gnueabihf/ld-2.28.so: ELF 32-bit LSB pie executable, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=fb85e699c11db06c7b24f74de2cdada3146442a8, stripped
file /lib/arm-linux-gnueabihf/libpthread-2.28.so
/lib/arm-linux-gnueabihf/libpthread-2.28.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, BuildID[sha1]=7958164ddcdf86b06e4a06700f80a4655a80c40e, for GNU/Linux 3.2.0, not stripped
$ uname -a
Linux raspberrypi 4.19.50-v7+ #896 SMP Thu Jun 20 16:11:44 BST 2019 armv7l GNU/Linux
$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
$ file /lib/arm-linux-gnueabihf/ld-2.28.so
/lib/arm-linux-gnueabihf/ld-2.28.so: ELF 32-bit LSB pie executable, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=7ad37bc5cbf163f01d8877a20da3b9d660c2dc31, stripped
file /lib/arm-linux-gnueabihf/libpthread-2.28.so
/lib/arm-linux-gnueabihf/libpthread-2.28.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, BuildID[sha1]=befc81c22bb8a7e6d9899ebec62ecf501bec8678, for GNU/Linux 3.2.0, not stripped
$ uname -a
Linux raspberrypi 5.10.63-v7+ #1496 SMP Wed Dec 1 15:58:11 GMT 2021 armv7l GNU/Linux
$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs" If you just want to see On my side, I will use this image to finish my refactor, and add some features. |
@IZ7BOJ @dforsi @sm3ulc @mkarliner : Alfredo (IZ7BOJ) found the root cause of this issue and provided a solution. Based on Alfredo notes on our Slack channel (BTW, I can invite you on my Slack if you want, it's all about Radio, programming stuff & developing some hardware for my next beacon project.) you can do this on your actual distro to fix the issue:
sudo apt-get purge --auto-remove librtlsdr-dev
apt-get install cmake
git clone https://github.com/osmocom/rtl-sdr
cd rtl-sdr
mkdir -p make
cd make
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DDETACH_KERNEL_DRIVER=ON -Wno-dev ..
make
sudo make install That's it. Thanks again Alfredo!! |
Hi all! I updated the doc, and made two release:
Let me know if it works for you. |
Hooray! |
It seems to be running a cycle of 3 or 4 minutes.
The text was updated successfully, but these errors were encountered: