November 2022

A stereo/binaural tactical headset

One thing I hate doing when I’m taking down notes at a radio comms event is juggling a hand-microphone and pen/paper/tablet/computer simultaneously. So I tend to prefer a headset for my radios rather than a hand-microphone. Some models (especially Kenwood) have lots of selections available, but some are very much restricted. In particular, I prefer a binaural headset as I find it more difficult to hear a voice on one side than via both sides — particularly in noisy conditions. The only options I could find for Yaesu/Alinco sets were big chunky earmuff headsets — great in those noisy situations, but not so great if you need situational awareness.

The plan thus is to cobble together my own binaural tactical headset. Stereo using my standard headset connection, so I can re-use it elsewhere.

I did have a Kenwood TH-D72A — a good solid performer… but sadly no longer manufactured (neither is its successor, not that Kenwood ever sold that here), and my particular specimen now refuses to have anything to do with the internal battery. I bought an Alinco DJ-G7T as a back-up hand-held for pure voice comms, and more recently a Yaesu FT5DR. I had made my own Kenwood headset adaptor to use with my headsets, but I had nothing equivalent for the Alinco or Yaesu sets.

As it happens, the headset pin-out of the Alinco is nearly identical to that of the earlier Yaesu VX-6/VX-7: 3.5mm threaded TRRS. Both radios put the speaker on the tip, microphone+PTT (in series) on the sleeve-most ring and 0V on the sleeve. Alinco use the tip-most ring for a 3.3V rail, whereas Yaesu use this same ring for a data/clone connection. Maybe it’s a UART which “idles” at 3.3V on Yaesu rigs, but I wouldn’t bet on all Yaesu accessories working on Alinco and vice-versa — however headsets rarely need a 3.3V rail. (Maybe the VOX ones do… not sure.)

The FT5DR is actually compatible with the earlier VX-6/VX-7, however the connector is on the side of the radio, and while the threaded 3.5mm connectors fit, they stick out the side like a sore thumb: a right-angled 3.5mm TRRS is a better “fit”.

Luckily, Amazon have quite a few options that convert these radios to a U94 “Nexus” military-style connector. I managed to pick up a U94 adaptor that works quite well with the Alinco, and does work with the Yaesu (although is mechanically not optimal due to the “straight” style of the plug and side-mounting of the socket).

Tactical headsets come in a few varieties:

  • ear-tube covert-style headsets
  • D-loop style
  • throat-mic headsets
  • “bowman”-style headband headsets
  • earmuff-style headsets
  • motorcycle headsets

The only ones of this list that are binaural out-of-the-box are the earmuff headsets and the motorcycle headsets. I figured I’d pick up a couple of cheap “bowman”-style ones and see if I can cobble two mono headsets into one stereo set. I looked around, and bought two of these.

The adaptor turned up a week or so ago, and the headsets turned up today. There’s two different varieties of pin-out for the U94 connector — the “NATO” standard interleaves the speaker and microphone pins, whereas the “civilian” standard puts the speaker on the sleeve/sleeve-most ring and microphone on the tip-most ring/tip. Both adaptor and headset turned out to be “civilian” standard, so the first hurdle was cleared.

I tested both headsets and confirmed they both worked. I tried the headsets both with voice comms, then tried tuning to a local FM broadcast station to assess audio quality. They work, but audio quality is not what I’d call wonderful. Very tinny, fine for voice comms, but maybe telephone quality at best. Ookay, so using these as a stereo headset can be done — but if I wanted to use them for anything but straight voice comms, I’d want to swap the speakers out for something decent. Tear-down time!

I picked a “victim” and attempted to disassemble it. These units appear to be glued together, so you wind up partially destroying them to get at the speaker:

The speaker is a conventional 8ohm 500mW jobbie, nothing remarkable… and a frequency response that’s truly awful for anything other than voice comms. Fine for the intended task, but as I say, not really sufficient for what I was after.

I’ll see if I can swap this speaker out with one liberated from some headphones and see about replacing the strip of plastic I had to unceremoniously and destructively rip out — this shouldn’t be a difficult job. The other thing that might help is some sound-damping material behind the speaker, which might account for some tinniness.

If I get this headset working acceptably, I’ll do the same mod to the other, then can look at wiring the two together into a stereo set using a DIN-5 matching my other headsets. I can then re-purpose the U94 plug to make an adaptor to convert my other headsets to use with the U94 adaptors.

My thoughts on Twitter

Musk is now bitter
because Twitter is in the shitter.
He’s turned his cash to litter,
and now he wants an arse kisser.

— Stuart Longland (first posted on Ars Technica)

