sq5bpf / telive Goto Github PK
View Code? Open in Web Editor NEWTetra live monitor
License: GNU General Public License v3.0
Tetra live monitor
License: GNU General Public License v3.0
Hi, i got segmentation fault when telive should play signal..
do you need something more except this?
tnx.
W: GPG error: file:/var/cuda-repo-10-1-local-10.1.105-418.39 Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F60F4B3D********
E: The repository 'file:/var/cuda-repo-10-1-local-10.1.105-418.39 Release' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: Repository 'http://security.ubuntu.com/ubuntu bionic-security InRelease' changed its 'Suite' value from 'bionic-updates' to 'bionic-security'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
Make sure you have full internet access, and that your distribution's package repositories are currently avaliable
Try to run 'sudo apt-get update' by hand, and see what you have to do to resolve it
Ubuntu 18.04.2
Memory = 15.6 GiB
Processor = Intel® Core™ i5-7500 CPU @ 3.40GHz × 4
Graphics = GeForce GTX 1050 Ti/PCIe/SSE2
GNOME = 3.28.2
OS = 64-bit
I ran the script and it spat out this error at the end.
I have tried the suggested sudo apt-get update but no joy.
Any help would be great. tia...
will there be any support for gnuradio newer versions like 3.11, 3.10?
Hello!
TETRA Monitor 1.9 Segmentation fault (core dumped) PLAYBACK PROBLEM!! (fix tplay) I check
/tetra/bin/tplay < /home/ubuntu/tetra/telive/testfile.acelp its work fine bu i get an error fix tplay.
i checked on Ubuntu 16.04 and 14.04 on VM when I run GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.04) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
program_that_segfaulted: No such file or directory.
/home/Ubuntu/tetra/telive/core: No such file or directory.
(gdb)
Updated. And the issue closed, sorry.
This thing works! Set up under Kali + VMWare.
At first i could only hear some small burst of low volume hum, but it was the encryption.
Thanks for the work
I'd like to have this running on a RPi3, but I can't find any working instructions.
Does anyone have some insight or links how to make this happen?
@sq5bpf
You mentioned somewhere you got this working. Could you post some details about what you did?
There are some old RPi2 instructions here but they rely on installing ArchLinux on the Pi, which should not be necessary. There are also some scattered bits and pieces over here.
The "scan until the first available network is found" feature does not seem to be working for me.
Reading the documentation would suggest that it does not change the base-band frequency and only looks within the data telive is being fed. I set TETRA_SCAN_LIST to "412.900-413.000/12.5" and the base-band frequency to 412.9475 (the center of a known good TETRA frequency). When activating the scanner mode, nothing is found after ~10 minutes of letting it run.
It's possible I'm misunderstanding the documentation. If this is the case, please let me know
I'm using telive in a portable scanner setup to listen to the train operators while riding the train.
I'd like to see a feature which resumes scanning after a signal has been lost for a while. This would help when moving out of coverage of one signal and into another.
I've made an attempt at implementing it in my fork (adryd325@fdb5ac8); however C is very much out of my comfort zone, and I'd like to see what you could do.
Not relevant to the issue:
I really appreciate this project and its scanning functionality has made my portable listening setup possible; without buying a real TETRA radio and risking interferance. I wanted to say thank you for writing this. Maybe once I learn C and Python I'll try updating this project and dependencies to work on modern Debian versions as a way of saying thanks.
First off. Thanks heaps for writing this program.
I've been playing with getting this running in OS X. I'm able to start up telive (via rxx) and can see Tetra things happening but as soon as it goes to tplay it'll throw the PLAYBACK PROBLEM!! (fix tplay)
file followed by a segfault ./rxx: line 70: 19020 Segmentation fault: 11 (core dumped) ./telive
.
I'll post some gdb info once I get gdb running (never used it on OS X before).
I'm currently working on setting up a replacement for aplay (most likely sox play) but in the mean time I'd be ok with this just saving to file for me to play later.
I've tried replacing the tplay script with just a cat command to dump the contents to a text file however the text file never fills up with anything.
My main concern is if this is actually related to tplay at all or if this is another problem I'll have to solve
(no seriously these are pretty bad hacks - I don't intend on fixing these properly but if someone was keen to make a proper macport I think it would be an awesome idea).
install gnuradio via macports
symlink/opt/local/bin/python -> /opt/local/bin/python2.7
diff --git a/telive.c b/telive.c
index 1c432f9..ae3a279 100644
--- a/telive.c
+++ b/telive.c
@@ -21,7 +21,6 @@
* be rewritten from scratch some day :)
*/
-
#include <fnmatch.h>
#include <arpa/inet.h>
#include <netinet/in.h>
@@ -541,7 +540,7 @@ int matchssi(int ssi)
if (!ssi) return(0);
sprintf(ssistr,"%i",ssi);
if (strlen(ssi_filter)==0) return(1);
- r=fnmatch((char *)&ssi_filter,(char *)&ssistr,FNM_EXTMATCH);
+ r=fnmatch((char *)&ssi_filter,(char *)&ssistr,0);
return(!r);
}
osmo-tetra-sq5bpf
diff --git a/src/tunctl.c b/src/tunctl.c
index c7b0c43..689bec3 100644
--- a/src/tunctl.c
+++ b/src/tunctl.c
@@ -12,7 +12,7 @@
#include <grp.h>
#include <net/if.h>
#include <sys/ioctl.h>
-#include <linux/if_tun.h>
+#include <net/if_utun.h>
/* TUNSETGROUP appeared in 2.6.23 */
#ifndef TUNSETGROUP
@@ -40,7 +40,7 @@ int main(int argc, char **argv)
gid_t group = -1;
int tap_fd, opt, delete = 0, brief = 0;
char *tun = "", *file = "/dev/net/tun", *name = argv[0], *end;
- unsigned int iff_type = IFF_TAP;
+// unsigned int iff_type = IFF_TAP;
while((opt = getopt(argc, argv, "bd:f:t:u:g:U")) > 0){
switch(opt) {
@@ -85,7 +85,7 @@ int main(int argc, char **argv)
tun = optarg;
break;
case 'U':
- iff_type = IFF_TUN;
+ //iff_type = IFF_TUN;
break;
case 'h':
default:
@@ -107,18 +107,18 @@ int main(int argc, char **argv)
memset(&ifr, 0, sizeof(ifr));
- ifr.ifr_flags = iff_type | IFF_NO_PI;
+// ifr.ifr_flags = iff_type | IFF_NO_PI;
strncpy(ifr.ifr_name, tun, sizeof(ifr.ifr_name) - 1);
- if(ioctl(tap_fd, TUNSETIFF, (void *) &ifr) < 0){
- perror("TUNSETIFF");
- exit(1);
- }
+// if(ioctl(tap_fd, TUNSETIFF, (void *) &ifr) < 0){
+// perror("TUNSETIFF");
+// exit(1);
+// }
if(delete){
- if(ioctl(tap_fd, TUNSETPERSIST, 0) < 0){
- perror("disabling TUNSETPERSIST");
- exit(1);
- }
+// if(ioctl(tap_fd, TUNSETPERSIST, 0) < 0){
+ // perror("disabling TUNSETPERSIST");
+ // exit(1);
+ // }
printf("Set '%s' nonpersistent\n", ifr.ifr_name);
}
else {
@@ -128,10 +128,10 @@ int main(int argc, char **argv)
}
if(owner != -1) {
- if(ioctl(tap_fd, TUNSETOWNER, owner) < 0){
- perror("TUNSETOWNER");
- exit(1);
- }
+ // if(ioctl(tap_fd, TUNSETOWNER, owner) < 0){
+ // perror("TUNSETOWNER");
+ // exit(1);
+ // }
}
if(group != -1) {
if(ioctl(tap_fd, TUNSETGROUP, group) < 0){
@@ -140,10 +140,10 @@ int main(int argc, char **argv)
}
}
- if(ioctl(tap_fd, TUNSETPERSIST, 1) < 0){
- perror("enabling TUNSETPERSIST");
- exit(1);
- }
+ // if(ioctl(tap_fd, TUNSETPERSIST, 1) < 0){
+ // perror("enabling TUNSETPERSIST");
+ // exit(1);
+ // }
if(brief)
printf("%s\n", ifr.ifr_name);
diff --git a/src/tuntap.c b/src/tuntap.c
index 8109067..6f140ae 100644
--- a/src/tuntap.c
+++ b/src/tuntap.c
@@ -7,8 +7,8 @@
#include <sys/socket.h>
#include <sys/ioctl.h>
-#include <linux/if_tun.h>
-#include <linux/if.h>
+#include <net/if_utun.h>
+#include <net/if.h>
int tun_alloc(char *dev)
{
@@ -27,14 +27,14 @@ int tun_alloc(char *dev)
*
* IFF_NO_PI - Do not provide packet information
*/
- ifr.ifr_flags = IFF_TUN|IFF_NO_PI;
+// ifr.ifr_flags = IFF_TUN|IFF_NO_PI;
if( *dev )
strncpy(ifr.ifr_name, dev, IFNAMSIZ);
- if( (err = ioctl(fd, TUNSETIFF, (void *) &ifr)) < 0 ){
- close(fd);
- return err;
- }
+ // if( (err = ioctl(fd, TUNSETIFF, (void *) &ifr)) < 0 ){
+ // close(fd);
+ // return err;
+ // }
#if 0
strcpy(dev, ifr.ifr_name);
#endif
libosmocore-sq5bpf
diff --git a/src/utils.c b/src/utils.c
index cc33994..87f96b2 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -196,9 +196,10 @@ char *osmo_hexdump_nospc(const unsigned char *buf, int len)
}
/* Compat with previous typo to preserve abi */
-char *osmo_osmo_hexdump_nospc(const unsigned char *buf, int len)
+/*char *osmo_osmo_hexdump_nospc(const unsigned char *buf, int len)
__attribute__((weak, alias("osmo_hexdump_nospc")));
+*/
#include "../config.h"
#ifdef HAVE_CTYPE_H
#include <ctype.h>
I am using the 6-channel configuration, to monitor a cell with 1 control channel and 4 traffic channels.
If I start "scanning until first network is found", telive is muting receivers 2-6 until next channel is found.
And then immediately un-mutes all receivers.
If the next channel found is assigned in another cell you end up in "too many changes...... etc"
I think that either all receivers should be tuned to the newly found channel, or unmuted only after new channels of the new cell are discovered.
thanks
Hi,
I'm running a Telive bootable disk image with Telive 1.7 since a while and wanted to update telive to 1.9.
Avoiding reinstalling from scratch, i just downloaded telive 1.9 from github (git clone https://github.com/sq5bpf/telive).
All seems to work, except audio listening, i can see traffic in Telive window but when a communication is started i can only see the SSIs, "Play" is not displayed.
I made a comparison with another telive 1.7 and a laptop, when i had audio with 1.7, i never got audio with 1.9.
Perhaps i forgot to update another peace of software ?
Thank you.
Regards.
instructions state
sudo wget https://raw.githubusercontent.com/sq5bpf/telive/master/scripts/install_telive.sh
sudo chmod 755 install_telive.sh
./install_telive.sh
However using this on ubnutu 14.04LTS pulls the script as an html file.
Cannot make it run in debian 10 with gnuradio 3.8, installed with install_telive, launching receiver1 throws:
File "/usr/local/lib/python3/dist-packages/gnuradio/blocks/blocks_swig0.py", line 100
def high_res_timer_now() -> "gr::high_res_timer_type":
^
SyntaxError: invalid syntax
I've tried things, without succes, something related with swig and python 3.7 i guess but i am stuck.
Hi!
I've made a fresh 16.10 ubuntu installation and used your install script to install telive.
First time i've ran the grc, i got this error:
The xterm executable 'xterm' is missing
then when i start the grc it start and stop immediately (nothing appears).
Any idea?
Trying to install on ubuntu 18 which has other rtlsdr apps working (grc, gqrx, urh etc). Running the install script yields:
/home/spongebob/anaconda3/lib/./libtinfow.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:13: recipe for target 'telive' failed
make: *** [telive] Error 1
I have noooo clue how to solve this, even after ducking on the internets... any clues maybe? :-)
It would be great if telive could group associated SSIs and dump them in a file for easier filter construction
thank you very much for telive!!!!
Found that
"make_desktop_icons() {
cat > ~/Desktop/xterm_telive.desktop <<EOF2" is not "usable" by those who don't use english locale.
In my case (using Italian locale) it should read "cat > ~/Scrivania/xterm_telive.desktop <<EOF2"
Hope it can be fixed using system variables.
PS: Sorry for my english.
Apparently the gnuradio 3.8 package, in debian testing 11, is now using python3.
So the expected gnuradio python module is now installed in /usr/lib/python3.7/dist-packages/ instead of the python2.7 directory.
Just changing the default python version is not enough to make "receiver1udp" work neither.
When using python 2.7 it complains the gnuradio module is not found.
When using python 3.7 it throws even more errors.
Do you have any free time to make it work with python3 ?
Hi .
I get the above error whan i try to install Telive..
Using Ubuntu 14.04
INSTALLING Gnuradio
Cannot add PPA: 'ppa:gqrx/releases'.
Please check that the PPA name or format is correct.
/M
I am getting a strange problem with the GNU-Radio when opening the telive_1ch_gr37_udp_xmlrpc_headless.py script. When running it in GNURadio (after replacing the missing blocks) I get an error message:
Executing: /usr/bin/x-terminal-emulator -e /usr/bin/python3 -u /home/z/telive/gnuradio-companion/receiver_xmlrpc/top_block.py
E [main.cc:414] Error: execvp of /usr/bin/python3 -u /home/z/telive/gnuradio-companion/receiver_xmlrpc/top_block.py: No such file or directory (errno=2)
The strange part about it is that the file is exactly where it's supposed to be and copy/pasting the command opens up an x-terminal just fine. I've moved the folder around to different locations and tried running it again and still get the same error.
I'm not very good with all this programming stuff and I don't even know where main.cc is to try and see what's causing this problem. It seems like it should be so simple to fix but I have no idea what could be causing this issue. The
Hello
I am trying to run the telive demo on a Linux Mint 17.3 specifically downloaded for this purpose and installed on a Memory stick. The dongle is a Funcube Pro+, and I installed gr-fcdproplus to support it, in fact I tested the dongle with GQRX and it works fine.
When activating the demo, at time of pressing "F6" on the "telive_1ch_simple_gr37_slow_udp.grc" screen the windows for the receiver is properly open but no signal is shown on the screen. In the grc screen I get the message "FATAL: Wrong rtlsdr device index given".
Any suggestion about things to check?
Thanks . Mauro
Good morning from Spain
Impress yourself with the work you have done. Voice decoding is perfect with hackrf. The problem I am having is in the export of the tetra1.kml file, I cannot get telive to create the file and export that data. I do receive the plot in rxx:
20200318 11:35:33 FUNC:NETINFO1 CCODE:36 MCC:00d6 MNC:0008 DLF:390337500 ULF:380337500 LA:1029 RX:1 20200318 11:35:33 FUNC:SDS [0100111101000001001011111111001100110001111000010000010000000101011101010000001000000111001001011100011100100011000001000110001101100011111111100010000000000101000001111110100000011110000000010010000001101111010001000101010000000010101000111001011011101110011000100101011111000001000000001000000100001] 20200318 11:35:33 FUNC:SDSDEC [CPTI:1 CalledSSI:311131 CallingSSI:311244 CallingEXT:0 UserData4: len:232 protoid:82(Text Messaging) SDS-TL:[ MsgType:SDS-TRANSFER MSG_REF:186 TO_GROUP:1] coding_scheme:01 DATA:[\x03\x92\xE3\x91\x821\xB1\xFF\x10\x02\x83\xF4\x0F\x00\x907\xA2*\x01Q\xCBw1+\xE0\x80]] RX:1
Is it an encrypted message or is it a configuration error?
hello everyone, I recently reinstalled linux mint, gnuradio companion 3.10, and I can no longer open ./receiver1 1, it is not compatible with gnuradio 3.10, is there another method to open this receiver in gnuradio 3.10? thank you
the receiver is in the folder cd ~/tetra/osmo-tetra-sq5bpf/src
./receiver1 1
Hello ,
i'm scanning for exempe 400-500
and each time i'm at the upper limit ( 499.9 -> 500 )
i have a segfault :
Message window
Signal found
ERROR: xmlrpc fault set(freq,double,-100000)!
Floating point exception (core dumped)
By the way : thanks for this great piece of software !
I installed telive using the ./install.sh script as recommended. Reading the documentation I can see it's telling me to run "tetra-rx" program. I have no such program anywhere on my computer. Was it supposed to be installed and failed? Was it renamed?
Any help appreciated.
E: Unable to locate package gqrx
Unknown distro [ubuntu 18.2], please report it, and send the below information:
NAME="Linux Mint"
VERSION="18.2 (Sonya)"
ID=linuxmint
ID_LIKE=ubuntu
PRETTY_NAME="Linux Mint 18.2"
VERSION_ID="18.2"
HOME_URL="http://www.linuxmint.com/"
SUPPORT_URL="http://forums.linuxmint.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/linuxmint/"
VERSION_CODENAME=sonya
UBUNTU_CODENAME=xenial
I tried to run a flow graph, but the plot does not come out and error is occurred as:
Generating: '/Users/pc/Documents/Gnuradio/ECE 440/Lab 1/top_block.py'
Executing: /opt/local/Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8 -u /Users/pc/Documents/Gnuradio/ECE 440/Lab 1/top_block.py
Traceback (most recent call last):
File "/Users/pc/Documents/Gnuradio/ECE 440/Lab 1/top_block.py", line 269, in
main()
File "/Users/pc/Documents/Gnuradio/ECE 440/Lab 1/top_block.py", line 245, in main
tb = top_block_cls()
File "/Users/pc/Documents/Gnuradio/ECE 440/Lab 1/top_block.py", line 203, in init
self.power_0 = power()
File "/Users/pc/Documents/Gnuradio/ECE 440/Lab 1/power.py", line 85, in init
self.connect((self.blocks_rms_xx_0, 0), (self, 0))
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/gnuradio/gr/hier_block2.py", line 48, in wrapped
func(self, src, src_port, dst, dst_port)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/gnuradio/gr/hier_block2.py", line 111, in connect
self.primitive_connect(*args)
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/gnuradio/gr/runtime_swig.py", line 4531, in primitive_connect
return _runtime_swig.top_block_sptr_primitive_connect(self, *args)
RuntimeError: destination port 0 out of range for Power(4)
I don't know what the problem is.
Im having some troubles getting the telive scanning feature to work on arm.
I have followed the instructions in the documentation, and on my x86 machine it works as expected.
The xmlrpc example works perfectly.
However when I try exactly the same on arm (raspbery pi and pandaboard) scanning doesnt seem to work.
The tuner works and accepts commands via xmlrpc, I can change the frequency from within telive, it retunes and receives tetra data. When I try to start scanning (q) nothing happens tho. The freqeuncy stays the same and no xmlrpc messages are being received by the tuner.
If you could give me some clues on how to investigate this further that would be apreciated.
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.