Commit graph

290 commits

Author SHA1 Message Date
dj2ls
34cf0a4b05 cleanup 2022-02-19 20:45:57 +01:00
dj2ls
879ba00137 search for chunk from end
according to the last commit we are now searching for data chunks from the end of the existing data. If a data chunk exists twice or more in our already received data, only the last one will be replaced
2022-02-18 10:04:00 +01:00
dj2ls
6e0796f5a0 protocol adjustment
if we are loosing a burst ACK because of fading signals or bad conditions or just because - combined with a changing speed level -  theres now a good chance we are not loosing the entire data frame because of a corrupted CRC, anymore. We are now searching in already received data, if our new (smaller) data chunk already exists. If so, we are stripping the entire data to this position and adding our new data chunk. If not, it seems we received new data the regulary way. However, this could cause problems if we have a too small data entropie. We might also check if we have an increased NACK counter or if a data chunk exists, twice or more -  in a further step
2022-02-18 09:58:49 +01:00
dj2ls
2836072dc5 moved one step back
this multiprocessing stuff is weird on windows..
2022-02-17 20:45:20 +01:00
dj2ls
017574cb09 fixed a windows multoprocessing part 2022-02-17 20:28:47 +01:00
dj2ls
2d3a3735ec fixed multiprocessing issue with audio devices
usage of data manager between multiprocessing communication
2022-02-17 16:52:11 +01:00
dj2ls
406518503a fix multiprocessing support on windows 2022-02-17 14:25:22 +01:00
dj2ls
a8d1d576ad sending twice before lowering speed-level
possible this helps avoiding a problem with lost burst ACK
2022-02-17 12:30:38 +01:00
dj2ls
1a45753c84 fixed audio updating
not sure if this was necessary. Makes no sense
2022-02-17 10:29:02 +01:00
dj2ls
efc700b1f7 possible fix for #132
it seems, pyaudio isnt terminated correctly. running it within a subprocess which will be closed after execution, pyaudio seems to be terminated and not causing a problem anymore on raspberry pi. Yay
2022-02-17 10:11:12 +01:00
dj2ls
7a93f0a824 fixed callsign detection and default config 2022-02-17 08:32:19 +01:00
dj2ls
7729ea447f added first mac workflow
a first test...
2022-02-16 16:47:01 +01:00
dj2ls
a66f25a14f added libcodec2 for macOS 2022-02-16 16:24:22 +01:00
dj2ls
30bbf75521 fixed unclean closing
closing application now by signals closes #133
2022-02-16 09:11:32 +01:00
dj2ls
699adb7860 added mingw libs 2022-02-15 19:05:02 +01:00
dj2ls
a39fc9fb0d removed old lib folder 2022-02-15 19:02:05 +01:00
dj2ls
7eb86c2dc3 changed included folders for pyinstaller 2022-02-15 18:16:46 +01:00
dj2ls
d155232c74 updated libcodec2 2022-02-15 18:11:07 +01:00
dj2ls
d21532d0b5 busy detection & updated github action 2022-02-15 18:10:14 +01:00
dj2ls
196b18393f hamlib/settings
re-enabled hamlib thread, added a settings menu, updated package.json file
2022-02-10 14:38:55 +01:00
dj2ls
35d95bbb14 500hz mode, protocol improvements....
...and a lot of different changes. Also deactivated single mode transmission. This needs to be optimised another day...Time is the missing ressource...
2022-02-08 15:27:34 +01:00
dj2ls
92cf30225e updated libsearch
added precompiled libcodec2 version for 64bit / 32bit / armv7 (raspberry pi). Also updated library search which is now much more flexible and (hopefully) less confusing.
2022-02-04 16:24:04 +01:00
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
3835e19c4a updated command stack
also fixed a problem with receiving data within GUI #129
2022-01-30 14:16:08 +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
1e109da2e4 rigctld port fix and stuck in re opening data channel
data channel stuck in opening process when opening datachannel failed
2022-01-24 23:29:34 +01:00
dj2ls
43aa469633 hotfix for rigctld
fixing wrong ip and improved error handling so rigctld is hopefully not crashing for the early testers out there
2022-01-24 22:01:01 +01:00
dj2ls
5bdd6c569e increased CRC
increased crc for callsigns to CRC16 and for data to CRC32
2022-01-24 19:42:59 +01:00
dj2ls
5d3bb69e0a better rigctld error handling 2022-01-23 08:38:02 +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
2c57923c11 new daemon
non blocking and multi client support also attempt of fixing #129
2022-01-22 20:39:37 +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
cd757f3ca3 updated hamlib linux binaries
hopefully this is a portable version...
2022-01-16 18:01:47 +01:00
dj2ls
2157130f69 changed build action
tnc and daemon now in subdirectory which is not build as single application for easier debugging.
2022-01-16 17:57:31 +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
6c519c5e8d hamlib cleanup 2022-01-15 17:06:02 +01:00
dj2ls
414c50e435 changed codec2 search path
this isnt working on different OS. We need to find a way fixing this for windows within a pyinstaller environment
2022-01-14 10:56:07 +01:00
dj2ls
0c39eb340f additional library loading
it seems CDLL and LibraryLoader of ctpys lib are different on OSes #76
2022-01-12 09:11:23 +01:00
dj2ls
a49844011c updated search path 2022-01-12 08:01:43 +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
5804d62036 updated lib search pathes 2022-01-11 22:16:14 +01:00
dj2ls
2f146ec4a3 windows adjustements 2022-01-11 16:53:35 +01:00
dj2ls
284daf0258 hamlib test 2022-01-11 14:57:11 +01:00
dj2ls
cc3145fc1d fix stop transmission 2022-01-10 18:11:21 +01:00
dj2ls
53aefc0f80 send end of transmission frame
closes #113
2022-01-10 18:09:38 +01:00
dj2ls
0baa544bf0 handle data sent twice
if the ACK frame doesnt receive its destination and data will be resent, we can handle this now.
2022-01-10 17:01:33 +01:00
dj2ls
ec83c16856 increase speed level on burst ack
also stay longer in slow modes
2022-01-10 12:14:40 +01:00
dj2ls
4b6397c0ab small gui changes
closes #104
2022-01-10 09:06:08 +01:00