That pretty much sums my thoughts up… about where they’re headed. Elon Musk has been in the news a lot following his purchase of the social media network, Twitter… firing critical staff by mistake… then expecting everyone else left behind to work long hours at high intensity. Effectively, he’s wanting people who are sycophantic enough to put up with the toxic environment they’re now faced with.

Apparently the recent ultimatum delivered to his staff saw nearly half of them walk away with immediate effect… and the latest is he’s demanding screenshots of code to understand how it works.

My guess is there’s likely more code than will fit on a single screen that is critical to Twitter’s operations. In some cases, entire teams responsible for critical functions have left — there’s no one left that could meaningfully explain the components those teams were responsible for. It’s also not like a social media network operates the same as a satellite network or electric vehicle. Completely different animal.

I personally have not touched Twitter … in fact my thoughts on these services have been known for some time. Services like this which are run by individual companies are akin to putting all your eggs in one basket, and as you don’t own the basket, you’ve got no way to defend it! It’s one of the reasons why I’ve stuck to running a blog rather than running over to the walled garden that is Facebook. I’m one of the few in my company that won’t touch these commercial social networks, and I’m not about to change things now.

One thing that particularly irked me is when our state government decides to “announce” things on Twitter, but then doesn’t immediately update their website. I don’t consider Twitter an authoritative source — blue tick or not! As far as I’m concerned, if say, Queensland Health haven’t published a change in COVID-19 rules on a publicly reachable page on a host in the qld.gov.au domain, I do not consider it legitimate.

Would I consider an alternative like Mastodon? Maybe… it can be self-hosted, so I could have my instance right here and you’d be able to follow what I do… but my posts tend to be big and sporadic: not the sort of thing that fits in a tweet or toot. There are times I share links to articles or amusing photos, maybe Mastodon could serve that purpose better than the blog here.

I guess time will tell. One thing is certain though, I’m glad I didn’t bother with Twitter — if I left it to them to keep my history online, it’d be all gone now following the chaotic take-over they’ve had. Also, no way in hell I’d go work for any of Elon Musk’s enterprises. As an Asperger’s person myself, I’d rather work for somebody who doesn’t use his condition as an excuse for bad behaviour.

Yaesu FT5DR: First thoughts

I had a sad day the other day… the old faithful, my Kenwood TH-D72A finally bit the dust. It had been limping along ever since vibration damaged the barrel jack DC connector… I hacked up my own fix and got it going again, and it seemed mostly reliable and that kept it going for a few years… but in the recent downpours, it seems the battery management circuit died. Wouldn’t charge (just reports “Charge Error”) and wouldn’t run off a charged battery.

So… time for a new one. Kenwood basically no longer exist as a manufacturer of radio equipment now — they refused to sell the successor here in Australia and basically have abandoned us. Thus, it’s time for me to move on.

I had a look at a few options, a big issue is the chip shortage has greatly reduced the options available. I mainly use the Kenwood for APRS, it’s nice that it can function as a full-blown AX.25 TNC too, but by far, the feature I use more is APRS. Icom basically only care about D-Star and its DPRS equivalent. There are some DMR-based radios that do what they call “analog APRS” — whatever that is. The mode that gets used in SE Queensland is 1200 baud AFSK: aka Bell 203 modulation. Not the most reliable, and in many ways a dodgy hack, but that’s what everyone else uses. I wound up buying another Yaesu, the FT5DR. In fact, I bought two, just in case my father’s Kenwood bites the dust.

I haven’t put it through its full paces yet, but last night charged the units up, and this morning had mine running just beaconing on APRS and monitoring a local repeater.

General comments

The unit is reasonably lightweight… bright clear screen, the audio isn’t too shabby for something its size. I haven’t tried the C4FM mode yet but FM and WFM reception seemed decent. It’ll even begrudgingly receive AM broadcast — including with a 9kHz offset (unlike my Alinco set), although sensitivity is not great.

Text entry quirks

Set-up wasn’t too difficult, it prompts for a call-sign, which you enter from the touchscreen. Text entry is a little inconsistent, and very reminiscent of late 90s mobile phones: there’s no predictive text and the letters are layed out like they would be on a telephone keypad. To type a Z for instance, you’d look for a button labelled wxyz and hit it 8 times if you want capital Z, or 4 for lower-case. Frustrating if you miss and have to cycle around again. Sometimes touching a different button advances the pointer, sometimes not and it just overwrites the current character.

Repeater settings somewhat buried

The handbook does not discuss repeater settings much at all… which is odd since hand-held radios are not known for their DX range unless you’re up high.

To set up CTCSS, one must hit F-Menu, tap SQTYP, then use the channel knob to select TONE and hit PTT, then hit F-Menu again, go to CODE, and use the same knob to select a CTCSS frequency.

