Simple Badge Is Simple, But It’s Yours

Making conference badges, official or unofficial, has become an art form. It can get pretty serious. #badgelife.

But DEFCON-goers aren’t the only people making fancy personalized nametags. Hams often had callsign badges going back as far as I can remember. Most were made of engraved plastic, but, at some point, it became common to put something like a flashing LED on the top of the engraved antenna tower or maybe something blinking Morse code.

Going back to that simpler time, I wanted to see if I could make my own badge out of easily accessible modules. How easy can it be? Let’s find out. Along the way, we’ll talk about multicore programming, critical sections, namespaces, and jamming images into C++ code. I’ll also show you how to hijack the C preprocessor to create a little scripting language to make the badge easier to configure.

Bottom Line Up Front

The photo shows the Pico badge. It has an RP2040 CPU but not a proper Raspberry Pi Pico. The Waveshare RP2040-Plus clone has a battery connector and charger. It also has a reset button, and this one has 16 MB of flash, but you don’t need that much. The LCD is also a Waveshare product. (This just happened to work out. I bought all of this stuff, and I don’t even know anyone at Waveshare.) The only other thing you need is a USB C cable and a battery with an MX 1.25 connector on it with the correct polarity. Hardware done! Time for software.

Continue reading “Simple Badge Is Simple, But It’s Yours”

Linux Fu: Customizing Printf

When it comes to programming in C and, sometimes, C++, the printf function is a jack-of-all-trades. It does a nice job of quickly writing output, but it can also do surprisingly intricate formatting. For debugging, it is a quick way to dump some data. But what if you have data that printf can’t format? Sure, you can just write a function to pick things apart into things printf knows about. But if you are using the GNU C library, you can also extend printf to use custom specifications. It isn’t that hard, and it makes using custom data types easier.

An Example

Suppose you are writing a program that studies coin flips. Even numbers are considered tails, and odd numbers are heads. Of course, you could just print out the number or even mask off the least significant bit and print that. But what fun is that?

Here’s a very simple example of using our new printf specifier “%H”:

printf("%H %H %H %H\n",1,2,3,4);
printf("%1H %1H\n",0,1);

When you have a width specification of 1 (like you do in the second line) the output will be H or T. If you have anything else, the output will be HEADS or TAILS.

Continue reading “Linux Fu: Customizing Printf”

Retrotechtacular: The $175,000 Laser Printer

Laser printers today are cheap and readily available. But in 1976, they were the height of printing technology. The IBM 3800 was the $175,000 printer to have in that year. (Video, embedded below.) But you couldn’t have one on your desktop. Even if you could afford it, the thing is the size of a car, and we don’t even want to guess what it weighs. The printer took tractor-fed continuous form paper and could do 167 pages a minute at about 150 dots per inch (actually 180 x 144). For the record, that was as much as 1.7 miles of paper an hour!

In those days, people who would use this printer traditionally had massive banks of noisy impact printers. We imagine this device saved many data processing person’s hearing. Compared to a modern laser printer, though, it needed a lot of maintenance. For example, the initial models needed a xenon flash lamp replaced every month, although later models could go years on one bulb. Looking at some of the hardware in the video, it was probably made closer to the end of life for these printers which were made through 1999.

Continue reading “Retrotechtacular: The $175,000 Laser Printer”

Is That A Record Player In Your Pocket Or…

If aliens visited the Earth, they might find our obsession with music hard to fathom. We have music in our homes, our cars, and our elevators. Musical performances draw huge crowds and create enormous fame for a select few musicians. These days, your music player of choice is probably the phone in your pocket. What our grandparents wouldn’t have done to have a pocket-sized music player. Wait…, it turns out they had them. [Rare Historical Photos] has pictures and other material related to the Mikiphone — a “pocket phonograph.” We don’t know how it sounded, but it is a fantastic piece of work visually. Actually, thanks to the [Stanford Archive of Recorded Sound], you can hear one of these rare machines playing in the video below. If only it were playing Toni Basil.

The device was made in the 1920s and had a decidedly strange tonearm. You wind it up with a gigantic key mechanism. There’s no electricity. A bakelite resonator became the speaker attached to the tone arm. The device was made in Switzerland by a company that started in music boxes. However, the design was the work of two brothers named Vadász.

Continue reading “Is That A Record Player In Your Pocket Or…”

Math Book Gets Real With Complex

The [Math Sorcerer] loves books. His latest acquisition is the famous Real and Complex Analysis, which is a very stout math book.  How stout? Well, there are several chapters on holomorphic functions, including how to do a Fourier transform on such a function. There’s also an appendix about Hausdorff’s maximality theorem. What are those? Beats us; read the book. You can also watch the short video review of the text below.

The author asserts right up front that the exponential function is “undoubtedly the most important function in mathematics.” Undoubtedly. [The Math Sorcerer’s] videos remind us of browsing a bookstore or a library. You don’t get a book summary as much as a preview of what’s in it, so you can decide if you want to read it.

Continue reading “Math Book Gets Real With Complex”

Antique Motherboard Speaks

[Bits und Bolts] has been restoring an old PC motherboard with the infamous bad electrolytic capacitors. The video of his exploits was interesting enough, but pretty standard stuff. What we found interesting though, was an odd feature of the ASUS Bios called “Post Reporter” that let the motherboard speak error codes and status through the external speaker. (Video, embedded below.) We aren’t sure who wanted that, and since we haven’t seen it around lately, we are guessing the answer was nobody wanted it.

We enjoyed watching the PCB rework. Those large internal ground plane layers do make it hard to unsolder and then solder the caps. That makes the job seem deceptively easy. However, if you want to skip to the exotic BIOS, jump to the 8:20 mark.

Continue reading “Antique Motherboard Speaks”

Atomic Antenna Uses Lasers

If you think about it, an antenna is nothing more than a radio frequency energy sensor, or — more precisely — a transducer. So, it shouldn’t be a surprise that there could be different ways to sense RF that would work as an antenna. A recent paper in Applied Physics Letters explains an atomic antenna comprised of a rubidium vapor cell.

The interesting thing is that the antenna has no electrical components in the antenna, and can be located far away from the actual receiver. Instead of coax cables, the signal is read with a laser.

Continue reading “Atomic Antenna Uses Lasers”