On the left, four through-hole USB-C connectors laid out on a purple cutting mat. On the right, a teardown picture shows that there's neither resistors nor CC connections inside such a connector, resulting in consequences described in the article.

The USB-C Connectors You Never Knew You Wanted To Avoid

On Tech Twitter, some people are known for Their Thing – for example, [A13 (@sad_electronics)], (when they’re not busy designing electronics), searches the net to find outstanding parts to marvel at. A good portion of the parts that they find are outstanding for all the wrong reasons. Today, that’s a through-hole two-pin USB Type-C socket. Observing the cheap tech we get from China (or the UK!), you might conclude that two 5.1K pulldown resistors are very hard to add to a product – this socket makes it literally impossible.

We’ve seen two-pin THT MicroUSB sockets before, sometimes used for hobbyist kits. This one, however, goes against the main requirement of Type-C connectors – sink (Type-C-powered) devices having pulldowns on CC pins, and source devices (PSUs and host ports) having pull up resistors to VBUS. As disassembly shows, this connector has neither of these nor the capability for you to add anything, as the CC pins are physically not present. If you use this port to make a USB-C-powered device, a Type-C-compliant PSU will not give it power. If you try to make a Type-C PSU with it, a compliant device shall (rightfully!) refuse to charge from it. The only thing this port is good for is when a device using it is bundled with a USB-A to USB-C cable – actively setting back whatever progress Type-C connectors managed to make.

As much as USB Type-C basics are straightforward, manufacturers get it wrong on the regular – back in 2016, a wrong cable could kill your $1.5k MacBook. Nowadays, we might only need to mod a device with a pair of 5.1K resistors every now and then. We can only hope that the new EU laws will force devices to get it right and stop ruining the convenience for everyone, so we can finally enjoy what was promised to us. Hackers have been making more and more devices with USB-C ports, and even retrofitting iPhones here and there. If you wanted to get into mischief territory and abuse the extended capabilities of new tech, you could even make a device that enumerates in different ways if you flip the cable, or make a “BGA on an FPC” dongle that is fully hidden inside a Type-C cable end!

Immersive Stereo Sound Recording With This Binaural Microphone

Sound recording has been a consumer technology for so long now that it is ubiquitous, reaching for a mobile device and firing up an app takes only an instant. Anyone who takes an interest in audio recording further will find that while it’s relatively straightforward to make simple recordings. But, as those among you who have fashioned a pair of Shure SM58s into an X configuration with gaffer tape will know, it can be challenging to create a stereo image when recording outside the studio. In the quest to perfect this, [Kevin Loughin] has created a binaural microphone, which simulates a human head with microphones placed as ears to produce ambient recordings with an almost-immersive stereo image.

Commercial binaural microphones can cost thousands of dollars, but this one opts for a more budget design using an off-the-shelf mannequin head sold for hairdressers. It’s filled with high-density foam, and in its ears [Kevin] placed 3D-printed ear canals with electret microphone capsules. On the back goes a battery and a box for the bias circuitry.

The results as you can hear in the video below the break are impressive, certainly so for the cost. It’s not the first such microphone we’ve shown you, compare it with one using a foam-only head.

Continue reading “Immersive Stereo Sound Recording With This Binaural Microphone”

Hackaday Links Column Banner

Hackaday Links: February 20, 2022

Sounds like somebody had a really bad day at work, as Western Digital reports that “factory contamination” caused a batch of flash memory chips to be spoiled. How much, you ask? Oh, only about 7 billion gigabytes! For those of you fond of SI prefixes, that’s 7 exabytes of storage; to put that into perspective, it’s seven times what Google used for Gmail storage in 2012, and enough to store approximately 1.69 trillion copies of Project Gutenberg’s ASCII King James Version Bible. Very few details were available other than the unspecified contamination of two factories, but this stands poised to cause problems with everything from flash drives to phones to SSDs, and will probably only worsen the ongoing chip shortage. And while we hate to be cynical, it’ll probably be prudent to watch out for any “too good to be true” deals on memory that pop up on eBay and Ali in the coming months.

Continue reading “Hackaday Links: February 20, 2022”

An RF remote control with a LoRa receiver next to it

Reverse Engineering A 900 MHz RC Transmitter And Receiver

For those building their own remote controlled devices like RC boats and quadcopter drones, having a good transmitter-receiver setup is a significant factor in the eventual usability of their build. Many transmitters are available in the 2.4 GHz band, but some operate at different frequencies, like the 868/915 MHz band. The TBS Crossfire is one such transmitter, and it’s become a popular model thanks to its long-range performance.

The channel hopping sequence of a TBS Crossfire transmitter
The channel hopping sequence

When [g3gg0] bought a Crossfire set for his drone, he discovered that the receiver module consisted of not much more than a PIC32 microcontroller and an SX1272 LoRa modem. This led him to ponder if the RF protocol would be easy to decode. As it turns out, it was not trivial, but not impossible either. First, he built his own SPI sniffer using a CYC1000 FPGA board to reveal the exact register settings that the PIC32 sent to the SX1272. The Crossfire uses channel hopping, and by simply looking at the register settings it was easy to figure out the hopping sequence.

