Skip to content

Commit 3cce46f

Browse files
committed
misc
1 parent ddcde81 commit 3cce46f

File tree

3 files changed

+82
-94
lines changed

3 files changed

+82
-94
lines changed

README.md

Lines changed: 71 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1+
# Dire Wolf
12

2-
# Dire Wolf #
3-
4-
### Decoded Information from Radio Emissions for Windows Or Linux Fans ###
3+
### Decoded Information from Radio Emissions for Windows Or Linux Fans
54

65
In the early days of Amateur Packet Radio, it was necessary to use an expensive "Terminal Node Controller" (TNC) with specialized hardware. Those days are gone. You can now get better results at lower cost by connecting your radio to the "soundcard" interface of a computer and using software to decode the signals.
76

@@ -15,105 +14,91 @@ Dire Wolf includes [FX.25](https://en.wikipedia.org/wiki/FX.25_Forward_Error_Cor
1514

1615
Version 1.7 adds [IL2P](https://en.wikipedia.org/wiki/Improved_Layer_2_Protocol), a different method of FEC with less overhead but it is not compatible with AX.25.
1716

18-
19-
20-
### Dire Wolf is a modern software replacement for the old 1980's style TNC built with special hardware. ###
17+
### Dire Wolf is a modern software replacement for the old 1980's style TNC built with special hardware.
2118

2219
Without any additional software, it can perform as:
2320

24-
- APRS GPS Tracker
25-
- Digipeater
26-
- Internet Gateway (IGate)
27-
- [APRStt](http://www.aprs.org/aprstt.html) gateway
21+
- APRS GPS Tracker
22+
- Digipeater
23+
- Internet Gateway (IGate)
24+
- [APRStt](http://www.aprs.org/aprstt.html) gateway
2825

26+
It can also be used as a virtual TNC for other applications such as [APRSIS32](http://aprsisce.wikidot.com/), [Xastir](http://xastir.org/index.php/Main_Page), [APRS-TW](http://aprstw.blandranch.net/), [YAAC](http://www.ka2ddo.org/ka2ddo/YAAC.html), [PinPoint APRS](http://www.pinpointaprs.com/), [UI-View32](http://www.ui-view.net/),[UISS](http://users.belgacom.net/hamradio/uiss.htm), [Linux AX25](http://www.linux-ax25.org/wiki/Main_Page), [SARTrack](http://www.sartrack.co.nz/index.html), [Winlink Express (formerly known as RMS Express, formerly known as Winlink 2000 or WL2K)](http://www.winlink.org/RMSExpress), [BPQ32](http://www.cantab.net/users/john.wiseman/Documents/BPQ32.html), [Outpost PM](http://www.outpostpm.org/), [Ham Radio of Things](https://github.com/wb2osz/hrot), [Packet Compressed Sensing Imaging (PCSI)](https://maqifrnswa.github.io/PCSI/), [Packet Commander](https://packetcommander.com/), and many others.
2927

30-
It can also be used as a virtual TNC for other applications such as [APRSIS32](http://aprsisce.wikidot.com/), [Xastir](http://xastir.org/index.php/Main_Page), [APRS-TW](http://aprstw.blandranch.net/), [YAAC](http://www.ka2ddo.org/ka2ddo/YAAC.html), [PinPoint APRS](http://www.pinpointaprs.com/), [UI-View32](http://www.ui-view.net/),[UISS](http://users.belgacom.net/hamradio/uiss.htm), [Linux AX25](http://www.linux-ax25.org/wiki/Main_Page), [SARTrack](http://www.sartrack.co.nz/index.html), [Winlink Express (formerly known as RMS Express, formerly known as Winlink 2000 or WL2K)](http://www.winlink.org/RMSExpress), [BPQ32](http://www.cantab.net/users/john.wiseman/Documents/BPQ32.html), [Outpost PM](http://www.outpostpm.org/), [Ham Radio of Things](https://github.com/wb2osz/hrot), [Packet Compressed Sensing Imaging (PCSI)](https://maqifrnswa.github.io/PCSI/), and many others.
31-
32-
33-
## Features & Benefits ##
28+
## Features & Benefits
3429

3530
![](direwolf-block-diagram.png)
3631

37-
### Dire Wolf includes: ###
38-
39-
32+
### Dire Wolf includes:
4033

4134
- **Beaconing, Tracker, Telemetry Toolkit.**
42-
35+
4336
Send periodic beacons to provide information to others. For tracking the location is provided by a GPS receiver.
4437
Build your own telemetry applications with the toolkit.
4538

46-
4739
- **APRStt Gateway.**
48-
40+
4941
Very few hams have portable equipment for APRS but nearly everyone has a handheld radio that can send DTMF tones. APRStt allows a user, equipped with only DTMF (commonly known as Touch Tone) generation capability, to enter information into the global APRS data network. Responses can be sent by Morse Code or synthesized speech.
5042

5143
- **Digipeaters for APRS and traditional Packet Radio.**
52-
44+
5345
Extend the range of other stations by re-transmitting their signals. Unmatched flexibility for cross band repeating and filtering to limit what is retransmitted.
5446

5547
- **Internet Gateway (IGate).**
56-
48+
5749
IGate stations allow communication between disjoint radio networks by allowing some content to flow between them over the Internet.
5850

5951
- **Ham Radio of Things (HRoT).**
60-
52+
6153
There have been occasional mentions of merging Ham Radio with the Internet of Things but only ad hoc incompatible narrowly focused applications. Here is a proposal for a standardized more flexible method so different systems can communicate with each other.
62-
54+
6355
[Ham Radio of Things - IoT over Ham Radio](https://github.com/wb2osz/hrot)
6456

6557
- **AX.25 v2.2 Link Layer.**
66-
58+
6759
Traditional connected mode packet radio where the TNC automatically retries transmissions and delivers data in the right order.
6860

6961
- **KISS Interface (TCP/IP, serial port, Bluetooth) & AGW network Interface (TCP/IP).**
70-
62+
7163
Dire Wolf can be used as a virtual TNC for applications such as [APRSIS32](http://aprsisce.wikidot.com/), [Xastir](http://xastir.org/index.php/Main_Page), [APRS-TW](http://aprstw.blandranch.net/), [YAAC](http://www.ka2ddo.org/ka2ddo/YAAC.html), [PinPoint APRS](http://www.pinpointaprs.com/), [UI-View32](http://www.ui-view.net/),[UISS](http://users.belgacom.net/hamradio/uiss.htm), [Linux AX25](http://www.linux-ax25.org/wiki/Main_Page), [SARTrack](http://www.sartrack.co.nz/index.html), [Winlink Express (formerly known as RMS Express, formerly known as Winlink 2000 or WL2K)](http://www.winlink.org/RMSExpress), [BPQ32](http://www.cantab.net/users/john.wiseman/Documents/BPQ32.html), [Outpost PM](http://www.outpostpm.org/), [Ham Radio of Things](https://github.com/wb2osz/hrot), [Packet Compressed Sensing Imaging (PCSI)](https://maqifrnswa.github.io/PCSI/), and many others.
7264

73-
### Radio Interfaces: ###
65+
### Radio Interfaces:
7466

7567
- **Uses computer's "soundcard" and digital signal processing.**
76-
68+
7769
Lower cost and better performance than specialized hardware.
78-
70+
7971
Compatible interfaces include [DRAWS](http://nwdigitalradio.com/draws/), [UDRC](https://nw-digital-radio.groups.io/g/udrc/wiki/UDRC%E2%84%A2-and-Direwolf-Packet-Modem), [SignaLink USB](http://www.tigertronics.com/slusbmain.htm), [DMK URI](http://www.dmkeng.com/URI_Order_Page.htm), [RB-USB RIM](http://www.repeater-builder.com/products/usb-rim-lite.html), [RA-35](http://www.masterscommunications.com/products/radio-adapter/ra35.html), [DINAH](https://hamprojects.info/dinah/), [SHARI](https://hamprojects.info/shari/), and many others.
8072

81-
82-
8373
- **Modems:**
84-
74+
8575
300 bps AFSK for HF
86-
76+
8777
1200 bps AFSK most common for VHF/UHF
88-
78+
8979
2400 & 4800 bps PSK
90-
80+
9181
9600 bps GMSK/G3RUH
92-
82+
9383
AIS reception
94-
84+
9585
EAS SAME reception
9686

97-
98-
9987
- **DTMF ("Touch Tone") Decoding and Encoding.**
100-
101-
- **Speech Synthesizer interface & Morse code generator.**
10288

89+
- **Speech Synthesizer interface & Morse code generator.**
90+
10391
Transmit human understandable messages.
10492

10593
- **Compatible with Software Defined Radios such as gqrx, rtl_fm, and SDR#.**
10694

10795
- **Concurrent operation with up to 3 soundcards and 6 radios.**
10896

109-
### Portable & Open Source: ###
97+
### Portable & Open Source:
11098

11199
- **Runs on Windows, Linux (PC/laptop, Raspberry Pi, etc.), Mac OSX.**
112100

113-
114-
115-
## Documentation ##
116-
101+
## Documentation
117102

118103
[Stable Version](https://github.com/wb2osz/direwolf/tree/master/doc)
119104

@@ -125,22 +110,18 @@ It can also be used as a virtual TNC for other applications such as [APRSIS32](h
125110

126111
Youtube has many interesting and helpful videos. Searching for [direwolf tnc](https://www.youtube.com/results?search_query=direwolf+tnc) or [direwolf aprs](https://www.youtube.com/results?search_query=direwolf+aprs) will produce the most relevant results.
127112

128-
## Installation ##
113+
## Installation
129114

130-
### Windows ###
115+
### Windows
131116

132117
Go to the [**releases** page](https://github.com/wb2osz/direwolf/releases). Download a zip file with "win" in its name, unzip it, and run direwolf.exe from a command window.
133118

134119
You can also build it yourself from source. For more details see the **User Guide** in the [**doc** directory](https://github.com/wb2osz/direwolf/tree/master/doc).
135120

136-
137-
138-
139-
### Linux - Using git clone (recommended) ###
121+
### Linux - Using git clone (recommended)
140122

141123
***Note that this has changed for version 1.6. There are now a couple extra steps.***
142124

143-
144125
First you will need to install some software development packages using different commands depending on your flavor of Linux.
145126
In most cases, the first few will already be there and the package installer will tell you that installation is not necessary.
146127

@@ -169,46 +150,43 @@ CentOS 6 & 7 currently have cmake 2.8 but we need 3.1 or later.
169150
First you need to enable the EPEL repository. Add a symlink if you don't already have the older version and want to type cmake rather than cmake3.
170151

171152
sudo yum install epel-release
172-
sudo rpm -e cmake
173-
sudo yum install cmake3
174-
sudo ln -s /usr/bin/cmake3 /usr/bin/cmake
153+
sudo rpm -e cmake
154+
sudo yum install cmake3
155+
sudo ln -s /usr/bin/cmake3 /usr/bin/cmake
175156

176157
Then on any flavor of Linux:
177158

178-
cd ~
179-
git clone https://www.github.com/wb2osz/direwolf
180-
cd direwolf
159+
cd ~
160+
git clone https://www.github.com/wb2osz/direwolf
161+
cd direwolf
181162
git checkout dev
182-
mkdir build && cd build
183-
cmake ..
184-
make -j4
185-
sudo make install
186-
make install-conf
163+
mkdir build && cd build
164+
cmake ..
165+
make -j4
166+
sudo make install
167+
make install-conf
187168

188169
This gives you the latest development version. Leave out the "git checkout dev" to get the most recent stable release.
189170

190171
For more details see the **User Guide** in the [**doc** directory](https://github.com/wb2osz/direwolf/tree/master/doc). Special considerations for the Raspberry Pi are found in **Raspberry-Pi-APRS.pdf**
191172

192-
193-
### Linux - Using apt-get (Debian flavor operating systems) ###
173+
### Linux - Using apt-get (Debian flavor operating systems)
194174

195175
Results will vary depending on your hardware platform and operating system version because it depends on various volunteers who perform the packaging. Expect the version to lag significantly behind development.
196176

197-
sudo apt-get update
198-
apt-cache showpkg direwolf
199-
sudo apt-get install direwolf
177+
sudo apt-get update
178+
apt-cache showpkg direwolf
179+
sudo apt-get install direwolf
200180

201-
202-
### Linux - Using yum (Red Hat flavor operating systems) ###
181+
### Linux - Using yum (Red Hat flavor operating systems)
203182

204183
Results will vary depending on your hardware platform and operating system version because it depends on various volunteers who perform the packaging. Expect the version to lag significantly behind development.
205184

206-
sudo yum check-update
207-
sudo yum list direwolf
208-
sudo yum install direwolf
209-
185+
sudo yum check-update
186+
sudo yum list direwolf
187+
sudo yum install direwolf
210188

211-
### Macintosh macOS - Using Homebrew ###
189+
### Macintosh macOS - Using Homebrew
212190

213191
The following instructions have been verified on macOS Ventura 13.6 (M2) and macOS High Sierra 10.13.6 (Intel).
214192

@@ -219,38 +197,36 @@ First make sure that you have the following tools installed on your Mac:
219197

220198
You will need to install the following packages using Homebrew:
221199

222-
brew install cmake
223-
brew install portaudio
224-
brew install hidapi
200+
brew install cmake
201+
brew install portaudio
202+
brew install hidapi
225203

226204
Then follow the same instructions as above for the Linux `git clone` build:
227205

228-
cd ~
229-
git clone https://www.github.com/wb2osz/direwolf
230-
cd direwolf
231-
git checkout dev
232-
mkdir build && cd build
233-
cmake ..
234-
make -j4
235-
sudo make install
236-
make install-conf
206+
cd ~
207+
git clone https://www.github.com/wb2osz/direwolf
208+
cd direwolf
209+
git checkout dev
210+
mkdir build && cd build
211+
cmake ..
212+
make -j4
213+
sudo make install
214+
make install-conf
237215

238216
This gives you the latest development version. Leave out the "git checkout dev" to get the most recent stable release.
239217

240218
For more information, see the ***User Guide*** in the [**doc** directory](https://github.com/wb2osz/direwolf/tree/master/doc).
241219

242220
If you have problems, post them to the [Dire Wolf packet TNC](https://groups.io/g/direwolf) discussion group.
243221

244-
245-
### Macintosh macOS - Prebuilt version ###
222+
### Macintosh macOS - Prebuilt version
246223

247224
You can also install a pre-built version from MacPorts. Keeping this up to date depends on volunteers who perform the packaging. This version could lag behind development.
248225

249-
sudo port install direwolf
226+
sudo port install direwolf
250227

228+
## Join the conversation
251229

252-
## Join the conversation ##
253-
254230
Here are some good places to ask questions and share your experience:
255231

256232
- [Dire Wolf Software TNC](https://groups.io/g/direwolf)
@@ -260,6 +236,7 @@ Here are some good places to ask questions and share your experience:
260236
- [linuxham](https://groups.io/g/linuxham)
261237

262238
- [TAPR aprssig](http://www.tapr.org/pipermail/aprssig/)
263-
264239

265240
The github "issues" section is for reporting software defects and enhancement requests. It is NOT a place to ask questions or have general discussions. Please use one of the locations above.
241+
242+
[![Star History Chart](https://api.star-history.com/svg?repos=hkociemba/RubiksCube-TwophaseSolver&type=Date)](https://star-history.com/#wb2osz/direwolf&Date)

src/ax25_pad.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969
#define AX25_PID_NETROM 0xcf /* protocol ID used for NET/ROM */
7070
#define AX25_PID_SEGMENTATION_FRAGMENT 0x08
7171
#define AX25_PID_ESCAPE_CHARACTER 0xff
72+
#define AX25_PID_ZLIB_COMPRESSED 0xf5 /* Dave's creation */
7273

7374

7475
#ifdef AX25_PAD_C /* Keep this hidden - implementation could change. */

src/xid.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,12 @@
6767
#define PI_Ack_Timer 9
6868
#define PI_Retries 10
6969

70+
// Is this stanard or Dave's creation?
71+
#define PI_Compression_Algorithm_Mask 65
72+
#define PI_TX_Window_Bits 66
73+
#define PI_RX_Window_Bits 67
74+
75+
7076
// Forget about the bit order at the physical layer (e.g. HDLC).
7177
// It doesn't matter at all here. We are dealing with bytes.
7278
// A different encoding could send the bits in the opposite order.
@@ -347,6 +353,10 @@ int xid_parse (unsigned char *info, int info_len, struct xid_param_s *result, ch
347353

348354
break;
349355

356+
// PI_Compression_Algorithm_Mask
357+
// PI_TX_Window_Bits
358+
// PI_RX_Window_Bits
359+
350360
default:
351361
break; // Ignore anything we don't recognize.
352362
}

0 commit comments

Comments
 (0)