Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
- Direwolf
- Messages
Search
Re: Could not open audio device
I think I found the issue although I don't know how to fix it ... I'm not that good at linux commands.
I changed directory to direwolf10-28-10 ? ?which I think is the day I downloaded the v1.6 from there I ran direwolf and it started. Looks like I need to fix the program name on / How? |
Re: Could not open audio device
Also did you try starting Direwolf with sudo?? If it works with sudo, it's a permissions issue.
On Monday, February 1, 2021, 5:54:21 PM EST, KP3FT via groups.io <kp3ft@...> wrote:
What does aplay -l show?? Is there anything starting up on boot in the background that is using the card? Might also be a permissions thing, but maybe I'm thinking of only the CM108 PTT permissions.
On Monday, February 1, 2021, 5:39:57 PM EST, Keith Kaiser <wa0tjt@...> wrote:
I've rebooted this Raspberry Pi 15 times or more working on this so I don't think another instance of Direwolf is running. This is v5.4.79-v7+ Which translates to Buster Version 10 Completely updated and upgraded. |
Re: Could not open audio device
What does aplay -l show?? Is there anything starting up on boot in the background that is using the card? Might also be a permissions thing, but maybe I'm thinking of only the CM108 PTT permissions.
On Monday, February 1, 2021, 5:39:57 PM EST, Keith Kaiser <wa0tjt@...> wrote:
I've rebooted this Raspberry Pi 15 times or more working on this so I don't think another instance of Direwolf is running. This is v5.4.79-v7+ Which translates to Buster Version 10 Completely updated and upgraded. |
Re: Could not open audio device
It could be a "hidden" instance of Direwolf running in the background at the same time; you'll get that error.? Also, what OS are you using?
On Monday, February 1, 2021, 4:37:05 PM EST, Keith Kaiser <wa0tjt@...> wrote:
I've been running Direwolf for years. Recently I upgraded to 1.6 and can not get it to run any longer. I'm using the same audio device as always, and because I have 3 of them I've tried all three. I also tried a iMic from years passed which used to work too. But regardless of the audio device I get the error. My command to run is: direwolf -c direwolf-NEW.conf -t O Which results with: Dire Wolf Version 1.6 Includes optional support for: hamlib cm108-ptt Reading config file direwolf-NEW.conf Audio device for both receive and transmit: plight:1,0 ?(channel 0?) Could not open audio device plight:1,0 for input No such file or directory Pointless to continue without audio device. I also tried using the default by just running; direwolf Which results in exactly the same response. Has anyone else run into this issue, have a way to fix it? |
Could not open audio device
I've been running Direwolf for years. Recently I upgraded to 1.6 and can not get it to run any longer.
I'm using the same audio device as always, and because I have 3 of them I've tried all three. I also tried a iMic from years passed which used to work too. But regardless of the audio device I get the error. My command to run is: direwolf -c direwolf-NEW.conf -t O Which results with: Dire Wolf Version 1.6 Includes optional support for: hamlib cm108-ptt Reading config file direwolf-NEW.conf Audio device for both receive and transmit: plight:1,0 ?(channel 0?) Could not open audio device plight:1,0 for input No such file or directory Pointless to continue without audio device. I also tried using the default by just running; direwolf Which results in exactly the same response. Has anyone else run into this issue, have a way to fix it? |
Re: Cannot get gps information using GPSNMEA
I made it!!!!
I'm using?GPSNMEA with direwolf and it's working fantastic. The solution was to correct the speed to 4800 and make a change in my python code to delay the start of direwolf, because GPS must get Location fix and then it will work.
?
Thank you all! |
Re: Cannot get gps information using GPSNMEA
¿ªÔÆÌåÓýHello Luis As I can see in the device manual, the baudrate is 115200, should I change it to 4800 or change this 4800 values to 115200? Are you sure it defaults to 115200?? That's pretty uncommon but regardless, yes, you can change these commands to 115200. BUT.. I researched Direwolf's GPSNEMA option and it ONLY supports 4800bps.? You can change this in src/dwgpsnmea.c and recompile Direwolf but maybe in the future, WB2OSZ can add another command line option to support other speeds. If you want to use Direwolf natively today, you'll need to change your GPS to 4800bps.? If not, you'll need to run gpsd and let it communicate your position to Direwolf. ? ?stty -F /dev/ttyS0 ispeed 4800 ospeed 4800 -ignpar cs8 -cstopb -echo Change that command to: ?? stty -F /dev/ttyS0 ispeed 115200 ospeed 115200 -ignpar cs8 -cstopb -echo then run: ?? cat /dev/ttyS0 With the serial port initialized, now you should see if you get output:With me nothing happens. Your GPS receiver might need more advanced serial configuration like hardware flow control, etc.? You can play around with programs like minicom, moserial, Cutecom, etc. to better test this out.
I'm not a GPS expert but ideally, you want to have this unit to DEFAULT on.? I would research the AT+ commands to see how to save this setting. What specific GPS module is this?? Maybe you can research it with including gpsd to see if there are existing posts telling you how to get going.
I bet it's not actually installed and instead, it has a placeholder present.? Run the command: ?? dpkg -l | grep gpsd Is the left most column showing something like "rc"?? If so, it's not installed: ?? You need to really install it with: ?? sudo apt install gpsd The response to this command was slightly different: Looks like you already have gpsd running.? I have some details about this one of my docs here: ?? Here you used ttyUSB0, it's like you wrote? Sorry.. to be honest, I have a USB attached GPS unit and not a legacy serial GPS.? The setup will be identical though so you can ignore the device name differences here --David |
Re: Cannot get gps information using GPSNMEA
Couple of side observations -- 1. You are changing the GPS baud rate to 115200, you may want to start with the default NMEA rate of 4800 baud. 2. It looks like GPSD is running ahead of your configuration.? Stop GPSD, start the GPS, then start GPSD, and make sure you have the right serial configured via /etc/default/gpsd configuration file. I don't have one of these hats, but run both the and on Raspberry Pi and have a fair amount of experience with GPS, PPS, and NTP.? I just ordered one of these units to play with, thanks for the reference. On Sun, Jan 31, 2021 at 12:10 PM <lufer2000@...> wrote: Thank you very much David for your reply. --
John D. Hays Kingston, WA K7VE ? |
Re: Cannot get gps information using GPSNMEA
Thank you Rob,
Here are my answers to your questions. The code that I used as a demo is the following: #!/usr/bin/python
# Filename: text.py
import serial
import time
ser = serial.Serial("/dev/ttyS0",115200)
?
W_buff = ["AT+CGNSPWR=1\r\n", "AT+CGNSSEQ=\"RMC\"\r\n", "AT+CGNSINF\r\n", "AT+CGNSURC=2\r\n","AT+CGNSTST=1\r\n"]
?
ser.write(W_buff[0])
ser.flushInput()
data = ""
num = 0
?
try:
? ? while True:
? ? ? ? #print ser.inWaiting()
? ? ? ? while ser.inWaiting() > 0:
? ? ? ? ? ? data += ser.read(ser.inWaiting())
? ? ? ? if data != "":
? ? ? ? ? ? print data
? ? ? ? ? ? if? num < 4:? ? # the string have ok
? ? ? ? ? ? ? ? print num
? ? ? ? ? ? ? ? time.sleep(0.5)
? ? ? ? ? ? ? ? ser.write(W_buff[num+1])
? ? ? ? ? ? ? ? num =num +1
? ? ? ? ? ? if num == 4:
? ? ? ? ? ? ? ? time.sleep(0.5)
? ? ? ? ? ? ? ? ser.write(W_buff[4])
? ? ? ? ? ? data = ""
except keyboardInterrupt:
? ? if ser != None:
? ? ? ? ser.close()
I mada a new one for me and it works. But this one is the demo one. Yes. Yes
Here is the output: AT+
0
CGNSPWR=1
OK
?
1
AT+CGNSSEQ="RMC"
OK
?
2
AT+CGNSINF
+CGNSINF: 1,1,20210131204718.000,41.458769,-8.350714,119.157,0.00,251.5,2,,0.9,1.6,1.3,,12,12,9,,49,,
?
OK
?
3
AT+CGNSURC=2
OK
AT+CGNSTST=1
OK
$GNGGA,204720.000,0010.526141,N,0001.042848,W,2,12,0.95,119.157,M,51.479,M,,*67
$GPGSA,A,3,23,16,18,20,10,26,08,,,,,,1.61,0.95,1.30*0A
$GLGSA,A,3,78,87,88,72,79,,,,,,,,1.61,0.95,1.30*1D
$GPGSV,3,1,12,16,87,335,34,26,59,144,24,27,57,301,,20,38,093,45*7A
$GPGSV,3,2,12,18,36,049,49,23,34,096,46,10,28,132,35,08,21,278,17*71
$GPGSV,3,3,12,07,11,322,,40,11,108,28,21,05,224,,31,04,181,24*73
$GLGSV,3,1,09,78,72,247,24,88,69,341,38,87,38,036,40,81,35,255,*69
$GLGSV,3,2,09,79,32,324,18,77,30,170,,72,12,069,17,71,07,023,19*6C
$GLGSV,3,3,09,65,04,109,31*51
$GNRMC,204720.000,A,0010.526141,N,00001.042848,W,0.00,251.47,310121,,,D*6D
$GNVTG,251.47,T,,M,0.00,N,0.00,K,D*23
Robert Giuliano Thanks in advanced, Luis |
Re: Cannot get gps information using GPSNMEA
Thank you very much David for your reply.
toggle quoted message
Show quoted text
But after I used some commands, I didn' have the same replies from the GPS. You can see my answers below. Thanks in advanced. On Sun, Jan 31, 2021 at 06:23 PM, David Ranch wrote:
As a test, try this.? The first step initializes and ACTIVATES your serial port.? This example assumes the you're you've logged into the Linux computer with an account which is in the "dialout" group, it's on /dev/ttyS0, and the GPS runs at a serial speed of 4800:As I can see in the device manual, the baudrate is 115200, should I change it to 4800 or change this 4800 values to 115200? ? ?stty -F /dev/ttyS0 ispeed 4800 ospeed 4800 -ignpar cs8 -cstopb -echoWith me nothing happens. ? I use this python code to start the GPS reciever: #!/usr/bin/python
?
import serial
import time
?
# Enable Serial Communication
port = serial.Serial("/dev/ttyS0", baudrate=115200, timeout=1)
# Transmitting AT Commands to the Modem
# '\r\n' indicates the Enter key
?
port.write('AT'+'\r\n')? ? ? ? ? ??
time.sleep(.1)
?
port.write('AT+CGNSPWR=1'+'\r\n')? ? ? ? ? ? ?# to power the GPS
time.sleep(.1)
?
port.write('AT+CGNSIPR=115200'+'\r\n') # Set the baud rate of GPS
time.sleep(.1)
?
I start to see the following:The response to this command was slightly different: gpsd:INFO: launching (Version 3.17)
gpsd:IO: opening IPv4 socket
gpsd:ERROR: can't bind to IPv4 port gpsd, Address already in use
gpsd:ERROR: maybe gpsd is already running!
gpsd:IO: opening IPv6 socket
gpsd:ERROR: can't bind to IPv6 port gpsd, Address already in use
gpsd:ERROR: maybe gpsd is already running!
gpsd:INFO: command sockets creation failed, netlib errors -1, -1
?
?? In terminal #2, run:Here you used ttyUSB0, it's like you wrote? ³¢³Ü¨ª²õ |
Re: Cannot get gps information using GPSNMEA
I don't have this 'HAT' (porobably on a few on the list do) so most of the help comes from reviewing the infomration provided. If you post a little of the 'demo code' you used that worked, or better yet a link to the demo code for review. 1. Does your python code attach to /dev/ttyS0 also? 2. Does it issue AT+ commands in a loop and the NMEA sentences are respnses to those commands?3. Post the output (preferrably the NMEA output) from your script. Direwolf is expecting NMEA strings.? They are fairly close tot he APRS format, so are easy to manipulate into APRS position messages.? Robert Giuliano
On Sunday, January 31, 2021, 11:26:31 AM EST, lufer2000@... <lufer2000@...> wrote:
[Edited Message Follows] Hello,I have a connected to a RPi 3B+ and when I used the demo code, everything goes fantastic, That code uses AT+ commands and the results are NMEA sentences. I wrote a very simple program in python I aget all the information that I want: time, lat, lon and alt. My problem is to send all the information through the sound card, using Direwolf. I added the line "GPSNMEA /dev/ttyS0" in the file direwolf.conf and I still don't get any information. The only informations that I got was the Morse signal.
Can someone help me?
This is for a school project with high altitude ballon.
P.S. - I have the GPSD installed but it doesn't work and I don't know why.
Best regards, ³¢³Ü¨ª²õ |
Re: Cannot get gps information using GPSNMEA
¿ªÔÆÌåÓýI have a connected to a RPi 3B+ and when I used the demo code, everything goes fantastic, That code uses AT+ commands and the results are NMEA sentences. I wrote a very simple program in python I aget all the information that I want: time, lat, lon and alt. As a test, try this.? The first step initializes and ACTIVATES your serial port.? This example assumes the you're you've logged into the Linux computer with an account which is in the "dialout" group, it's on /dev/ttyS0, and the GPS runs at a serial speed of 4800: ?? stty -F /dev/ttyS0 ispeed 4800 ospeed 4800 -ignpar cs8 -cstopb -echo With the serial port initialized, now you should see if you get output: ?? cat /dev/ttyS0 I start to see the following: -- ??6v&?fF&??c&V??vF?v???F?F??6v?6??c?&V?v??c??V&k $GPGSA,A,3,22,16,03,04,,,,,,,,,9.3,4.8,7.9*3A $GPRMC,180315.000,A,3720.6142,N,12159.9974,W,0.80,,310121,,,D*6B $GPGGA,180316.000,3720.6142,N,12159.9977,W,2,04,4.8,37.0,M,-25.7,M,,0000*58 $GPGSA,A,3,22,16,03,04,,,,,,,,,9.3,4.8,7.9*3A $GPRMC,180316.000,A,3720.6142,N,12159.9977,W,0.98,,310121,,,D*62 $GPGGA,180317.000,3720.6143,N,12159.9977,W,2,04,4.8,36.9,M,-25.7,M,,0000*50 $GPGSA,A,3,22,16,03,04,,,,,,,,,9.3,4.8,7.9*3A $GPRMC,180317.000,A,3720.6143,N,12159.9977,W,0.39,,310121,,,D*69 $GPGGA,180318.000,3720.6142,N,12159.9976,W,2,04,4.8,37.0,M,-25.7,M,1.8,0000*70 -- If that doesn't work, maybe your GPS needs to be manually initialized before it starts sending NMEA sentences?? Look at the manual to see that once you get the right AT commands in it, can you SAVE those settings as default so it will auto-start.? If not, you'll need to send commands to it.? For example, here is one way to send commands: GPSPORT=/dev/ttyS0 GPSSPEED=4800 (stty -F $GPSPORT ispeed $GPSSPEED ospeed $GPSSPEED -ignpar cs8 -cstopb -echo; echo -e "AT+\r"; ) <$GPSPORT >$GPSPORT
There could be a few reasons here: ?? 1. If the GPS doesn't auto-start, you'll have to initialize it first and then run gpsd.? See the gpsd man page and /etc/gpsd/device-hook to see how to do this the gpsd way ?? 2. GPSD wont' do anything until a client connects to it. You can test gpsd by doing the following: ?? In terminal #1, run: ????? /usr/sbin/gpsd -N -D 5 /dev/ttyS0 ????? -- ????? gpsd:INFO: launching (Version 3.17) ????? gpsd:IO: opening IPv4 socket ????? gpsd:IO: opening IPv6 socket ????? gpsd:ERROR: can't bind to IPv6 port gpsd, Cannot assign requested address ????? gpsd:INFO: listening on port gpsd ????? gpsd:PROG: NTP: shmat(4,0,0) succeeded, segment 2 ????? gpsd:PROG: NTP: shmat(5,0,0) succeeded, segment 3 ????? gpsd:PROG: NTP: shmat(6,0,0) succeeded, segment 4 ????? gpsd:PROG: NTP: shmat(7,0,0) succeeded, segment 5 ????? gpsd:PROG: NTP: shmat(8,0,0) succeeded, segment 6 ????? gpsd:PROG: NTP: shmat(9,0,0) succeeded, segment 7 ????? gpsd:PROG: successfully connected to the DBUS system bus ????? gpsd:PROG: shmget(0x47505344, 8928, 0666) for SHM export succeeded ????? gpsd:PROG: shmat() for SHM export succeeded, segment 10 ????? gpsd:INFO: stashing device /dev/ttyS0 at slot 0 ????? gpsd:INFO: running with effective group ID 1000 ????? gpsd:INFO: running with effective user ID 1000 ????? gpsd:INFO: startup at 2021-01-31T18:17:57.000Z (1612117077) ????? -- ?? In terminal #2, run: ????? cgps ????? -- ????? .01a ","activated":"2021-01-31T18:21:34.306Z","flags":1,"native":1,"bps":4800,"parity":"N","stopbits":1,"cycle":1.00}]} ????? {"class":"WATCH","enable":true,"json":true,"nmea":false,"raw":0,"scaled":false,"timing":false,"split24":false,"pps":false} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:33.730Z","ept":0.005} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:34.730Z","ept":0.005} ????? {"class":"SKY","device":"/dev/ttyUSB0","time":"2025-11-30T18:21:35.730Z","xdop":0.89,"ydop":1.40,"vdop":4.20,"hdop":0.00,"gdop":5.26,"pdop":4.60} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:35.730Z","ept":0.005} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:36.730Z","ept":0.005} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:37.730Z","ept":0.005} ????? {"class":"SKY","device":"/dev/ttyUSB0","time":"2025-11-30T18:21:38.730Z","xdop":0.89,"ydop":1.40,"vdop":4.20,"hdop":0.00,"gdop":5.26,"pdop":4.60} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:38.730Z","ept":0.005} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:39.730Z","ept":0.005} ????? {"class":"TPV","device":"/dev/ttyUSB0","mode":1,"time":"2025-11-30T18:21:40.730Z","ept":0.005} ???? -- --David KI6ZHD |
Re: Use PAT with Direwolf
¿ªÔÆÌåÓýHello Darrell, I found the below on the internet and it did allow me to attach a modem. It turns out there are two of every AX25 files after you install the AX25 tools, and I was using the wrong set Did you installed multiple versions of the libax25/ax25apps/ax25tools packages?? That would cause this and you shouldn't do that.? Maybe you manually compiled and then did a "make install" which will create all those files.? Some projects offer things like "make uninstall" which will delete all the files they copied in but not all do.? This is one of the main reasons why I recommend people to package any programs they compile so you can do 100% cleanups. The Debian policy for Ax.25 file locations would have ax25 binary files placed in /usr/sbin/ or bin, configuration files in /etc/ax25, and data files in /var/ax25. As I understand it, the philosophy is that if the program comes from an OS distribution, programs go in /usr but if the user provides the software, the binaries should go in /usr/local or /opt? I personally approach this if you have packaged the software and maintain it, I place the code in /usr and unpackaged software goes in /usr/local.? The choice is yours *but* you have to make sure the software is looking in the right place for it's configuration files, etc.? Just because the packaging system might put the code in say /usr/local does NOT mean the programs won't look in the standard places. Btw, the /var/ax25 path is evidently deprecated and Debian is pushing on the use of /var/lib/ax25.? Not much software has adopted it as most of it is barely maintained anymore. mkdir /usr/local/etc && mkdir /usr/local/etc/ax25 Doing this is your choice and to make it a little faster you can do: sudo mkdir -p /usr/local/etc/ax25
Per the LSB, this is incorrect.? You should be using /var/local/...
If creating these symlinks is required for the programs to work then you are only making things difficult for yourself (going against the grain).? You should adopt placing all the required configuration files, etc. in /etc/ax/25, /var/ax25, etc. --David KI6ZHD |
Cannot get gps information using GPSNMEA
Hello,
I have a connected to a RPi 3B+ and when I used the demo code, everything goes fantastic, That code uses AT+ commands and the results are NMEA sentences. I wrote a very simple program in python I aget all the information that I want: time, lat, lon and alt. My problem is to send all the information through the sound card, using Direwolf. I added the line "GPSNMEA /dev/ttyS0" in the file direwolf.conf and I still don't get any information. The only informations that I got was the Morse signal.
Can someone help me?
This is for a school project with high altitude ballon.
P.S. - I have the GPSD installed but it doesn't work and I don't know why. Best regards, ³¢³Ü¨ª²õ |
Re: Use PAT with Direwolf
I found the below on the internet and it did allow me to attach a modem. It turns out there are two of every AX25 files after you install the AX25 tools, and I was using the wrong set.... I deleted the first set and created simlinks so this works going forward. Thanks everyone.
The Debian policy for Ax.25 file locations would have ax25 binary files placed in /usr/sbin/ or bin, configuration files in /etc/ax25, and data files in /var/ax25.
I find that these file locations are already heavily populated and finding the needed file in the crowded directory is sometimes difficult. Most developers agree and have moved the binary files to /usr/local/sbin, the configuration files to /usr/local/etc/ax25 and the data files to /usr/local/var/ax25.
?
To make sure the two policies are compatible I placed everything in the /usr/local/..... directories and symlinked the Debian locations.
?
/etc/ax25/ > /usr/local/etc/ax25/
/var/ax25/ > /usr/local/var/ax25/
?
mkdir /usr/local/etc && mkdir /usr/local/etc/ax25
mkdir /usr/local/var && mkdir /usr/local/var/ax25
ln -s /usr/local/etc/ax25 /etc/ax25
ln -s /usr/local/var/ax25 /var/ax25 |
to navigate to use esc to dismiss