To change a repeater offset, one must long-press the F-Menu, tap CONFIG, then use the knob to scroll down to 15. RPT SHIFT, hit F-Menu, then use the channel knob to select between -, SIMPLEX or + and using PTT to confirm.

I’d have made these a simple toggle from the F-Menu options, but sadly, no.

Bluetooth still useless

I tried Bluetooth on a radio back with the VX-8DR. There, I found it was an incompatible mess… might work great if you buy Yaesu’s headset, but the whole point of Bluetooth is to be interoperable with other Bluetooth headsets which may be in a more suitable form-factor for your use case.

I tried the FT5DR with two headsets, a Behringer BB 560M, and a Logitech Zone Wireless. It could see the Behringer, but would not connect. It flatly refused to even recognise the Zone Wireless.

GPS and APRS working quite well

I’m yet to go mobile with this, but it soon found my position and getting the radio beaconing was not difficult. It lacks some niceties of the Kenwood set (e.g. reporting the frequency of the other band), and sadly no digipeating, but it otherwise is a capable APRS implementation.

SD Card support welcome

This radio can take a MicroSD card for various things, including settings back-up and restore, GPS logging, audio recordings, and even storing pictures if you buy the camera microphone option (I didn’t).

I put a few memory channels into the radio then told it to back-up to the SD card… apparently Yaesu’s own desktop software can read/write these files if you have a Windows PC handy (I don’t). That said, the format doesn’t look complex:

