A Primer On Optical Storage Data Preservation

Picking a storage medium for data preservation can be a conflicting time. Sure, they say optical storage tends to last, but it can’t be as straightforward as just burning everything onto Blu-Rays, right? Here’s a paper from Canadian Conservation Institute, teaching you the basics of using compact disks for data storage, it appears, without missing a single detail, and taking about ten minutes to read.

Here, you will learn about the different kinds of disks available and how their manufacturing-inherent qualities affect their preservation capabilities. Are dual-layer DVDs better than single-layer ones, or is it the opposite? How do CDs compare? And what about Blu-Ray disks? Wonder no more, here you will get answers to questions you didn’t known to ask. Data preservation is a game of numbers to preserve numbers, and this paper also outlines how to properly record, store, and test your disks to raise your chances.

Whether you’re only looking to delve into data preservation, or trying to improve your own policies, this looks like is a perfect document for you. After all, if you’re not aware of the best practices, you might end up having to digitize old floppies or even LaserDisks – not that those aren’t fun journeys to read about, of course, and we recommend it. Data preservation isn’t just about optical disks, of course – it’s a practice with a rich history.

FLOSS Weekly Episode 781: Resistant To The Wrath Of God

This week Jonathan Bennett and Doc Searls sit down with Mathias Buus Madsen and Paolo Ardoino of Holepunch, to talk about the Pear Runtime and the Keet serverless peer-to-peer platform. What happens when you take the technology built for BitTorrent, and apply it to a messaging app? What else does that allow you to do? And what’s the secret to keeping the service running even after the servers go down?

Continue reading “FLOSS Weekly Episode 781: Resistant To The Wrath Of God”

Tiny Prisms Let You See What Lies Beneath A BGA Chip

Compared to through-hole construction, inspecting SMD construction is a whole other game. Things you thought were small before are almost invisible now, and making sure solder got where it’s supposed to go can be a real chore. Add some ball grid array (BGA) chips into the mix, where the solder joints are not visible by design, and inspection is more a leap of faith than objective proof of results.

How it works.

Unless, of course, you put the power of optics to work, as [Petteri Aimonen] does with this clever BGA inspection tool. It relies on a pair of tiny prisms to bounce light under one side of a BGA chip and back up the other. The prisms are made from thin sheets of acrylic; [Petteri] didn’t have any 1-mm acrylic sheet on hand, so he harvested material from a razor blade package. The edge of each piece was ground to a 45-degree angle and polished with successively finer grits until the surfaces were highly reflective. One prism was affixed to a small scrap of PCB with eleven SMD LEDs in a row, forming a light pipe that turns the light through 90 degrees. The light source is held along one edge of a BGA, shining light underneath to the other prism, bouncing light through the forest of solder balls and back toward the observer.

The results aren’t exactly crystal clear, which is understandable given the expedient nature of the materials and construction employed. But it’s certainly more than enough to see any gross problems lying below a BGA, like shorts or insufficiently melted solder. [Petteri] reports that flux can be a problem, too, as excess of the stuff can crystalize between pads under the BGA and obstruct the light. A little extra cleaning should help in such cases.

Haven’t tackled a BGA job yet? You might want to get up to speed on that.

Manta project logo - a manta ray, with cursive 'manta' written next to it

Manta: An Open On-FPGA Debug Interface

We always can use more tools for FPGA debugging, and the Manta project by [Fischer Moseley] delivers without a shadow of a doubt. Manta lets you add a debug and data transfer channel between your computer and your FPGA, that you can easily access with helpfully included Python libraries.

With just a short configuration file as input, it gives you cores you add into your FPGA design, tapping the signals of interest as an FPGA-embedded logic analyzer, interacting with registers, and even letting you quickly transfer tons of data if you so desire.

Manta is easy to install, is developer-friendly, has been designed in Amaranth, and is fully open source as you would expect. At the moment, Manta supports both UART and Ethernet interfaces for data transfer. As for embedding the Manta cores into your project, they can be exported to both Amaranth and Verilog. You should check out the documentation website — it contains everything you might want to know to get started quick.

The Manta project has started out as our hacker’s MIT thesis, and we’re happy that we can cover it for you all. FPGA-embedded logic analyzers are a fascinating and much-needed tool, and we’ve had our own [Al Williams] tell you about his on-FPGA logic analysis journey!

Programming Ada: Packages And Command Line Applications

In the previous installment in this series we looked at how to set up an Ada development environment, and how to compile and run a simple Ada application. Building upon this foundation, we will now look at how to create more complex applications, along with how to parse and use arguments passed to Ada applications on the command line (CLI). After all, passing flags and strings to CLI applications when we launch them is a crucial part of user interaction, as well as when automating systems as is the case with system services.

The way that a program is built-up is also essential, as well-organized code eases maintenance and promotes code reusability through e.g. modularity. In Ada you can organize subprograms (i.e. functions and procedures) in a declarative fashion as stand-alone units, as well as embed subprograms in other subprograms. Another option is packages, which roughly correspond to C++ namespaces, while tagged types are the equivalent of classes. In the previous article we already saw the use of a package, when we used the Ada.Text_IO package to output text to the CLI. In this article we’ll look at how to write our own alongside handling command line input, after a word about the role of the binding phase during the building of an Ada application.

Continue reading “Programming Ada: Packages And Command Line Applications”

This Arduino Is Feeding The Fishes

Depending on the species, a fish can be a fairly low-maintenance pet. But of course even the most laid back of creatures needs to eat, so you’ll have to make sure to feed them regularly. If you’re a fish owner who would like to simplify tending to your creatures, you might find value in this project from [CrazyScience].

This fish feeder is based on an Arduino Uno, the 8-bit microcontroller development board which has done so much for so many. The Arduino drives a stepper motor, which rotates a 3D printed disc mechanism for dispensing food. Each slot of the disc is loaded with a small amount of fish food, so that when it rotates, a slot dumps its contents through a slot into the water.

Activating the system is as easy as a wave of the hand. That’s thanks to an ultrasonic sensor, which detects movement close by, and triggers the food delivery mechanism in turn. We’d love to see this upgraded with a timer mode too, though it would require the addition of a real-time clock module to the humble Arduino Uno.

It’s a simple project, but one that teaches all kinds of useful skills, from programming to design and 3D printing. We just worry that the fish bowl in the demo is a far too small for fish to remain healthy. We’ve seen some other similar projects before, too.

Continue reading “This Arduino Is Feeding The Fishes”

Supercon 2023: Jose Angel Torres On Building A Junkyard Secure Phone

If you ever wondered just what it takes to build a modern device like a phone, you should have come to last year’s Supercon and talked with [Jose Angel Torres]. He’s an engineer whose passion into investigating what makes modern devices tick is undeniable, and he tells us all about where his forays have led so far – discovering marvels that a Western hacker might not be aware of.

Six years ago, he has moved to China, having previously been responsible for making sure that their Chinese subcontractors would manufacture things in the right ways. Turns out, doing that while being separated by an ocean set up more than just the timezone barriers – they were communicating between different worlds.

[Jose] tells us of having learned Chinese on the spot, purely from communicating with people around him, and it’s no wonder he’s had the motivation! What he’s experienced is being at the heart of cycle of hardware life, where devices are manufactured, taken apart and rebuilt anew. Here’s how he tapped into that cycle, and where he’s heading now.

Continue reading “Supercon 2023: Jose Angel Torres On Building A Junkyard Secure Phone”