Once that was out of the way, the next step was to figure out what data was flowing through those channels. The data packets appeared to be built up in a straightforward way, but they included an unknown CRC checksum. Luckily, brute-forcing it was not hard; the checksum is most likely used to keep receivers from picking up signals that come from a different transmitter than their own.

[g3gg0]’s blog post goes into intricate detail on both the Crossfire’s protocol as well as the reverse engineering process needed to obtain this information. The eventual conclusion is that while the protocol is efficient and robust, it provides no security against eavesdropping or deliberate interference. Of course, that’s perfectly fine for most RC applications, as long as the user is aware of this fact.

If you’re into decoding RF protocols, you might also want to try using a logic analyzer. But if you merely want to replicate an existing transmitter’s signals, it might be easier to simply spoof a few button presses.

Continue reading “Reverse Engineering A 900 MHz RC Transmitter And Receiver”

Winamp Reborn With The Adafruit PyPortal

One look at the default Winamp skin is sure to reawaken fond memories for a certain segment of the community. For those who experienced the MP3 revolution first hand, few audio players stick out in the mind like Winamp and its llama whipping reputation. No, the proprietary Windows-only media player isn’t the sort of thing you’d catch us recommending these days; but it was the 1990s, and things were very different.

For those who want to relive those heady peer-to-peer days, [Tim C] has posted a tutorial on how to turn Adafruit’s PyPortal into a touch screen MP3 player that faithfully recreates the classic Winamp look. As you can see in the video below it certainly nails the visuals, down to the slightly jerky scrolling of the green track info which we’re only now realizing was probably the developer’s attempt to mimic some kind of a physical display like a VFD.

With minimal UI functionality, playlists must be created manually.

[Tim] has even included support for original Winamp themes, although as you might expect, some hoop-jumping is required. In this case, it’s a Python script that you have to run against an image of the original skin pulled from the Winamp Skin Museum. From there, you just need to edit a couple of lines of code to point the player at the right skin files. In other words, switching between skins is kind of a hassle, but you should at least be able to get your favorite flavor from back in the day up and running.

But before you get too excited, there’s a bit of a catch. For one thing, the Winamp UI isn’t actually functional. You can tap the top section of the screen to pause the playback, and tapping down in the lower playlist area lets you change songs, but all the individual buttons and that iconic visual equalizer are just for show. Managing your playlists also requires you to manually edit a JSON file, which even in the 1990s we would have thought was pretty wack, to use the parlance of the times.

Of course, things could easily be streamlined a bit with further revisions to the code, and since [Tim] has released it into the public domain under the Unlicense, anyone can help out. As it stands, it’s still a very slick media display that we certainly wouldn’t mind having on our desk.

Continue reading “Winamp Reborn With The Adafruit PyPortal”

All About Dichroic Optical Filters

[IMSAI Guy] presents for your viewing pleasure, a nice video on the topic of optical filters and mirrors. (Video, embedded below) The first optical device is a simple absorption filter, where incoming light is absorbed in a wavelength-selective manner. Much more interesting however is the subject of interference or dichroic filters. These devices are constructed from many thin layers of a partially reflective material, and operate on the principle of interference. This means that photons hitting the filter stack will interfere either constructively or destructively giving the filter a pass or stop response for a particular wavelength.

As [IMSAI Guy] demonstrates, this makes the filters direction-specific, as photons hitting the stack at a different angle will travel slightly further. Longer travel means the interference effect will be different, and so will the filtering response. You can see this by playing around with one in your hands and seeing the color change as your rotate it. Dichroic filter films can also make for some stunning optical effects. Very cool stuff.

By creating a filter stack with a wide enough range of inter-layer thicknesses, it’s possible to construct a mirror that covers the full spectrum with excellent reflectivity.  Since you can tune the layers, you can make it reflect any range of wavelengths you like. One thing we’ve not seen before is a wedge-like optical filter device, where the layer thicknesses progressively increase lengthways, creating a variable optical frequency response along the length. We guess this would be useful for diagnostics in the field, or perhaps for manually tuning a beam path?

We like the applications for dichroic films – here’s an Infinity Mirror ‘Hypercrystal’. If you don’t want to buy off-the-shelf films, perhaps you could sputter yourself something pretty?

Continue reading “All About Dichroic Optical Filters”

How A Pentester Gets Root

Have you ever wanted to be a fly on the wall, watching a penetration tester attack a new machine — working their way through the layers of security, ultimately leveraging what they learned into a login?  What tools are used, what do they reveal, and how is the information applied? Well good news, because [Phani] has documented a step-by-step of every action taken to eventually obtain root access on a machine — amusingly named DevOops — which was set up specifically for testing.

[Phani] explains every command used (even the dead-end ones that reveal nothing useful in this particular case) and discusses the results in a way that is clear and concise. He starts from a basic port scan, eventually ending up with root privileges. On display is an overall process of obtaining general information.  From there, [Phani] methodically moves towards more and more specific elements. It’s a fantastic demonstration of privilege escalation in action, and an easy read as well.

For some, this will give a bit of added insight into what goes on behind the scenes in some of the stuff covered by our regular feature, This Week in Security.