I am curious to know if it is possible to do packet radio on VHF/UHF using the UV-5R... I have seen some invasive hardware hacks, but without modifying the radio itself (firmware, hardware) it's my understanding that you can only toggle send/receive using the 2.5mm/3.5mm TRS ports.
You sure can. It's been done before with a Baofeng HT, a Raspberry Pi, a USB sound card, and some custom cables and some open-source sound card modem software. This article explains a step-by-step approach.
This article shows how to create a custom cable for interfacing a Baofeng HT with an Android phone (but should be sufficient for figuring out the wiring for the USB sound card so you can interface with your Raspberry Pi - specifically, you'll probably need to separate the right/left audio from the mic and PTT for the sound card's separate mic/audio jacks). Of course you could use the custom cable and an Android phone or tablet running the APRSdroid software mentioned in that article. There are also ready-made cables like the BTECH APRS-K2 TRRS / APRS Cable.
In the first case, the Raspberry Pi is acting as the TNC; in the latter, the Android and APRSdroid are serving that function.
The point of this cable is to connect the input and output audio cables of your computing device (smart phone, raspberry pi or whatever) to the radio. By setting the VOX and squelch settings just right (e.g. "VOX at ~2, Squelch at ~1"). Then the computer takes the role of the modem and does modulation (for transmitting, triggered by the VOX setting) and demodulation (for receiving, triggered by the squelch setting).
I hope this helps.
In the end I used 'amodem' ( see https://github.com/romanz/amodem ). After a few calibration steps, I could get decent I/O rates - considering the nature of the medium.
Compression of archives is necessary, and may be considered unethical. But the compression algorithms (e.g. 7zip, xz) are public, and anyone paying attention can read the data.
Rates of >=19200 baud (~2.4kB/s) are easily accomplished internationally, while IIRC 57600 baud (~7.2kB/s) are realistic domestic.
Hope others can use this as an intro to PR.
The easiest way now is to get the Btech APRS-K2 Cable: it allows you to receive and send audio to the radio with a single cable. You can use it with the aprs.fi app or with a variety of software from a computer.
I recommend against using the modern inexpensive HT radios for packet, especially if you are buying the equipment on purpose for that application. You'd be much better off with 30 year old used ham radio mobile gear, with more power, more selective receiver, more predictable operation, easier UI, and less RF into your digital equipment, easier connections, easier power hookup, and nearly the same cost.
A serious consideration with modern HTs is that the designers are interesting in optimizing voice quality and battery life with no consideration for how this impacts packet radio use. Sacrifices can easily be made which increase usability for voice, but which make packet radio work worse and be more difficult to align.
Audio level consistency. A packet radio receiver modem wants to see an audio level that is both consistent across a packet, but also nearly the same for multiple tone frequencies on a packet. FM voice radios don't need to behave in this way. Indeed, voice compression, bad for packet, actually sounds great on voice.
DC signals (BIAS) on the receive audio are also OK for FM voice, especially with built in speaker equipment, but this also is of questionable value for a packet radio modem.
POP and CLICK removal: It is easy to remove pops and clicks from the audio by replacing annoying wave forms with duplicates of preceding or following wave forms, or by shifting the time of the wave forms. This is a well documented (and no longer patented) scheme used originally in broadcast radio transmission. This makes the receiver sound much better, at low cost, but makes packets less reliable, and this effect is nearly undetectable without an analog equipped logic analyzer. It's very confusing. I have on low authority that this is done in modern 2-way FM radio-on-a-chip devices.
Battery saving by disabling the radio: By having the control processor leave elements of the radio disabled for periods of time the radio can use less battery power while quiescent, but it would also not be awake to notice the start of a packet message. Baofeng radios are replete with this technology.
The Chinese brand-name radios have been known to emit energy at frequencies outside the ham band at levels beyond those permitted by the various government radio authorities (D.O.C. in Canada, F.C.C. in the USA). They have also been known to emit radio waves at near transmission levels through the chassis which can impact the stability of DC wiring in the vicinity of the radio. This is also confusing to somebody new to integrating digital, audio and RF equipment.
Used 2-way or ham radio equipment is particularly applicable to packet radio. A used ham radio which is missing the critical CTCSS PL TONE generator is nearly useless for repeater operation but is very usable for packet radio. Kenwood TM2550, TM7950, TM7800, are perfectly fine packet radios and are 25 watts output or better. Yeasu and Icom have offerings in the same age-class. Because they are not useful to non-packet hams, they show up for low prices, even competitive with brand new Baofeng UV5R radios.
In the commercial 2-way market, the Kenwood TK705d or TK805d is a fine radio for packet. Those are on ebay at under $50 delivered, even as I type. While some commercial 2-way radios need PCs and software to program, the TK705d and TK805d are front panel programmable, or can be made that way by moving or adding a 2-pin jumper.
I built a homebrew interface that uses a small USB soundcard with mic and ear 1/8" jacks. Each of those drives a 600:600 ohm transformer.
On the radio side, the transformers drive the mic and ear connections via the 2.5 and 3.5mm jacks.
I also used a cheap USB to serial board to run an optoisolator to trigger the radio PTT. The reason for this is that if you use the radio VOX to initiate transmit, the radio will stay in transmit for some time after the data have been sent, and it misses the return data from the packet server. This took me some time to discover!
All that being said, I have found that it is hard to set levels properly, and my connection reliability has been spotty. I have been able to send/receive email using Winlink Express along with soundmodem software, but quite often, the system just keeps trying to connect without success, so I'm not sure that using the Baofeng radios is the best solution.
Sure it's possible. You'll need some sort of Terminal Node Controller (TNC), either one implemented in hardware or software, plus a set of cables that plug into the 2.5 mm / 3.5 mm TRS ports. If you're using a hardware TNC then you'll need some sort of computer and a serial or USB cable between the computer and the TNC. I've used a different model HT to send and receive APRS packets with a TinyTrak 4 as my TNC and xastir (APRS software for Linux), and it worked fine. APRS is a protocol that sends and receives specially-formatted AX.25 packets. I've heard there are "software TNCs", i.e. computer programs that generate audio tones to be sent to the radio, but I can't vouch for how well they work, having never tried them.
Save time and aggravation. Get a Mobilinkd TNC-3 with cables and a ferrite bead for less than $200. The AFSK cables don't work well with VOX since (at least my cheap UV-5R) adds a hang of a few seconds after the tx ends. Not so with the Mobilinkd. UV-5R works pretty flawlessly with the TNC-3 and APRSdroid as well as MixW on my laptop. It is well worth the dough.