Make the move to a split keyboard and the first thing you’ll notice is that you have all this real estate between the two halves. (Well, as long as you’re doing it right). This is the perfect place to keep your cat, your coffee cup, or in [Jacek]’s case, your fantastic DIY trackball mouse.
Don’t be fooled by the orange plastic base — all the electronics are rolled up inside that big sexy ball, which [Jacek] printed in two halves and glued together. Inside the ball there’s an Adafruit Feather nRF52840 Sense, which has an onboard accelerometer, gyroscope, and magnetometer. As you’ll see in the video after the break, the Feather takes readings from these and applies a sensor-fusing algorithm to determine the ball’s orientation in 3D space before sending its position to the computer. To send the click events, [Jacek] baked some mouse buttons into the keyboard’s firmware. Among the other Feather sensors is a PDM MEMS microphone, so detecting taps on the ball and translating them to clicks is not out of the question for a future version.
Here comes the really clever part: there are two reed switches inside the ball. One is used as a power switch, and the other is for setting the ‘up’ direction of the trackball. The ball charges wirelessly in a 3D printed base, which also has a small neodymium magnet for activating the reed switches. Check out the demo after the break, which shows [Jacek] putting the trackball through its paces on a mouse accuracy testing program.
Abstraction is the core of nearly all progress in computing. Unless you are fabricating your own semiconductors and drawing wire, we all create with building blocks ranging from components like CPUs, to operating system functions, to specialized libraries. Just as you wouldn’t want to spend your time deblocking disk records or rendering fonts for output devices, you probably shouldn’t have to think too much about audio data. While there are some powerful audio processing libraries out there, a new embeddable language called SOUL (SOUnd Language) is now in version 1.0 and wants to help you create efficient code for processing audio.
The goal of SOUL is to target a runtime that can run on CPUs, but is better on DSPs. The code aims to be secure and real time with no pointers, garbage collection, and other things that typically interfere with audio processing or security.
Most of us make do with the VRAM that came with our graphics cards. We can just wait until the next one comes out and get a little more memory. After all, it’d be madness to try and delicately solder on new components of something so timing-sensitive as RAM chips, right?
[VIK-on] took it upon himself to do just that. The inspiration came when a leaked diagram suggested that the RTX 2000 line could support 16 GB of RAM by using 2GB chips. NVIDIA never did release a 16GB version of the 2070, so this card is truly one of a kind. After some careful scouring of the internet, the GDDR6 chips were procured and carefully soldered on with a hot air gun. A few resistors had to be moved to accommodate the new RAM chips. During power-on, [VIK-on] saw all 16 GB enumerate and was able to run some stress tests. Unfortunately, the card wasn’t stable and started having black screen issues and wonky clocks. Whether it was a bad solder joint or firmware issues, it’s hard to say but he is pretty convinced it is a BIOS error. Switching the resistors back to the 8GB configuration yielded a stable system.
Sometimes, the best hifi gear is the gear you’ve already got. This is particularly the case in the cassette world, as high quality decks are long out of production. [Nick] liked his current rig, but wanted to be able to use it with a remote from across the room. Naturally, he set to hacking the feature in.
The cassette deck in question, a Yamaha K-220, was old enough to lack a remote, but thankfully new enough to use a computer-controlled tape transport. This meant that the basic features of play, stop, rewind and fast forward can all be controlled with simple digital buttons rather than mechanical ones. This made it easy to interface an ATmega328P to the stereo’s original circuitry. Digital IO pins are hooked up to the buttons, held as high-impedance inputs most of the time, only toggling to ground when necessary to trigger a button press. It was then a simple job to hook up an IR receiver to the chip and program it with some Arduino libraries to work with a typical stereo remote control [Nick] had laying around.
Back in the day when most people read the news on wood pulp, newspaper outfits would run off a test print on a small proofing press. This gave them a chance to check for typos before printing off thousands of newspapers on the real press.
These presses can be used for more than letterpress proofing, as [Paul] proves with this DIY version (YouTube, embedded below). They are simple machines that use a heavy roller on bearings to provide uniform pressure, so they’ll work for lino-cut printmaking and aquatint etchings, too.
The roller is the most important bit and is easily the most expensive part of a build like this one. [Paul]’s was fashioned by a UK machinist that he found through ebay. The total cost was £220 (~$300 USD), which is well below the thousand-pound mark where commercial machine prices start.
[Paul] made the base and handle out of plywood and CNC’d the side panels out of aluminium. These side panels contain bearings that hold the roller’s ends in place. As the roller moves back and forth, it slides along on another set of bearings the underside of the press. These bearings ride thin metal rails on the underside of the press so they don’t wear grooves into the wood over time.
[Paul]’s press looks fantastic and looks like it does a great job with everything he throws at it. Some uses require raising up the surface to be printed on to get a good transfer, so [Paul] might make it adjustable in the z-direction at some point in the future. Check out the build and walk-through video after the break.
We are extraordinarily fortunate to live at a time in which hardware with astounding capabilities can be had for only a few dollars. Systems that would once have taken an expensive pile of chips and discretes along with months of development time to assemble are now integrated onto commodity silicon. Whether it is a Linux-capable system-on-chip or a microcontroller, such peripherals as WiFi, GPUs, Bluetooth, or USB stacks now come as part of the chip, just another software library rather than a ton of extra hardware.
Beware The Blob!
If there is a price to be paid for this convenience, it comes in the form of the blob. A piece of pre-compiled binary software that does the hard work of talking to the hardware and which presents a unified API to the software. Whether you’re talking to the ESP32 WiFi through an Arduino library or booting a Raspberry Pi with a Linux distribution, while your code may be available or even maybe open source, the blob it relies upon to work is closed source and proprietary. This presents a challenge not only to Software Libre enthusiasts in search of a truly open source computer, but also to the rest of us because we are left reliant upon the willingness of the hardware manufacturer to update and patch their blobs.
An open-source advocate would say that the solution is easy, the manufacturers should simply make their blobs open-source. And it’s true, were all blobs open-source then the Software Libre crowd would be happy and their open-source nature would ease the generation of those updates and patches. So why don’t manufacturers release their blobs as open-source? In some cases that may well be due to a closed-source mindset of never releasing anything to the world to protect company intellectual property, but to leave it at that is not a full answer. To fully understand why that is the case it’s worth looking at how our multifunctional chips are made.
Hackaday editors Mike Szczys and Elliot Williams discuss the greatest hacks of the week that was. Antennas aren’t rocket science, so this week we really enjoyed a video that demystifies antenna designs and a project that tunes up the antennas on cheap wireless modules in the simplest of ways. Google’s in the news this week with the end to project Loon, and a dust-up with the volunteer package maintainers who have spent years making sure Chromium browser is in the Linux repos. Elliot is gaga for magic eye tubes and crazy musical instruments, while Mike is over the moon for a chain-based clock display. We close up the episode talking about the Concorde, and the math behind cable mechanisms.
Take a look at the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!