Commit Graph

307 Commits

Author SHA1 Message Date
wb2osz e3dc8bbf1b New "-g" option for direwolf and atest to force G3RUH modem and override
default for the speed.   atest -h will display frame as hexadecimal
bytes.
2019-01-21 11:07:20 -05:00
wb2osz c7dcfd141e Latest symbols-new.txt and tocalls.txt 2019-01-06 12:06:16 -05:00
wb2osz a46471bf36 Fix counting of packets in transmit queue. 2019-01-06 12:04:02 -05:00
wb2osz 1a2de05e71 Better error message. 2019-01-06 11:59:14 -05:00
wb2osz 07f2174be4 Add ability to handle multiple audio files with one command. 2019-01-06 11:57:25 -05:00
wb2osz 08a691a02d Issue 169 - Fix AGW protocol 'Y' command. 2019-01-06 11:52:45 -05:00
wb2osz a5211f48fb Issue 169 - Fix AGW protocol 'Y' command. 2019-01-06 11:47:17 -05:00
wb2osz 41a85d87a7 Issue 169 - Fix AGW protocol 'Y' command. 2019-01-06 11:45:14 -05:00
wb2osz e1a4716857 Rename sock.c to dwsock.c to avoid confusion. 2019-01-06 11:35:08 -05:00
wb2osz ab40b1169e Rename sock.c to dwsock.c to avoid confusion. 2019-01-06 11:29:24 -05:00
wb2osz ecf5fd1d59 Issue 186 - Copy KISS frames between TCP KISS clients. 2019-01-01 19:59:58 -05:00
wb2osz c13375a9ab Merge branch 'dev' of https://github.com/wb2osz/direwolf into dev 2019-01-01 16:00:54 -05:00
wb2osz 84efe8c59b Issue 187. Updated MicroModem performance. 2019-01-01 15:56:44 -05:00
Annaliese McDermond 91d5b90e2a Fix transmit failures when using virtual devices
Direwolf does not send a continuous stream to the audio device.
It merely sends samples when it has a transmission to accomplish.
This seems to work okay on hardware devices, but is causing an
issue when working against a virtual device like plug or dmix
because the vitual device seems to get into a weird state while
direwolf is not sending samples.  This causes it to error out
with -EBADFD on every transmission after the first.

Direwolf tries to recover from this error by running
snd_pcm_recover() on the output device.  Inspecting the code of
this function revealed that it was a noop on any errors other
than -EPIPE or -ESTRPIPE, so it had no hope of fixing any issues
other than a buffer underrun or a suspended device.

This patch breaks things out so that we only run snd_pcm_recover()
on -EPIPE or -ESTRPIPE, and for any other error we go ahead and
just try to prepare the device again.  This appears to work to
make transmissions subsequent to the first work correctly on
virtual devices.  We handle -EBADFD differently merely so that
we don't print the error message for a quasi-expected condition.

