Commit Graph

348 Commits

Author SHA1 Message Date
wb2osz c59053536e Add short delay after enabling GPIO pin. Issue #176 2019-07-07 11:29:23 -04:00
wb2osz edaf661bb1 Detect MINGW, as well as CYGWIN, for Windows build environment. #76 2019-07-07 08:44:06 -04:00
wb2osz e0c2c31181 Compatibility with GPSD API 8. #214 2019-07-07 08:24:51 -04:00
wb2osz ca7db91da2 Text color improvements. 2019-07-06 20:34:51 -04:00
wb2osz e962246fd2 Fix compiler warning. 2019-07-06 17:31:16 -04:00
wb2osz 342989b100 Issue 210. USB Audio GPIO bytes reversed. 2019-07-05 21:08:23 -04:00
wb2osz ce6c617203 Typo in comment. 2019-06-30 19:51:26 -04:00
wb2osz 742d046c40 Clarifying comments. 2019-06-30 19:46:00 -04:00
wb2osz 698ca1ea87 Use same text color escape sequences for ARM and other.
Add "-t 2" option for better results with PuTTY.
2019-06-29 21:28:51 -04:00
wb2osz 4c5004b6a1 Fix new warnings for gcc 8.3. 2019-06-29 10:00:40 -04:00
wb2osz 90921b9376 cut-n-paste error. 2019-05-19 21:41:05 -04:00
wb2osz a32064571d Make file omissions. 2019-05-19 21:17:49 -04:00
wb2osz b37fda96fb 2400 bps PSK compatibility with MFJ-2400. 2019-05-19 20:57:56 -04:00
wb2osz ad12fa86d6 Replace channel valid boolean with more versatile enum. 2019-05-13 06:25:12 -04:00
wb2osz d6ea439f98 New features for version 1.6. 2019-04-21 19:57:11 -04:00
wb2osz a5f3de2222 Fix compile warning. 2019-04-21 19:52:18 -04:00
wb2osz a4d87e4013 New function to generate APRS "message." 2019-04-21 19:36:20 -04:00
wb2osz 7fc9f31fbc More comments about GNSS. 2019-04-21 19:31:41 -04:00
wb2osz d828a8abe3 Add description for raw GPS data. 2019-04-21 19:27:44 -04:00
wb2osz aea1eb7b41 Better error message for invalid channel which could
be caused by use of SMACK rather than standard KISS.
2019-04-21 19:17:06 -04:00
wb2osz c559f0d443 Clarifying comment. 2019-04-21 19:14:52 -04:00
wb2osz 792569b991 More error checking. 2019-04-21 19:13:18 -04:00
wb2osz 8a2138e16b More transmit timing debug code. 2019-04-21 19:09:41 -04:00
wb2osz bfa7f4af93 Get necessary libasound header files. Pull request 189. 2019-02-17 22:00:30 -05:00
wb2osz a1e2d1c3a8 Issue 196 - Compatibility with GPSD API 7. 2019-02-17 21:49:51 -05:00
wb2osz d0cad72955 gcc 9 warnings. 2019-02-17 21:43:03 -05:00
wb2osz 7b5fc163dc More error checking. 2019-02-17 21:11:40 -05:00
wb2osz f1b54df647 Issue 196 - Compatibility with GPSD API 7. 2019-02-17 21:04:49 -05:00
wb2osz 71b3ca0047 AX.25 Throughput: Why is 9600 bps Packet Radio only twice as fast
as 1200?
2019-01-22 22:05:29 -05:00
wb2osz 2d3a04d0f1 New document: Why is 9600 only twice as fast as 1200 ? 2019-01-22 21:59:41 -05:00
wb2osz ab3796905e New document: Why is 9600 only twice as fast as 1200 ? 2019-01-22 21:49:20 -05:00
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 a200f3da7e Add link to separate repository with presentations. 2018-11-25 15:41:04 -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