All About USB-C: Manufacturer Sins

People experience a variety of problems with USB-C. I’ve asked people online about their negative experiences with USB-C, and got a wide variety of responses, both on Twitter and on Mastodon. In addition to that, communities like r/UsbCHardware keep a lore of things that make some people’s experience with USB-C subpar.

In engineering and hacking, there’s unspoken things we used to quietly consider as unviable. Having bidirectional power and high-speed data on a single port with thousands of peripherals, using nothing but a single data pin – if you’ve ever looked at a schematic for a proprietary docking connector attempting such a feat, you know that you’d find horrors beyond comprehension. For instance, MicroUSB’s ID pin quickly grew into a trove of incompatible resistor values for anything beyond “power or be powered”. Laptop makers had to routinely resort to resistor and one-wire schemes to make sure their chargers aren’t overloaded by a laptop assuming more juice than the charger can give, which introduced a ton of failure modes on its own.

When USB-C was being designed, the group looked through chargers, OTG adapters, display outputs, docking stations, docking stations with charging functions, and display outputs, and united them into a specification that can account for basically everything – over a single cable. What could go wrong?

Of course, device manufacturers found a number of ways to take everything that USB-C provides, and wipe the floor with it. Some of the USB-C sins are noticeable trends. Most of them, I’ve found, are manufacturers’ faults, whether by inattention or by malice; things like cable labelling are squarely in the USB-C standard domain, and there’s plenty of random wear and tear failures.

I don’t know if the USB-C standard could’ve been simpler. I can tell for sure that plenty of mistakes are due to device and cable manufacturers not paying attention. Let’s go through the notorious sins of USB-C, and see what we can learn. Continue reading “All About USB-C: Manufacturer Sins”

Ask Hackaday: The Ten Dollar Digital Mixing Desk?

There comes a point in every engineer’s life at which they need a mixing desk, and for me that point is now. But the marketplace for a cheap small mixer just ain’t what it used to be. Where once there were bedroom musicians with a four-track cassette recorder if they were lucky, now everything’s on the computer. Lay down as many tracks as you like, edit and post-process them digitally without much need for a physical mixer, isn’t it great to be living in the future!

This means that those bedroom musicians no longer need cheap mixers, so the models I was looking for have disappeared. In their place are models aimed at podcasters and DJs. If I want a bunch of silly digital effects or a two-channel desk with a crossfader I can fill my boots, but for a conventional mixer I have to look somewhat upmarket. Around the three figure mark are several models, but I am both a cheapskate and an engineer. Surely I can come up with an alternative. Continue reading “Ask Hackaday: The Ten Dollar Digital Mixing Desk?”

Smart Ovens Are Doing Dumb Checks For Internet Connectivity

If you’ve ever worked in IT support, you’ll be familiar with users calling in to check if the Internet is up every few hours or so. Often a quick refresh of the browser is enough to see if a machine is actually online. Alternatively, a simple ping or browsing to a known-working website will tell you what you need to know. The one I use is koi.com, incidentally.

When it comes to engineers coding firmware for smart devices, you would assume they have more straightforward and rigorous ways of determining connectivity. In the case of certain smart ovens, it turns out they’re making the same dumb checks as everyone else.

Continue reading “Smart Ovens Are Doing Dumb Checks For Internet Connectivity”

What Losing Everything Taught Me About Backing Up

Backing up. It’s such a simple thing on paper – making a copy of important files and putting them in a safe place. In reality, for many of us, it’s just another thing on that list of things we really ought to be doing but never quite get around to.

I was firmly in that boat. Then, when disaster struck, I predictably lost greatly. Here’s my story on what I lost, what I managed to hang on to, and how I’d recommend you approach backups starting today.

Continue reading “What Losing Everything Taught Me About Backing Up”

Broken Genes And Scrambled Proteins: How Radiation Causes Biological Damage

If decades of cheesy sci-fi and pop culture have taught us anything, it’s that radiation is a universally bad thing that invariably causes the genetic mutations that gifted us with everything from Godzilla to Blinky the Three-Eyed Fish. There’s a kernel of truth there, of course. One only needs to look at pictures of what happened to Hiroshima survivors or the first responders at Chernobyl to see extreme examples of what radiation can do to living tissues.

But as is usually the case, a closer look at examples a little further away from the extremes can be instructive, and tell us a little more about how radiation, both ionizing and non-ionizing, can cause damage to biochemical structures and processes. Doing so reveals that, while DNA is certainly in the crosshairs for damage by radiation, it’s not the only target — proteins, carbohydrates, and even the lipids that form the membranes within cells are subject to radiation damage, both directly and indirectly. And the mechanisms underlying all of this end up revealing a lot about how life evolved, as well as being interesting in their own right.

Continue reading “Broken Genes And Scrambled Proteins: How Radiation Causes Biological Damage”

New Study Tells Us Where To Hide When The Nukes Are Coming

Geopolitics is a funny thing. Decades can go by with little concern, only for old grudges to suddenly boil to the surface and get the sabers a-rattlin’. When those sabers happen to be nuclear weapons, it can be enough to have you mulling the value of a bomb shelter in your own backyard.

Yes, every time the world takes a turn for the worse, we start contemplating what we’d do in the event of a nuclear attack. It’s already common knowledge that stout reinforced concrete buildings offer more protection than other flimsier structures. However, a new study has used computer modelling to highlight the best places to hide within such a building to maximise your chances of survival.

Continue reading “New Study Tells Us Where To Hide When The Nukes Are Coming”

Punycodes Explained

When you’re restricted to ASCII, how can you represent more complex things like emojis or non-Latin characters? One answer is Punycode, which is a way to represent Unicode characters in ASCII. However, while you could technically encode the raw bits of Unicode into characters, like Base64, there’s a snag. The Domain Name System (DNS) generally requires that hostnames are case-insensitive, so whether you type in HACKADAY.com, HackADay.com, or just hackaday.com, it all goes to the same place.

[A. Costello] at the University of California, Berkley proposed the idea of Punycode in RFC 3492 in March 2003. It outlines a simple algorithm where all regular ASCII characters are pulled out and stuck on one side with a separator in between, in this case, a hyphen. Then the Unicode characters are encoded and stuck on the end of the string.

First, the numeric codepoint and position in the string are multiplied together. Then the number is encoded as a Base-36 (a-z and 0-9) variable-length integer. For example, a greeting and the Greek for thanks, “Hey, ευχαριστώ” becomes “Hey, -mxahn5algcq2″. Similarly, the beautiful city of München becomes mnchen-3ya. Continue reading “Punycodes Explained”