This problem could also possibly be solved by unprotecting the
snd_pcm_prepare() on line 1174 of audio.c and just preparing the
device whether it apparently needs it or not, but I'm wary of the
unintended consequences of doing so in cases where the code is
currently working.  Much more testing would be necessary for that
solution.  This solution should only touch cases that are not working
currently regardless.
2018-12-02 19:59:03 -05:00
wb2osz b915842c9f Add link to separate repository with presentations. 2018-11-25 15:36:26 -05:00
wb2osz 9eaf9e361c Merge branch 'jedahan-macOS' into dev 2018-11-24 17:52:08 -05:00
wb2osz 20f9e15b8b Merge branch 'macOS' of git://github.com/jedahan/direwolf into jedahan-macOS 2018-11-24 17:51:28 -05:00
wb2osz 79df808d5d Issue 151 - Add support for Multi-GNSS NMEA sentences. 2018-11-24 17:20:45 -05:00
wb2osz c5526524b6 Begin version 1.6 development. 2018-11-24 16:57:05 -05:00
wb2osz 4590e21934 Include errno.h rather than sys/errno.h 2018-11-23 16:33:45 -05:00
wb2osz da0a33ef2a Version 1.5 2018-10-08 09:49:18 -04:00
Jonathan Dahan e0fcdb8835 macOS: default to latest macOS if version string isnt found 2018-10-01 14:26:22 -04:00
Jonathan Dahan 9a98aed96e macOS: use INSTALLDIR in makefile to find libraries 2018-10-01 14:26:22 -04:00
Jonathan Dahan 9665fa845b macOS: use march=native in build 2018-10-01 14:26:22 -04:00
Jonathan Dahan 331b5774f9 macOS: remove -fslp-vectorize-aggressive as it is deprecated 2018-10-01 14:26:22 -04:00
wb2osz 11071bb06a Improve error message for audio output failure. 2018-09-12 06:31:42 -04:00
wb2osz be705987e2 Merge branch 'joshbuhler-jb_macBuildFixes' into dev
Mac build fixes - Pull request 140
2018-08-05 21:20:12 -04:00
wb2osz f864874771 Merge branch 'jb_macBuildFixes' of git://github.com/joshbuhler/direwolf into joshbuhler-jb_macBuildFixes
Mac build fixes - Pull request 140
2018-08-05 21:14:48 -04:00
wb2osz 220e7dd1c4 Issue 132 continued. If a client app tried to send connected data when
the transmitter was already on, the packet would get stuck in the outgoing
data queue.
2018-08-05 11:20:27 -04:00
wb2osz 4ecaf478cf Issue 132 - Sometimes, when outgoing frames would exceeed the "window" size
(MAXFRAME or EMAXFRAME) they would get stuck in a queue and not be released later.
2018-07-02 14:17:02 -04:00
wb2osz 38ab57afa4 New NOXID option to avoid wasting time to listed station(s)
which understand SABME but not XID.
2018-07-02 12:18:23 -04:00
wb2osz 22f645756d Add 100 baud AFSK default tones. 2018-07-02 12:02:28 -04:00
Josh Buhler b40d3fa134 ignore file tweaks 2018-04-03 19:56:45 -06:00
Josh Buhler 49ea703af1 Makefile tweaks
Uses the changes from pull request #71 by schuyler from the main direwolf repo
2018-04-03 19:56:02 -06:00
Josh Buhler 09a984a790 MSG_NOSIGNAL is not available on macOS 2018-04-03 19:54:34 -06:00
Josh Buhler 995fc89866 Fixes path used to find SDK 2018-04-03 16:49:38 -06:00
wb2osz 182713f423 Minor documentation updates. 2018-02-11 19:51:43 -05:00
wb2osz 4c6babebd0 1.5 beta test 2. Fixes for TCP KISS on Linux. 2018-02-11 19:48:28 -05:00
wb2osz 99d4d904b2 KISS over TCP behaved strangely with multiple client apps attached. 2018-02-11 19:45:44 -05:00
wb2osz 2328ecdf55 Minor documentation updates. 2018-02-06 22:33:17 -05:00
wb2osz 5e9d67834b Better error messages. 2018-02-06 22:30:44 -05:00
wb2osz 95c302566a Time stamps in wrong place. 2018-02-01 19:48:08 -05:00
wb2osz db4c07a2b1 1.5 beta test version. 2018-01-07 15:58:04 -05:00
wb2osz fa7d3bce47 Missing else resulted in incorrect and confusing error message. 2018-01-03 22:43:38 -05:00
wb2osz 26599ec771 Use standard DESTDIR, rather than INSTALLDIR, and allow it to be set on the make command line. 2018-01-03 22:40:21 -05:00
wb2osz c41841e859 New -T command line option for timestamps. 2018-01-03 21:04:33 -05:00
wb2osz d8e9273403 Clean up Linux install locations. 2018-01-03 20:57:56 -05:00
wb2osz 34aa3f84ea Latest tocalls.txt 2018-01-02 23:22:12 -05:00
wb2osz 2ac99a33dd Minor ocumentation updates. 2018-01-02 22:47:29 -05:00
wb2osz 9febac9696 Clean up Linux install locations. 2018-01-02 21:54:13 -05:00