krakenrf / krakensdr_doa Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
Hi,
We installed the kraken software via the script
wget https://raw.githubusercontent.com/krakenrf/krakensdr_docs/main/install_scripts/krakensdr_x86_install_doa_pr.sh
sudo chmod +x krakensdr_x86_install_doa_pr.sh
./krakensdr_x86_install_doa_pr.sh
first time we ran the software the kraken connected and the connection status was green.
After trying the second time and following that the Connection Status shows Disconnected on the Web UI.
We tried restarting the system and retry but that did not help.
lsusb
shows the devices and running kraken_test
seems to recognize the device.
A possible mis-mapping of antenna ports between the CONFIG and SPECTRUM tabs may exist. To observe it
This issue is not likely to be seen if all antenna ports have antennas connected. Please advise if my interpretation is incorrect. Thanks.
Title describes the issue. Whenever I am getting solid 404 whenever I'm trying to run the DOA on my Ubuntu (used the official install script). The same happens on Raspberry Pi with official image. 0.0.0.0:8080 on the local machine or [raspberry_pi_ip]:8080 is resolving fine
I have 2 Krakensdr, each on it's own Rpi4. Both work fine with the Android app. Both have briefly worked on the Krakensdr Map site (but usually one or the other, not both) in the last few days. To try to debug the intermittent behavior today I reflashed a fresh V1.322 image, edited wpa_supplicant.conf for my wifi hotspot and confirmed good operation with the Android app when configured for DoA Data Format= Kranken app or = Kraken Remote Pro (with api keys). When configured for Remote Pro and logged into the Map site, Start Remote data does not see either receiver. Screen shots of my Configs are attached. Any advice is appreciated.
Wondering if it would be possible to add elevation estimation to the UCA RDF using a technique similar to what is described here:
http://www.paluidsprekers.nl/pa8w/elevation.html
Perhaps looking at the max delta time at which the signal arrives at each of the antennas?
Example output from running the eeprom flashing util:
In the first line, conectent
is misspelled, not sure what it's suppose to be?
Additionally, the script as it calls out channels numbers are indexed as 0. (0-3)
Please turn off all channels excepting channel number:0
The dip switches are labeled 1-4, and the serial numbers are 1000-1003.
Might be better to have the script call out the DIP switch labels (1-4) that should be on, and/or a serial number scheme of 1001-1004 ?
Initialzing EEPROM conectent and setting serial numbers
Found 4 receivers
Do you wish to overwrite the current EEPROM content?y
yes
Please turn off all channels excepting channel number:0 and press enter
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
Realtek default OEM with EEPROM
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 1000
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
Please turn off all channels excepting channel number:1 and press enter
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 002
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
Realtek default OEM with EEPROM
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 1001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
Please turn off all channels excepting channel number:2 and press enter
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 003
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
Realtek default OEM with EEPROM
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 1002
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
Please turn off all channels excepting channel number:3 and press enter
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 004
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
Realtek default OEM with EEPROM
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T/2 tuner
Current configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
New configuration:
__________________________________________
Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: RTL-SDR
Product: KerberosSDR
Serial number: 1003
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no
__________________________________________
Write new configuration to device [y/n]? y
Configuration successfully written.
Please replug the device for changes to take effect.
EEPROM writing script finished. Plese perform a full power cycle.
Ran into an issue using the latest rbpi image, after running for a bit, switched between the DoA Graph Types, and after switching from Polar to Compass, the terminal threw this error, and the UI become unresponsive.
Traceback for <Task finished name='Task-17019' coro=<Pusher.dispatch() done, defined at /home/pi/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/ctx.py:386> exception=TypeError("unsupported operand type(s) for +: 'int' and 'NoneType'")> (most recent call last):
TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'
after install on my pi4 i have conda error
./kraken_doa_start.sh: line 4: conda: command not found
./kraken_doa_start.sh: line 5: conda: command not found
_ubuntu@ubuntu:~/krakensdr_doa/heimdall_daq_fw/Firmware/logs$ cat rtl_daq.log
04:55:12 FATAL rtl_daq.c:494: The serial numbers of the devices are not yet configured, exiting..
(but i do eeprom_init.sh )
also
_ubuntu@ubuntu:~/krakensdr_doa/heimdall_daq_fw/Firmware/_logs$ cat delay_sync.log
Traceback (most recent call last):
File "/home/ubuntu/krakensdr_doa/heimdall_daq_fw/Firmware/daq_core/delay_sync.py", line 43, in
import numba as nb
ModuleNotFoundError: No module named 'numba'
As the title states, this is a feature request. It would be useful to have a peak hold function in the spectrum display.
While unlikely, pulling power to the Pi 4 could end up corrupting the SD card.
We should add a shutdown and restart button to the web GUI.
When using multiple receivers, it's not clear which map bearing is for which receiver. Especially important for mobile Dfing. Suggest adding a bearing source label or some method to correlate receivers with map bearings display.
Hello,
I looked for information on the automatic calibration carried out by RF coaxial switches and I fell back on the ckoval7 's fork which worked well with my old Kerberos version.
I don't know if this has been transposed for the Kraken software when using DQA kerberos example files?
I did not find any traces on the different supports and my GPIOs on pins 18 / 16 are not controlled during calibration.
Is there an implementation planned or did I miss something?
Sebastien
Running into a divide-by-zero error. I have run through multiple manual and auto script installs in addition to the provided preconfigured image with no luck. Any suggestions?
bash kraken_doa_start.sh
Shut down DAQ chain ..
Config file check bypassed [ WARNING ]
kernel.sched_rt_runtime_us = -1
Desig FIR filter with the following parameters:
Decimation ratio: 1
Bandwidth: 1.00
Tap size: 1
Window function: hann
FIR filter ready
Transfer funcfion is exported to : logs/Decimator_filter_transfer.html
Coefficients are exported to: data_control/fir_coeffs.txt
Starting DAQ Subsystem
Output data interface: Shared memory
) (
( ) )
) ( (
)
.-'---------|
( |/////|
'-./////|
'_'
'-------'
Have a coffee watch radar
Starting KrakenSDR Direction Finder
Web Interface Running at 0.0.0.0:8080
PHP Data Out Server Running at 0.0.0.0:8081
pi@pi:~/krakensdr_doa $ gpsd Available
About to do a road trip. Had some ULA signals lined up. Noticed the update. Downloaded. BalenaEtcher said the v1.4 zip file was unsupported. Realizing my age and level of stupidity I thought maybe I touched something wrong. Tried directly from the link to the file on github. No dice. BalenaEtcher cried again. I can't update. Using a Win10 machine with MS Edge browser....Also, why is it the other version zip files have disappeared? CYA decisions or we're not allowed to blend code between versions?
There seems to be a mix of usage of JSON and INI file formats for config files in the projects.
https://github.com/krakenrf/krakensdr_doa/blob/clientside_graphs/settings.json
Ideally should just use a single format and stick with it. JSON is superior IMO to INI file formats.
It would help ensure the squelch level was set correctly if a line showing the level was drawn across the spectrum graph. This is especially important for tracking intermittent signals so you're not processing noise or missing transmissions.
Hey there, I don't think this specific error has been addressed yet. I am expecting the arrival of my kraken soon so I was setting up the software in advance. This is to say I do not have the krakensdr attached yet. Setup seemingly went fine up until actually starting the kraken_doa_start.sh file. Here's the output, which looks fine to me:
Shut down DAQ chain ..
[sudo] password for kameron:
Config file check bypassed [ WARNING ]
kernel.sched_rt_runtime_us = -1
Desig FIR filter with the following parameters:
Decimation ratio: 1
Bandwidth: 1.00
Tap size: 1
Window function: hann
FIR filter ready
Transfer funcfion is exported to : _logs/Decimator_filter_transfer.html
Coefficients are exported to: _data_control/fir_coeffs.txt
Starting DAQ Subsystem
Output data interface: Shared memory
) (
( ) )
) ( (
_______)_
.-'---------|
( |/\/\/\/\/|
'-./\/\/\/\/|
'_________'
'-------'
Have a coffee watch radar
Starting KrakenSDR Direction Finder
Web Interface Running at 0.0.0.0:8080
PHP Data Out Server Running at 0.0.0.0:8081
Then, nothing on port 8080. Connection refused. Since I saw that this info was helpful for the other issue about no webpage, here's the conda list and ~/krakensdr/krakensdr_doa$ cat ui.log:
# packages in environment at /home/kameron/miniforge3/envs/kraken:
#
# Name Version Build Channel
_openmp_mutex 4.5 2_gnu conda-forge
aiofiles 0.8.0 pyhd8ed1ab_0 conda-forge
alsa-lib 1.2.3.2 h4e544f5_0 conda-forge
asttokens 2.0.8 pyhd8ed1ab_0 conda-forge
async_generator 1.10 py_0 conda-forge
attrs 22.1.0 pyh71513ae_1 conda-forge
backcall 0.2.0 pyh9f0ad1d_0 conda-forge
backports 1.0 py_2 conda-forge
backports.functools_lru_cache 1.6.4 pyhd8ed1ab_0 conda-forge
blinker 1.4 py_1 conda-forge
bokeh 2.4.3 pyhd8ed1ab_3 conda-forge
brotli 1.0.9 h4e544f5_7 conda-forge
brotli-bin 1.0.9 h4e544f5_7 conda-forge
brotli-python 1.0.9 py39h3d8bfb9_7 conda-forge
brotlipy 0.7.0 py39h0fd3b05_1004 conda-forge
ca-certificates 2022.6.15 h4fd8a4c_0 conda-forge
certifi 2022.6.15 py39h4420490_0 conda-forge
cffi 1.15.1 py39hb26bf21_0 conda-forge
charset-normalizer 2.1.1 pyhd8ed1ab_0 conda-forge
click 8.1.3 py39h4420490_0 conda-forge
configparser 5.3.0 pyhd8ed1ab_0 conda-forge
cryptography 37.0.4 py39h32042e6_0 conda-forge
cycler 0.11.0 pyhd8ed1ab_0 conda-forge
dash 2.6.1 pypi_0 pypi
dash-bootstrap-components 1.1.0 pypi_0 pypi
dash-core-components 2.0.0 pypi_0 pypi
dash-devices 0.1.3 pypi_0 pypi
dash-html-components 2.0.0 pypi_0 pypi
dash-renderer 1.9.1 pyhd8ed1ab_0 conda-forge
dash-table 5.0.0 pypi_0 pypi
dataclasses 0.8 pyhc8e2a94_3 conda-forge
dbus 1.13.6 h12b9eeb_3 conda-forge
decorator 5.1.1 pyhd8ed1ab_0 conda-forge
executing 0.10.0 pyhd8ed1ab_0 conda-forge
expat 2.4.8 ha18d298_0 conda-forge
flask 2.1.3 pyhd8ed1ab_0 conda-forge
flask-compress 1.12 pypi_0 pypi
font-ttf-dejavu-sans-mono 2.37 hab24e00_0 conda-forge
font-ttf-inconsolata 3.000 h77eed37_0 conda-forge
font-ttf-source-code-pro 2.038 h77eed37_0 conda-forge
font-ttf-ubuntu 0.83 hab24e00_0 conda-forge
fontconfig 2.14.0 h856ede2_0 conda-forge
fonts-conda-ecosystem 1 0 conda-forge
fonts-conda-forge 1 0 conda-forge
fonttools 4.37.1 py39h0fd3b05_0 conda-forge
freetype 2.12.1 hbbbf32d_0 conda-forge
future 0.18.2 py39ha65689a_5 conda-forge
gettext 0.19.8.1 h6edf1e2_1008 conda-forge
glib 2.72.1 h7866ba4_0 conda-forge
glib-tools 2.72.1 h7866ba4_0 conda-forge
gst-plugins-base 1.20.2 hbea7648_0 conda-forge
gstreamer 1.20.3 hf4e84e4_0 conda-forge
h11 0.13.0 pyhd8ed1ab_1 conda-forge
h2 4.1.0 py39ha65689a_0 conda-forge
hpack 4.0.0 pyh9f0ad1d_0 conda-forge
hypercorn 0.13.2 pypi_0 pypi
hyperframe 6.0.1 pyhd8ed1ab_0 conda-forge
icu 69.1 h3621d8e_0 conda-forge
idna 3.3 pyhd8ed1ab_0 conda-forge
importlib-metadata 4.11.4 py39ha65689a_0 conda-forge
importlib_metadata 4.11.4 hd8ed1ab_0 conda-forge
importlib_resources 5.9.0 pyhd8ed1ab_0 conda-forge
ipython 8.4.0 py39h4420490_0 conda-forge
itsdangerous 2.1.2 pyhd8ed1ab_0 conda-forge
jedi 0.18.1 pyhd8ed1ab_2 conda-forge
jinja2 3.1.2 pyhd8ed1ab_1 conda-forge
jpeg 9e h9cdd2b7_2 conda-forge
keyutils 1.6.1 h4e544f5_0 conda-forge
kiwisolver 1.4.4 py39h110580c_0 conda-forge
krb5 1.19.3 h7c456eb_0 conda-forge
lcms2 2.12 h012adcb_0 conda-forge
ld_impl_linux-aarch64 2.36.1 h02ad14f_2 conda-forge
lerc 4.0.0 h4de3ea5_0 conda-forge
libblas 3.9.0 16_linuxaarch64_openblas conda-forge
libbrotlicommon 1.0.9 h4e544f5_7 conda-forge
libbrotlidec 1.0.9 h4e544f5_7 conda-forge
libbrotlienc 1.0.9 h4e544f5_7 conda-forge
libcblas 3.9.0 16_linuxaarch64_openblas conda-forge
libclang 13.0.1 default_hf9dac01_0 conda-forge
libdeflate 1.13 h4e544f5_0 conda-forge
libedit 3.1.20191231 he28a2e2_2 conda-forge
libevent 2.1.10 h6aed413_4 conda-forge
libffi 3.4.2 h3557bc0_5 conda-forge
libgcc-ng 12.1.0 h3242a24_16 conda-forge
libgfortran-ng 12.1.0 he9431aa_16 conda-forge
libgfortran5 12.1.0 h41d5c85_16 conda-forge
libglib 2.72.1 hd4f7528_0 conda-forge
libgomp 12.1.0 h3242a24_16 conda-forge
libiconv 1.16 h6dd45c4_0 conda-forge
liblapack 3.9.0 16_linuxaarch64_openblas conda-forge
libllvm11 11.1.0 h6293a0b_3 conda-forge
libllvm13 13.0.1 hb2805f8_2 conda-forge
libnsl 2.0.0 hf897c2e_0 conda-forge
libogg 1.3.4 h3557bc0_1 conda-forge
libopenblas 0.3.21 pthreads_h6cb6f83_2 conda-forge
libopus 1.3.1 hf897c2e_1 conda-forge
libpng 1.6.37 hf9034f9_4 conda-forge
libpq 14.5 h9bd3da0_0 conda-forge
libsodium 1.0.18 hb9de7d4_1 conda-forge
libsqlite 3.39.2 hf9034f9_1 conda-forge
libstdcxx-ng 12.1.0 hd01590b_16 conda-forge
libtiff 4.4.0 hb3f8b40_3 conda-forge
libuuid 2.32.1 hf897c2e_1000 conda-forge
libuv 1.44.2 h4e544f5_0 conda-forge
libvorbis 1.3.7 h01db608_0 conda-forge
libwebp-base 1.2.4 h4e544f5_0 conda-forge
libxcb 1.13 h3557bc0_1004 conda-forge
libxkbcommon 1.0.3 he09c752_0 conda-forge
libxml2 2.9.12 h1e2ce75_1 conda-forge
libzlib 1.2.12 h4e544f5_2 conda-forge
llvmlite 0.38.1 py39hbbff7ca_0 conda-forge
markupsafe 2.1.1 py39hb9a1dbb_1 conda-forge
matplotlib 3.5.3 py39ha65689a_1 conda-forge
matplotlib-base 3.5.3 py39hfed42d8_1 conda-forge
matplotlib-inline 0.1.6 pyhd8ed1ab_0 conda-forge
multidict 6.0.2 py39h0fd3b05_1 conda-forge
munkres 1.1.4 pyh9f0ad1d_0 conda-forge
mysql-common 8.0.30 hcde889d_0 conda-forge
mysql-libs 8.0.30 h913e832_0 conda-forge
ncurses 6.3 headf329_1 conda-forge
nspr 4.32 h01db608_0 conda-forge
nss 3.78 h1b46d77_0 conda-forge
numba 0.55.2 py39h780101b_0 conda-forge
numpy 1.22.3 py39h451b137_2 conda-forge
openjpeg 2.5.0 h9b6de37_1 conda-forge
openssl 1.1.1q h4e544f5_0 conda-forge
orjson 3.7.12 py39hb9a1dbb_0 conda-forge
outcome 1.2.0 pyhd8ed1ab_0 conda-forge
packaging 21.3 pyhd8ed1ab_0 conda-forge
pandas 1.4.3 py39h63591b6_0 conda-forge
parso 0.8.3 pyhd8ed1ab_0 conda-forge
pcre 8.45 h01db608_0 conda-forge
pexpect 4.8.0 pyh9f0ad1d_2 conda-forge
pickleshare 0.7.5 py_1003 conda-forge
pillow 9.2.0 py39hf18909c_2 conda-forge
pip 22.2.2 pyhd8ed1ab_0 conda-forge
plotly 5.10.0 pyhd8ed1ab_0 conda-forge
ply 3.11 py_1 conda-forge
priority 2.0.0 pypi_0 pypi
prompt-toolkit 3.0.30 pyha770c72_0 conda-forge
pthread-stubs 0.4 hb9de7d4_1001 conda-forge
ptyprocess 0.7.0 pyhd3deb0d_0 conda-forge
pure_eval 0.2.2 pyhd8ed1ab_0 conda-forge
pyargus 1.1.post1 pypi_0 pypi
pycparser 2.21 pyhd8ed1ab_0 conda-forge
pyface 7.4.2 pyhd8ed1ab_0 conda-forge
pygments 2.13.0 pyhd8ed1ab_0 conda-forge
pyopenssl 22.0.0 pyhd8ed1ab_0 conda-forge
pyparsing 3.0.9 pyhd8ed1ab_0 conda-forge
pyqt 5.12.3 py39h4420490_8 conda-forge
pyqt-impl 5.12.3 py39hd0de91e_8 conda-forge
pyqt5-sip 4.19.18 py39h99ab00b_8 conda-forge
pyqtchart 5.12 py39h6bb70bb_8 conda-forge
pyqtgraph 0.12.4 pyhd8ed1ab_0 conda-forge
pyqtwebengine 5.12.1 py39h6bb70bb_8 conda-forge
pysocks 1.7.1 py39ha65689a_5 conda-forge
python 3.9.7 h9f07fca_4_cpython conda-forge
python-dateutil 2.8.2 pyhd8ed1ab_0 conda-forge
python_abi 3.9 2_cp39 conda-forge
pytoml 0.1.21 py_0 conda-forge
pytz 2022.2.1 pyhd8ed1ab_0 conda-forge
pyvisa 1.12.0 py39ha65689a_0 conda-forge
pyyaml 6.0 py39h0fd3b05_4 conda-forge
pyzmq 23.2.1 py39h754ef6b_0 conda-forge
qt 5.12.9 hd3f9f3d_6 conda-forge
qtpy 2.2.0 pyhd8ed1ab_0 conda-forge
quart 0.18.0 pypi_0 pypi
quart-compress 0.2.1 pypi_0 pypi
readline 8.1.2 h38e3740_0 conda-forge
requests 2.28.1 pyhd8ed1ab_0 conda-forge
scikit-rf 0.23.1 pyhd8ed1ab_0 conda-forge
scipy 1.9.0 py39h7b076ec_0 conda-forge
setuptools 65.3.0 py39ha65689a_0 conda-forge
sip 6.6.2 py39h7735e2f_0 conda-forge
six 1.16.0 pyh6c4a22f_0 conda-forge
sniffio 1.2.0 py39h4420490_3 conda-forge
sortedcontainers 2.4.0 pyhd8ed1ab_0 conda-forge
sqlite 3.39.2 h69ca7e5_1 conda-forge
stack_data 0.4.0 pyhd8ed1ab_0 conda-forge
tenacity 8.0.1 pyhd8ed1ab_0 conda-forge
tk 8.6.12 hd8af866_0 conda-forge
toml 0.10.2 pyhd8ed1ab_0 conda-forge
tornado 6.2 py39hb9a1dbb_0 conda-forge
traitlets 5.3.0 pyhd8ed1ab_0 conda-forge
traits 6.4.1 py39h0fd3b05_0 conda-forge
traitsui 7.4.0 pyhd8ed1ab_0 conda-forge
trio 0.21.0 py39h4420490_0 conda-forge
typing_extensions 4.3.0 pyha770c72_0 conda-forge
tzdata 2022c h191b570_0 conda-forge
unicodedata2 14.0.0 py39h0fd3b05_1 conda-forge
urllib3 1.26.11 pyhd8ed1ab_0 conda-forge
uvloop 0.16.0 py39h14843e3_1 conda-forge
wcwidth 0.2.5 pyh9f0ad1d_2 conda-forge
werkzeug 2.0.2 pyhd8ed1ab_0 conda-forge
wheel 0.37.1 pyhd8ed1ab_0 conda-forge
wsproto 1.2.0 pyhd8ed1ab_0 conda-forge
xorg-libxau 1.0.9 h3557bc0_0 conda-forge
xorg-libxdmcp 1.1.3 h3557bc0_0 conda-forge
xz 5.2.6 h9cdd2b7_0 conda-forge
yaml 0.2.5 hf897c2e_2 conda-forge
zeromq 4.3.4 h01db608_1 conda-forge
zipp 3.8.1 pyhd8ed1ab_0 conda-forge
zlib 1.2.12 h4e544f5_2 conda-forge
zstd 1.5.2 hc1e27d5_4 conda-forge
Traceback (most recent call last):
File "/home/kameron/krakensdr/krakensdr_doa/_UI/_web_interface/kraken_web_interface.py", line 35, in <module>
import dash_devices as dash
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_devices/__init__.py", line 1, in <module>
from .dash import Dash, no_update, g_cc, Services # noqa: F401
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_devices/dash.py", line 18, in <module>
import quart
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/__init__.py", line 5, in <module>
from .app import Quart as Quart
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/app.py", line 49, in <module>
from .asgi import ASGIHTTPConnection, ASGILifespan, ASGIWebsocketConnection
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/asgi.py", line 29, in <module>
from .debug import traceback_response
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/debug.py", line 8, in <module>
from .wrappers import Response
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/wrappers/__init__.py", line 3, in <module>
from .base import BaseRequestWebsocket
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/wrappers/base.py", line 9, in <module>
from .. import json
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/json/__init__.py", line 7, in <module>
from ..globals import current_app
File "/home/kameron/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/globals.py", line 16, in <module>
app_ctx: _AppCtxGlobals = LocalProxy( # type: ignore[assignment]
TypeError: __init__() got an unexpected keyword argument 'unbound_message'
So with 1.5 the spectrum view and doa view as well become frozen after a while, this have happended to me on 3 separate runs around the block with the kraken. This is only happening with 1.5, not with 1.43.
Edit:
So luckily I was recording at the time it happened, so I can show how it looks like.
Here is a video of the problem.
This is how the compass looks like when this is happening:
This is how the spectrum/waterfall looks like when this is happening:
And here the first few lines of the log (configured on the web interface, not in the mobile app) of when this happened:
Here is the same log visualized with the map:
And here is the log it self:
log.csv
I took a look at the log, and what is obviously not good is that the GPS coordinates are missing. Now I don't see what would cause this, or why would this have any effect on the spectrum or DOA graph, but this is the only deviation in the log I see.
I am also running the Wigle WiFI and BT gathering app (it relies on GPS as well) while using Kraken, but 2 apps using GPS was never an issue before, and still not causing issues with 1.4. So I dont think it has anything to do with it.
Debatable if this is worth changing, but I'd suggest switching from the default GB to en_us_UTF-8 and to standard US keyboard layout in the default image.
Handling multiple Rpi SD cards makes it easy to mix them up. It would be nice if the software/image version could be displayed on the Config screen.
An application that uses one (or more) sdr's to monitor a P25 (or others
depending) while the rest scan through the input frequencies (i.e. 700Mhz + 30,
or 800Mhz -45) to find local activity, and show what system(s), group id, and
radio id is on that frequency. With option to log naturally. Another idea: Is
it possible to 'bridge' two Kraken together to act as one 10 channel system?
The other software (GQRX, etc.) has a slow scan speed (approx. 8
freq's/second), and using several sdr's to 'leap frog' through a frequency list
would speed things up. But you would know about that more than I would.
Anyway, thank you very much. Looking forward to get out 'in the field'.
Got this in my doa root folder, in ui.log:
Exception in thread Thread-1:
Traceback (most recent call last):
File "/home/krakenrf/miniforge3/envs/kraken/lib/python3.9/threading.py", line 973, in _bootstrap_inner
self.run()
File "/home/krakenrf/krakensdr_doa/krakensdr_doa/_signal_processing/krakenSDR_signal_processor.py", line 236, in run
single_ch = self.processed_signal[1, :]
IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed
INFO:quart.serving:Running on http://0.0.0.0:8080 (CTRL + C to quit)
What could cause this error message, and what does it mean?
I am having some problems with the software, however I dont know if its related to this error message at all or not.
Impossible to control, zoom, spectrum slide,from the web interface. Video attached. Tried on windows with Firefox also on Ipad with Safari, chrome and firefox.
Leaving this email suggestion here for looking at when time allows.
Submitted by a user whose seeing somewhat predictable multipath skew on a fixed indoor antenna array. Not sure yet how feasible this suggestion is as the deviation would only be valid for that specific transmitter and that specific multipath deviation from that transmitters direction.
A better solution might be to look into a calibration algorithm that can take into account prior known transmitter/frequency bearing data to try to detect and null multipath.
First, I like to do a lot of DF from my house - unfortunately with the antenna array mounted indoors at the highest point below the ceiling. Likely due to multi path, this gives me a few challenges. While I am getting VERY consistent bearings for known transmitters, these are often off by 9-12 degrees, occasionally a bit more.
There seem to be a pattern to the deviation: Transmitters located approximately between 315 and 45 degrees compass need a positive correction, remaining transmitters need a negative. This impression is from sampling transmitters mainly W or between 34 and 120 degrees compass from my location.
As there may be a predictable pattern of deviation - at least in the 430-380 MHz band I monitor, I have a suggestion:
Allow direction dependent deviation tuning. Something like:
Estimated DOA Correction
235-45 +6
45 - 90 0
90 180 -8
etc.
Ideally with user defined number of entries. I currently do not know if this deviation is frequency dependent.
Other suggestion from the user. Will be split into their own issues if we decide to work on them.
Easy switch between fixed and mobile use with a button on the map page
Fixed button:
- Prompt for Lat/Long/antenna orientation - remember last position
- Even Better, allow quick selection of saved locations (my favourite 5 hilltops in the area)
- Disable DOA when moving only
Mobile Button
- Orientation = Compass
- DOA when moving only
Remote control via API. (Could be possible ?). I like to develop a plug-in for SDRUno to set frequency, gain once an interesting transmission is detected.
Button ‘Send to RDF Mapper’ I only want estimated good DOA measures uploaded
When not installing the software on a Pi, how is the version number verified?
Where I'm at:
The DOA server starts, and I am able to access the settings website via the :8080 port on the host computer, which is an older HP laptop. It appears that I can make settings changes as well.
I am able to also access all 5 of the SDRs on the host computer using GQRX (while not running DOA server)
I am able to connect the DOA server host computer to the WIFI hotspot on my phone, and have a good connection (can websurf as expected).
I can open the KrakenSDR App on the hotspot phone, and for the most part, it seems to work. However, even after setting the server computer IP in the settings menu, I cannot access the KrakenSDR Server Settings. If I go to that portion of the App, I just get a white screen with the "return" arrow in the upper left.
Note to fix this in next version.
From what I see in client_side_graphs the major update is in the squelch and graphing (addition of waterfall) right?
Testing out the latest image, it looks like when the heimdall daq fw was built, the line #PIGPIO=-lpigpio -DUSEPIGPIO
wasn't uncommented.
I have the Station Information, Location Source: GPS in my saved config file. At bootup, the system starts operating OK but with the GPS = Disabled status. I have edited /etc/default/gpsd as
START_DAEMON="true"
GPSD_OPTIONS="-G"
DEVICES="/dev/gps0"
USBAUTO="true"
GPSD_SOCKET="/var/run/gpsd.sock"
and confirmed the gpsd Daemon is running at startup.
However, DOA appears to be using the last (possibly invalid) GPS location for DOA reports, both locally and on the Kraken RF map site.
Deseleting and reselecting GPS as the Location Source appears to allow the GPS to Connect. However, I'm trying to configure a remote DF station that can operate from bootup without user intervention.
Hello all,
I've added the first KrakenSDR on my map.krakenrf.com new account and copied the app key, it's working well.
Now i'm trying to add another one, entering the second Kraken serial, name with space, frequency and decay time, clicking on "create station", I received an error . " error : you forgot to fill all fields or entered a wrong serial"
What's wrong ?
Regards and happy doa ;) !
François
The WebGUI is crashing constantly and the terminal outputs this:
INFO:quart.serving:127.0.0.1:34926 GET / 1.1 200 652 8953
[2022-10-30 23:34:15,192] 127.0.0.1:34926 GET / 1.1 200 652 8953
INFO:quart.serving:127.0.0.1:36212 GET /_push 1.1 101 - 5994
[2022-10-30 23:34:16,182] 127.0.0.1:36212 GET /_push 1.1 101 - 5994
Traceback for <Task finished name='Task-160' coro=<Pusher.dispatch() done, defined at /home/rich/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/ctx.py:386> exception=ZeroDivisionError('float division by zero')> (most recent call last):
File "/home/rich/miniforge3/envs/kraken/lib/python3.9/site-packages/quart/ctx.py", line 389, in wrapper
return await websocket_context.app.ensure_async(func)(*args, **kwargs)
File "/home/rich/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_devices/pusher.py", line 147, in dispatch
await func(data['data'], client, data['id'])
File "/home/rich/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_devices/dash.py", line 1261, in dispatch
return
File "/home/rich/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_devices/dash.py", line 1232, in call_callback
return await loop.run_in_executor(None, runcoro, func(body, response, lock, client)) # %% callback invoked
File "/home/rich/miniforge3/envs/kraken/lib/python3.9/concurrent/futures/thread.py", line 58, in run
self.future.set_result(result)
File "/home/rich/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_devices/_utils.py", line 252, in runcoro
return e.value
File "/home/rich/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_devices/dash.py", line 1158, in add_context
lock.release()
File "/home/rich/krakensdr/krakensdr_pr/_UI/_web_interface/kraken_web_interface.py", line 1153, in display_page
return [generate_config_page_layout(webInterface_inst), "header_active", "header_inactive", "header_inactive"]
File "/home/rich/krakensdr/krakensdr_pr/_UI/_web_interface/kraken_web_interface.py", line 519, in generate_config_page_layout
wavelength= 300 / webInterface_inst.daq_center_freq
ZeroDivisionError: float division by zero
I've been thinking about it lately, and it seems to me that possibly with some kind of LNB or BDC, it would be possible to use SDR to detect, for example, X/K/Ka-Band radar signals often used for determining vehicle speed.
Current high-end commercial radar detectors cost upwards of $600-800 and often come with two antennas, which is better than only one, but it would seem the almost ideal candidate for this application would be with something like the KrakenSDR.
The main issue would seem to be the fact that these signals are pretty far outside of the typical range of nearly all SDRs and therefore necessitate at the very least some kind of downconverter, but I've been unable to find much (any) information anywhere online about this being performed in practice.
Is coherency being maintained whilst utilizing a downconverter even something that is theoretically possible? I know that the results using similar yet different individual LNA's looked quite positive at least, so it's not really so much of an issue but just a question as to the feasibility of doing something like this in general, so this can be closed if it's the wrong place for something like this...
The current behavior appears to be that the strongest signal within a pass band is selected for DOA.
If there is only a single frequency of interest being DF'ed, this can lead to that frequency being ignored and/or a bunch of additional unwanted data.
It's mentioned here [0] [1] that multiple channels with independent squelches, which is a nice feature. It'd be desirable to have a option/mode to ignore everything other than the frequency of interest though.
[0] - https://github.com/krakenrf/krakensdr_doa/tree/clientside_graphs#upcoming-features-and-known-bugs
[1] -
[FEATURE] Currently squelch works by selecting the strongest signal that is active and above the set threshold within the active bandwidth. The next steps will be to allow users to create multiple channels within the active bandwidth, each with their own squelch. This will allow users to track multiple signals at once, and ignore unwated signals within the bandwidth at the same time.
Was debugging another issue and noticed this error in the browser terminal:
ReferenceError: A nonexistent object was used in an `Input` of a Dash callback. The id of this object is `daq_cfg_files` and the
property is `value`. The string ids in the current layout are: [url, header_config, header_spectrum, header_doa, btn-start_proc,
btn-stop_proc, btn-save_cfg, placeholder_start, placeholder_stop, placeholder_save, placeholder_update_rx,
placeholder_recofnig_daq, placeholder_update_daq_ini_params, placeholder_update_freq, placeholder_update_dsp,
placeholder_update_squelch, placeholder_config_page_upd, placeholder_spectrum_page_upd, placeholder_doa_page_upd,
dummy_output, page-content, _none]
I'm attempting to set up krakensdr_doa on an intel NUC, due to having experienced big RFI issues with RPi4's.
After following the instructions here verbatim, I end up at the point where i startup the software, but the main webserver on port 8080 doesn't start, with the following error:
(kraken) darkside@darkside-nuc:~/krakensdr/krakensdr_doa$ cat ui.log
Traceback (most recent call last):
File "/home/darkside/krakensdr/krakensdr_doa/_UI/_web_interface/kraken_web_interface.py", line 82, in <module>
import tooltips
File "/home/darkside/krakensdr/krakensdr_doa/_UI/_web_interface/tooltips.py", line 2, in <module>
import dash_bootstrap_components as dbc
File "/home/darkside/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_bootstrap_components/__init__.py", line 7, in <module>
from dash_bootstrap_components._table import _generate_table_from_df
File "/home/darkside/miniforge3/envs/kraken/lib/python3.9/site-packages/dash_bootstrap_components/_table.py", line 5, in <module>
from dash import html
ImportError: cannot import name 'html' from 'dash' (/home/darkside/miniforge3/envs/kraken/lib/python3.9/site-packages/dash/__init__.py)
I can confirm that the dash version is the one specified in the installation instructions (1.20.0):
>>> import dash
>>> dash.__version__
'1.20.0'
Is this actually the version that is required, or are these instructions out of date?
There where reports that the DOA Software stops sending Data to the Remote Server (map.krakenrf.com) if wifi is disabled despite it being connected to the Internet via Ethernet.
The Kraken Software tries to connect as a client, if this doesen't work it will create an AP.
My guess is that this fails when wifi is disabled and causes an issue in the Software Stack startup.
One User wrote:
It's a Stationary station. Everything works on Raspberry PI4 V1.43, but I
would like to disable the Wi-Fi interface. When you turn off the Wi-Fi
interface (command: dtoverlay=disable-wifi
dtoverlay=disable-bt (in config.txt)), the device disappears from the
cloud, although Internet access remains. In the cloud, the device is
displayed as inactive.
@krakenrf Carl please have a look if this is the case
Is there any way to safely shut down the Raspberry Pi? With this operating in a headless mode, the only way I have been able to power it off was to just remove power from the Pi. Certainly, this is not good for the SD card or file system. Can a power down option be added where we can press a button in the app to power down the pi, or allow us to use a switch on pins 5&6 to power it down safely?
Thanks,
JB
In the printed KrakenSDR Users Manual on page 11 it is recommended to use balenaEtcher to flash an KrakenSDR DF image. It failed for me. BalenaEtcher (used balenaEtcher-1.5.115.dmg from https://www.balena.io/etcher/ ) could not unmount the SD-card Sandisk Edge 128GB.
My OS is an updated MacOS 10.15.7. I used an elder Trancend SD/MMC adapter, that support up to SDHC - the SD-card is a microSDXC.
A friend recommended to use Raspberry Pi Imager (used imager_1.7.2.dmg found here https://www.raspberrypi.com/software/ ). Raspberry Pi Imager worked (no cog settings was used).
Please consider updating or supplementing your (printed) KrakenSDR Users Manual with the alternative Raspberry Pi Imager.
Hi! I tried running the RDF Data Simulator emulator and got a great job.
XML output looks like this :
NOCALL1656870732764120.039.128403-76.51774949.1671.20595
NOCALL1656872048861120.039.128844-76.51709249.112442.2186178
NOCALL1656872061033120.039.130298-76.51542727.910342.7049182
NOCALL1656872071124120.039.13193-76.5143825.83341.1826
NOCALL1656872081815120.039.13258-76.516287.933342.0049176
Station ID: NOCALL
Location: 39.129781°, -76.515815°
Heading: 35.8°
Tuned to 120 MHz
if I start the kraken_doa, I get it:
NOCALL1656871730414120.039.129781-76.51581535.8349-74.10.75
NOCALL1656871836612120.039.129781-76.51581535.8349-74.00.74
NOCALL1656871858866120.039.129781-76.51581535.8350-73.90.92
NOCALL1656871867596120.039.129781-76.51581535.8195-74.00.72
You can clearly see that the formatting at the end of the line is different.
DF-aggregator does not work with this formatting.
I tried 190522 and 150422. They also do not work in this mode.
I saw that everything works in https://www.youtube.com/watch?v=KE2FRv-hoQs on the January 11, 2022 version.
In addition, you cannot change NOCALL To anything else
Awaiting your reply
What is the timeline for converting from CSV to JSON? If it's a long way out, would you be open to a pull request adding lat, lon and heading in place of a few of the reserved values? What's the correct branch to be using at the moment?
Note to implement GUI controls in a sidebar (SDR#/SDR++ style).
Hello, there is no way to contact the KrakenRF team.
UPS lost my package, and I need someone to file a dispute with UPS on my behalf. I can't file for a refund because so much time went past between ordering and shipping.
Please provide some sort of contact information so that customers that need help can actually get it.
I understand GPS headings go invalid near zero speed. But hearing a very intermittent signal go active when you're stopped at a traffic light or briefly parked and not getting a bearing is frustrating 😭. It seems if you had an auto Stationary on/off mode that would use the last valid gps info when stopped, then go back to live gps when moving again, it would help greatly with intermittent signals. Preferably in the DOA code but minimally in the android app.
When attempting to use the [zoom], [+] or [-] control keys on the DOA Spectum screen, the screen changes briefly when the control is selected, but then immediately reverts to full (auto?) scale. Pressing the [autoscale] control (toggle?) does not change the symptoms. Observed in firefox on a windows PC and Samsung Tab A8 android tablet.
What is the root account password of the Raspberry Pi mirroring system? The default account permissions are not sufficient for overclocking operations.
Hello,
I am trying to use the compass function from the webpage, and it is showing the radio in front of my antennas, even though the radio is behind it. Whenever we move it side to side, it sticks to the right.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.