The TA-1042 is the most badass looking telephone you’ll ever see. It’s a digital military telephone from the 1980s, but sadly non-functional unless it’s hooked up to the military phone switches it was designed to work with. These days, they’re really only useful as a heavy object to throw at somebody… that is, unless you had the suitable supporting hardware. As it turns out, [Nick] and [Rob] were able to whip up exactly that.
Their project involved implementing the TA-1042’s proprietary switching protocol on a Raspberry Pi Pico. The microcontroller’s unique Programmable I/O subsystem proved perfect for the task. With a little programming and a hat for the Pico to interface with the hardware, they were able to get the TA-1042 working as intended. It involved learning how to encode and decode the Manchester encoded data used by the Digital Non-secure Voice Terminal equipment. Notably, the TA-1042 isn’t the only phone you can use with this setup. You can also hook up other US military DNVT phones, like the TA-954 or TA-1035.
If you want this hardware for yourself, you can simply buy one of [Nick] and [Rob]’s DNVT switches from Tindie. Alternatively, you can roll your own with the source code provided on GitHub.
We’ve seen these phones before repurposed in an altogether different fashion. We’ve also taken a deep dive into the details of the military’s AUTOVON network.
tl;dr yet another youtuber producing content but not value.
Congratulations, you’ve just described all of YouTube.
Congratulations, you’ve just generalized all of YouTube and overlooked some worthwhile videos. There ARE some great channels on YouTube which provide value as well as content. For example:
Tommy Jobson (excellent clockmaker)
Mustie1 (old vehicle repair and reviving old engines)
Studson Studio (creating amazing models out of garbage with some brilliantly edited videos)
Wintergatan (persuing the Marble Machine dream)
Tom Scott (entertaining insights into all kinds of things)
and that’s just a few off the top of my head.
@frenchguycooking A former engineer named Alex who builds or modifies his own kitchen equipment to make cool food, and constructs amazing dishes.
If you did not read it, you probably also did not see the github link.
Source Code: https://github.com/nickandre/dnvt-fw
Buy a board: https://www.tindie.com/products/nicka…
Rob’s write-up: http://robruark.com/projects/DNVT/DNV…
Two of those links are broken. The Tindie link is https://www.tindie.com/products/nickandre/digital-military-telephone-switch-rp2040-dnvt/ and the write-up is http://robruark.com/projects/DNVT/DNVT_overview.html
I’m not seeing the “value” of your comment. Do you think you’re being helpful or clever?
Field phones may be doorstops, but their wires made of incredibly robust copper reinforced with steel cores surrounded by military grade sleeves are a real godsend for building dipoles and long wire antennas. If you can get a spool, don’t think twice!
I’m surprised that wire like that is so hard to come by. You’d think they’d make more of it today.
alright which of you shitheads immediately saw this and started bidding on the one listing for one of these phones on ebay !?!
There’s a reason we stocked up on TA-1042s before releasing the video 😂
They do come up from time to time in batches of 5 or so at a reasonable cost (about $70 + shipping).
Great video!
Thanks so much! Apparently I’m not the only one who finds these weird old phones pretty cool :)
Can’t watch the video right now, so not sure if you touched on this…. Any chance this could interface with asterisk pbx making it usable as a DID station?
Yeah we’re sorting through the best way to do this. The codec from the phones is called CVSD which is an early digital codec that has moderate bitrate (in these phones 16 or 32 kbps) and is relatively simple to implement in an IC using a comparator, shift register, and integrator. I think the most straightforward way to do it is to implement an Asterisk codec for CVSD (not terribly hard, there’s one in the SOX library) and then allow Asterisk to do any necessary transcoding to other formats. From the phone side, we have the option of either implementing SIP or writing a DAHDI driver for Asterisk. I did a decent amount of research on PJSIP’s third party audio example which seemed like it would work, but I believe if we wanted to make 4 phones accessible we’d need to run 4 SIP instances. I am still trying to ascertain whether DAHDI would make more sense, although we now have a demo program that can run on a host using libusb that’s able to get the raw data from the phones and send commands, so the last remaining part is the Asterisk integration. If you’re interested in helping you can reach out to me through our website using the contact form or join the Discord, linked in the video.
Dang! That’s excellent news. Appreciate the incredibly detailed response. I would absolutely love to help with that project, but unfortunately with work ramping up, my free time for the next six to eight months is going to be quite sparse. Definitely following this project, and will absolutely reach out if things slow down and I could contribute!
Ohhh, the flashbacks. As a Signal Corps officer and MSE platoon leader in the 90s, I had dozens of these, strung together with miles and miles of 4 wire cable (the green grass grows on the brown dirt). For a bottle of hooch, you could get that FO button recognized by the switch and call momma over the satellite late at night.
The entire system was incredibly bandwidth inefficient. 64 bit NRZ encoding per voice channel with static channel definition. The smallest subswitches got 256 kb/s over the air, with 13 voice channels, one data channel, and 2 signalling channels. The big interswtich trunks were 1024 kb/s.
Honestly, I’d love to get a hold of one of the rubidium standards from a node center switch van…
There’s a shop in Illinois that will take these (especially TA-954) and convert the guts to POTS and even give them a Battlestar Galactica look for ~$400. I was thinking your switch might be a cheaper alternative. It would be great if your switch had POTS support or could interface with something like a CELL2JACK.