Commit graph

154 commits

Author SHA1 Message Date
dj2ls
8384bf8d12 protocol/network/gui/..
changed protocol so IRS is now the speed-level master / send ptt state via network / introduced no rig mode / disable scatter and waterfall in gui and tnc/ increased network chunk size / ...
2022-02-02 21:12:16 +01:00
dj2ls
459e39daea updated socket commands and changed rx buffer behavior
..and some other changes to the gui so its compatible again with the latest socket commands. The rx buffer has now a unique id, and new structure. Also all messages and files will be saved to the same buffer. All commands which will be sent to the tnc or dameon are now written in lowercase
2022-01-28 20:07:39 +01:00
dj2ls
77adabf450 mod out locking state
an attempt with a locking state for the mod_out queue so we can process audio only, if we finished filling our mod_out queue. Possibly this solves the problems #99 #127
2022-01-23 07:10:04 +01:00
dj2ls
805a8450c5 socket non-block design
new design for non blocking network socket. Sock is now streaming status information without need for requesting it.
2022-01-20 20:38:56 +01:00
dj2ls
10d3d5c53e support for different ways controlling the radio
#121 direct, rigctl (for windows), rigctld. Highly experimental. Just to save data.
2022-01-18 19:38:05 +01:00
dj2ls
19cbaa0f11 buffer overflow counter
count while an ongoing file transfer #106
2022-01-15 20:17:19 +01:00
dj2ls
a4eeea8a03 decode only if needed
this should reduce cpu load when in idle state and reduce it also when sending in specific mode. This is not yet working for AUTO mode selection. #106
2022-01-15 19:23:28 +01:00
dj2ls
28c9c673fa detect app path when running in pyinstaller
pyinstaller creates a temporary app environment
2022-01-12 07:27:42 +01:00
dj2ls
306f202c5e avoid buffer overflow #106
this is not a solution, but increases app stability beacuse we are going to a void a buffer overflow. Maybe we need to think about a mode preseelction before transmission starts
2022-01-07 13:13:18 +01:00
dj2ls
e81795b45b waiting while transmission 2022-01-07 12:55:03 +01:00
dj2ls
92087da49f arq class and fifo queue processing
moved to a much more clear app design. Huge change, so problems and bugs are no surprise.
2022-01-07 11:25:28 +01:00
DJ2LS
71be19ecc4
Merge branch 'main' into ls-hamlib-test 2022-01-05 11:54:31 +01:00
dj2ls
6a4fe14377 more debugging and buffer changes
fixed a buffer allocation which could cause problems somewhen later for N>1 frames per burst.
2022-01-05 10:59:09 +01:00
dj2ls
f93415d0b8 test and ARQ improvements
preparation for possible N>1 frames per burst
2022-01-04 23:02:29 +01:00
dj2ls
16deb1df6d improved logging 2022-01-04 14:45:30 +01:00
dj2ls
ea89a9e22b auto mode optimization
...in other words...gear shifting...
2022-01-04 14:16:50 +01:00
dj2ls
7837e4de0f fixed class function 2022-01-04 13:10:59 +01:00
dj2ls
8ea5c0de3f preparing for mode gear shifting 2022-01-04 13:09:15 +01:00
dj2ls
5895fc1a8e send a frame NACK
if crc fails we send a frame NACK and TX is going into idle state
2022-01-04 12:11:21 +01:00
dj2ls
2bf2f8b3ff cleanup, stopping transmission, modem timing...
I changed some parts which are R&D as well
2022-01-04 11:55:55 +01:00
dj2ls
ff668ee2b9 smaller fixes and tooltip update 2022-01-03 00:41:32 +01:00
dj2ls
1f6c53ecf0 improved rx stats 2022-01-03 00:27:05 +01:00
dj2ls
891e9c1a8e updated rx stats 2022-01-02 23:42:56 +01:00
dj2ls
442d2f3a51 first version ARQv2 2021-12-29 20:54:54 +01:00
dj2ls
b7c0d657ef Revert "first version ARQv2"
This reverts commit cc0475d8ad.
2021-12-29 20:53:11 +01:00
dj2ls
cc0475d8ad first version ARQv2 2021-12-29 20:42:27 +01:00
dj2ls
e4d36e5f21 first rigctl fallback thanks Franco 2021-12-28 17:05:48 +01:00
dj2ls
ad5fbfde00 forgot hamlib parameters
Ooops
2021-12-27 13:23:23 +01:00
dj2ls
3501b4f952 waiting for buffer
it seems we need to wait a little bit for our modulation data. There are some moments where audio output is stuck a little bit. Maybe python is sometimes faster than the buffer allocation or its a threading problem
2021-12-26 18:41:43 +01:00
dj2ls
0f72cb8f8a small waterfall improvement 2021-12-26 16:50:31 +01:00
dj2ls
d741778306 data channel speed improvements
and some code cleanup as well
2021-12-26 16:16:25 +01:00
dj2ls
d001f29609 changed order of starting fft and hamlib thread
avoiding runtime errors
2021-12-26 15:43:47 +01:00
dj2ls
ca7227d7da hamlib improvements
own function for every data type
2021-12-26 15:25:35 +01:00
dj2ls
a408a561cb tests with repeating a frame
we have problems here...
2021-12-26 10:06:07 +01:00
dj2ls
4b73f9c19f start of modem rewriting 2021-12-25 17:05:38 +01:00
DJ2LS
de979506f4
Merge branch 'main' into dr-resampler 2021-12-23 10:16:49 +01:00
dj2ls
f99daf6800 updated tnc modem code for testing TX and RX in same callback 2021-12-22 12:48:49 +01:00
dj2ls
0ecaeaa2bb removed audioop support
we want to test only the new buffer. Not sure if this is currently working
2021-12-20 18:59:29 +01:00
dj2ls
3a6ddad8d4 bug fix 2021-12-20 18:35:59 +01:00
dj2ls
6bd1f418e5 system status
closes #88 #90 #83
2021-12-20 18:05:00 +01:00
dj2ls
b54463965a code cleanup
this isn't the right place for doing tnc changes, but before I forget to change it...
2021-12-20 16:21:09 +01:00
dj2ls
e8283b5db0 integrated multimode callback test & FIFO queue to tnc
this is a first test to see how it performs
2021-12-20 15:38:43 +01:00
dj2ls
b0dfa666bf updated tnc modem with latest test results
lets see how the results perform within the TNC environment
2021-12-19 20:31:53 +01:00
dj2ls
72b653b188 preparation for ARQ test
added a directory 003_highsnr_stdio_arq for working on ARQ tests
2021-12-19 19:45:08 +01:00
dj2ls
4afaf2cc04 modem typo 2021-12-05 20:14:28 +01:00
dj2ls
82ddb6a297 modem tests
updated the modem and codec2 integration. However, this is the old modem. Maybe we need to stay at this point. Lets see how this version performs...hmpf...
2021-12-05 20:11:38 +01:00
dj2ls
6f9a34b0d6 hamlib compatibility
improved hamlib compatibility between v 3 and v 4.
2021-11-26 19:14:11 +01:00
dj2ls
fa01bd2bd1 fixed logging typo 2021-11-24 19:22:26 +01:00
dj2ls
93c12d642d updated Hamlib integration
moved back to system integration. It seems we need to have a look at the hamlib library pathes on linux distributions. They differ from version to version
2021-11-24 19:16:09 +01:00
DJ2LS
9e51eaa52f hamlib exception
hamlib search order now working for openSUSE
2021-11-20 10:20:30 +01:00
DJ2LS
5218eb3909 chat message test 2021-11-19 17:30:17 +01:00
DJ2LS
279fe7929f logging improvements
..and also a sample rate conversion test...
2021-11-19 14:52:58 +01:00
DJ2LS
1f0540daab updated path name to codec2 2021-11-18 21:41:39 +01:00
DJ2LS
4d187b91da updated hamlib folder 2021-11-18 21:01:13 +01:00
DJ2LS
f8cc8c58c8 new logging
still not finished....
2021-11-18 19:40:22 +01:00
DJ2LS
f015aaaca5 audio optimization and cleanup 2021-11-07 20:31:26 +01:00
DJ2LS
bbb500632e fix problem with libasound.so 2021-11-07 16:12:19 +01:00
DJ2LS
ebbe0715e6 hamlib changes and alsalib error handling #22
closes #22
2021-11-07 12:17:23 +01:00
DJ2LS
df38ee01ba gui & tnc improvements
displaying now frequency offset and frequency in heard stations. Decreased size of receiving audio buffer, which seems to optimize RX
2021-10-24 14:44:55 +02:00
DJ2LS
ef31935ade disabled offset correction closes #81
we are disabling this to avoid confusion. Maybe we will enable it somewhen later...
2021-10-13 20:43:38 +02:00
DJ2LS
6eae5604d0 reversed offset fix #81 2021-10-13 19:53:47 +02:00
DJ2LS
655d333af2 freq offset handling #81
first attempt just with pings. Station A sends a ping to Station B. Station B is detecting RX offset, adds it to the ping acknowledge frame and sends it back to Station A. Station A will then adjust the frequency
2021-10-13 19:39:46 +02:00
DJ2LS
2d18767fe6 bug fix closes #78 and network optimization 2021-10-05 21:03:15 +02:00
DJ2LS
e7ccf42ec3 modem optimization
optimized chunk size for audio data. DATAC3 should now work and overall SNR is optimized since we have less biterrors beacuse of losses by simultaneous buffer allocation
2021-10-03 16:31:34 +02:00
DJ2LS
8b08cc6e6b stop transmission
first attempt with stopping a transmission after the processing the current burst. Logging is a little bit ugly at this point, because it looks like a frame got lost. However, the transmission stops. CLI output is only visible for people interested in debugging...
2021-10-02 11:29:08 +02:00
DJ2LS
44ef586e4f optimized scatter
removed scales and popups, code cleanup as well
2021-10-01 19:05:43 +02:00
DJ2LS
c8ee5e2ff2 scatter point reduction
one step towards less network data
2021-09-30 21:49:22 +02:00
DJ2LS
794f8b221a code cleanup
gute code clean up with much less global variables now. ARQ beahvior has also been cut down. There can be done even more...
2021-09-27 17:33:59 +02:00
DJ2LS
e435e6e835 redesign of arq handler 2021-09-26 17:51:11 +02:00
DJ2LS
5c7e05ef70 better pep8 conformity 2021-09-25 15:24:25 +02:00
DJ2LS
468f660ebe improved hamlib integration
...also updated node dependencies to latest version...
2021-09-25 13:33:13 +02:00
DJ2LS
c478b9cbbf serveral stability improvements
moved hamlib polling into own thread. testing with smaller socket chunks
2021-09-24 17:16:38 +02:00
DJ2LS
b813e8562c minor modem change
problems can occur. changed modem to simultaneous decoding. socket now multithreaded. huge code cleanup neccesary
2021-09-23 17:49:45 +02:00
DJ2LS
15102346c7 git cli test 2021-09-16 17:17:55 +02:00
DJ2LS
c5d15017f2
updated ptt 2021-09-13 20:01:39 +02:00
DJ2LS
f52d0ea452
updated transfer calculation 2021-09-11 09:21:22 +02:00
DJ2LS
c230660c85
close audio and hamlib instances on quit 2021-09-10 18:56:33 +02:00
DJ2LS
1e6d8e36fd
update scatter only while receiving current mode 2021-09-10 18:11:17 +02:00
DJ2LS
b921c1b33b
updated logging: save to file 2021-09-10 17:59:01 +02:00
DJ2LS
f991627e68
solved log10 division by 0 failure in fft calc 2021-09-08 19:58:30 +02:00
DJ2LS
e3778c16d9
updated ptt and audio functions 2021-09-08 19:27:45 +02:00
DJ2LS
68d0e70a61
reset sock connection on decoding error 2021-09-08 18:23:26 +02:00
DJ2LS
efc6bc8ea5
small improvements 2021-09-08 18:04:21 +02:00
DJ2LS
8ab912fbcd
small ARQ and modem improvements 2021-09-08 17:25:11 +02:00
DJ2LS
32762703c9
improved transfer rate calculation 2021-09-06 20:31:12 +02:00
DJ2LS
4a3f10126a
moved back to python hamlib binding 2021-09-06 18:50:12 +02:00
DJ2LS
6f87e1f78a
Update modem.py 2021-09-05 16:11:53 +02:00
DJ2LS
099ad48f10
first working fft 2021-09-05 11:24:57 +02:00
DJ2LS
fffaf196b4
changed path to codec2 2021-09-05 10:20:48 +02:00
DJ2LS
1c697532b7
code cleanup 2021-09-04 22:59:58 +02:00
DJ2LS
770a6ccdaa
updated rigctld integration 2021-09-02 20:16:46 +02:00
DJ2LS
9061eef65a
moved to hamlib binaries 2021-09-02 19:41:01 +02:00
DJ2LS
425076402a
fixed ARQ_TX_N_TOTAL_ARQ_FRAMES 2021-08-23 18:53:22 +02:00
DJ2LS
0045ec3107
updated ARQ_TX_N_TOTAL_ARQ_FRAMES 2021-08-23 18:49:57 +02:00
DJ2LS
6d55f2c080
increased ptt timeout 2021-08-14 21:23:43 +02:00
DJ2LS
d3bd9e9230
send signalling frames once or more 2021-08-14 20:59:12 +02:00
DJ2LS
fc8dcec1f5
fixed radio frequency divisor 2021-08-07 19:25:11 +02:00
DJ2LS
be1ff1023e
sending signalling frames twice
test to see if we could improve channel quality
2021-08-07 12:30:23 +02:00
DJ2LS
6dbee32f08
only append scatter data if new data arrived 2021-08-07 11:43:31 +02:00
DJ2LS
59404404b8
less terminal output 2021-08-07 11:14:49 +02:00