RC=0 stuartl@rikishi /media/sdb1/FT5D_MEMORY-CH $ hexdump -C MEMORY.dat 
00000000  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
000012c0  03 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000012d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001350  00 00 00 00 00 03 00 00  00 00 00 00 00 00 00 00  |................|
00001360  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001380  00 00 00 00 00 00 00 03  00 00 00 00 00 00 00 00  |................|
00001390  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000013b0  00 00 00 00 00 00 00 00  00 03 00 00 00 00 03 00  |................|
000013c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000016a0  00 00 00 00 00 00 03 00  00 00 00 00 00 00 00 00  |................|
000016b0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001710  00 00 00 00 03 03 03 03  03 03 03 03 03 03 03 03  |................|
00001720  03 03 03 03 03 03 03 03  03 03 03 03 03 03 03 03  |................|
*
00001800  02 00 14 50 00 d0 00 00  ff ff ff ff ff ff ff ff  |...P............|
00001810  ff ff ff ff ff ff ff ff  00 06 00 0c 00 0d 80 18  |................|
00001820  02 00 14 55 20 00 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001830  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001840  02 00 14 55 20 40 00 00  ff ff ff ff ff ff ff ff  |...U @..........|
00001850  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001860  02 00 14 55 20 80 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001870  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001880  43 07 43 55 00 c0 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
00001890  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
000018a0  43 07 43 55 00 00 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
000018b0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
000018c0  43 07 43 55 00 40 00 00  ff ff ff ff ff ff ff ff  |C.CU.@..........|
000018d0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
000018e0  43 07 43 55 00 80 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
000018f0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001900  02 00 14 55 20 c0 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001910  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001920  02 00 14 55 20 00 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001930  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001940  02 00 14 55 20 40 00 00  ff ff ff ff ff ff ff ff  |...U @..........|
00001950  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001960  02 00 14 55 20 80 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001970  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001980  43 07 43 55 00 c0 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
00001990  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
000019a0  43 07 43 55 00 00 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
000019b0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
000019c0  43 07 43 55 00 40 00 00  ff ff ff ff ff ff ff ff  |C.CU.@..........|
000019d0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
000019e0  43 07 43 55 00 80 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
000019f0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001a00  02 00 14 55 20 c0 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001a10  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001a20  43 07 43 45 00 c0 00 00  ff ff ff ff ff ff ff ff  |C.CE............|
00001a30  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001a40  43 07 43 45 00 c2 00 00  ff ff ff ff ff ff ff ff  |C.CE............|
00001a50  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001a60  43 07 43 45 00 c3 00 00  ff ff ff ff ff ff ff ff  |C.CE............|
00001a70  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001a80  02 00 14 55 20 e0 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001a90  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001aa0  43 07 43 45 00 e0 00 00  ff ff ff ff ff ff ff ff  |C.CE............|
00001ab0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001ac0  02 00 14 48 40 c0 00 00  ff ff ff ff ff ff ff ff  |...H@...........|
00001ad0  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001ae0  43 07 43 55 00 c0 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
00001af0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001b00  07 00 05 25 00 c0 00 00  ff ff ff ff ff ff ff ff  |...%............|
00001b10  ff ff ff ff ff ff ff ff  00 00 00 0c 00 0d 00 18  |................|
00001b20  02 00 14 55 20 c0 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001b30  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001b40  07 06 22 25 00 c0 00 00  ff ff ff ff ff ff ff ff  |.."%............|
00001b50  ff ff ff ff ff ff ff ff  00 00 00 0c 00 0d 00 18  |................|
00001b60  07 04 85 99 00 c0 00 00  ff ff ff ff ff ff ff ff  |................|
00001b70  ff ff ff ff ff ff ff ff  00 00 00 0c 00 0d 00 18  |................|
00001b80  02 00 14 55 20 e0 00 00  ff ff ff ff ff ff ff ff  |...U ...........|
00001b90  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001ba0  43 07 43 55 00 e0 00 00  ff ff ff ff ff ff ff ff  |C.CU............|
00001bb0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001bc0  02 00 14 57 20 c0 00 00  ff ff ff ff ff ff ff ff  |...W ...........|
00001bd0  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001be0  07 00 05 20 20 c0 00 00  ff ff ff ff ff ff ff ff  |...  ...........|
00001bf0  ff ff ff ff ff ff ff ff  00 00 00 0c 00 0d 00 18  |................|
00001c00  02 00 14 50 20 c0 00 00  ff ff ff ff ff ff ff ff  |...P ...........|
00001c10  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001c20  03 00 43 50 20 c0 00 00  ff ff ff ff ff ff ff ff  |..CP ...........|
00001c30  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001c40  07 04 85 99 00 c0 00 00  ff ff ff ff ff ff ff ff  |................|
00001c50  ff ff ff ff ff ff ff ff  00 00 00 0c 00 0d 00 18  |................|
00001c60  02 00 14 50 20 c0 00 00  ff ff ff ff ff ff ff ff  |...P ...........|
00001c70  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001c80  43 07 43 50 20 c0 00 00  ff ff ff ff ff ff ff ff  |C.CP ...........|
00001c90  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001ca0  02 00 14 55 50 60 00 00  ff ff ff ff ff ff ff ff  |...UP`..........|
00001cb0  ff ff ff ff ff ff ff ff  00 06 00 08 00 0d 00 08  |................|
00001cc0  43 07 43 56 00 c0 00 00  ff ff ff ff ff ff ff ff  |C.CV............|
00001cd0  ff ff ff ff ff ff ff ff  00 50 00 08 00 0d 00 08  |.........P......|
00001ce0  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
00002aa0  02 10 14 68 75 c1 00 00  34 44 42 20 52 65 64 6c  |...hu...4DB Redl|
00002ab0  61 6e 64 73 20 32 6d ff  00 06 00 09 00 0d 00 18  |ands 2m.........|
00002ac0  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
000030e0  03 17 43 82 00 c1 00 00  34 5a 42 20 42 72 69 73  |..C.....4ZB Bris|
000030f0  62 61 6e 65 20 37 30 63  00 50 00 09 00 0d 00 18  |bane 70c.P......|
00003100  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
00003720  02 00 14 75 00 c0 00 00  57 49 43 45 4e 20 32 6d  |...u....WICEN 2m|
00003730  ff ff ff ff ff ff ff ff  00 06 00 09 00 0d 00 18  |................|
00003740  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
000037c0  03 07 43 95 00 d0 00 00  55 48 46 20 53 69 6d 70  |..C.....UHF Simp|
000037d0  6c 65 78 ff ff ff ff ff  00 50 00 0c 00 0d 80 18  |lex......P......|
000037e0  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
000094c0  02 00 14 51 75 d0 00 00  41 50 52 53 20 32 6d ff  |...Qu...APRS 2m.|
000094d0  ff ff ff ff ff ff ff ff  00 06 00 0c 00 0d 80 18  |................|
000094e0  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
0000a180  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
0000a240  00 00 00 00 00 00 00 00  ff ff ff ff ff ff ff ff  |................|
0000a250  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
0000a280  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
0000ab10  00 00 00 00 00 00 00 00  00 99 42 8b 00 00 00 00  |..........B.....|
0000ab20  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
0000ac80

That’s a complete hex dump of the memory back-up… I can see each memory channel is 32 bytes, and the frequency in kHz is given in BCD format:

000030e0  03 17 43 82 00 c1 00 00  34 5a 42 20 42 72 69 73  |..C.....4ZB Bris|
000030f0  62 61 6e 65 20 37 30 63  00 50 00 09 00 0d 00 18  |bane 70c.P......|

That’s the Mt. Coot-tha WICEN repeater VK4RZB (which I’ve labelled as “4ZB Brisbane 70c“); 438.200MHz, 91.5Hz CTCSS, negative 5MHz offset. I put it at memory location 200. I’m not sure how 12.5kHz offsets are encoded… maybe I might try programming some more in when I get time and see what they look like, but even that might be enough to “generate” a file with the repeaters I want. We’ll see.