Linux Fu: Miller The Killer Makes CSV No Pest

Historically, one of the nice things about Unix and Linux is that everything is a file, and files are just sequences of characters. Of course, modern practice is that everything is not a file, and there is a proliferation of files with some imposed structure. However, if you’ve ever worked on old systems where your file access was by the block, you’ll appreciate the Unix-like files. Classic tools like awk, sed, and grep work with this idea. Files are just characters. But this sometimes has its problems. That’s the motivation behind a tool called Miller, and I think it deserves more attention because, for certain tasks, it is a lifesaver.

The Problem

Consider trying to process a comma-delimited file, known as a CSV file. There are a lot of variations to this type of file. Here’s one that defines two “columns.” I’ve deliberately used different line formats as a test, but most often, you get one format for the entire file:

Slot,String 
A,"Hello" 
"B",Howdy 
"C","Hello Hackaday" 
"D","""Madam, I'm Adam,"" he said." 
E 100,With some spaces!
X,"With a comma, or two, even"

Continue reading “Linux Fu: Miller The Killer Makes CSV No Pest”

Fiberglass Mesh For Stronger 3D Prints

There are many clever ways to make stronger 3D prints, be they by the use of special slicing algorithms or by unusual filaments. [Brtv-z] has taken a more straightforward tack, by making glass-reinforced prints using painters fiberglass mesh tape.

It’s a laborious technique that involves stopping the print to manually place the fiberglass at each successive millimeter of print. The resulting test piece comes off the print bed festooned with fiberglass mesh, and once it’s been trimmed, he subjects it to some tests which you’ll see in the video below the break(Russian language, but there are subtitles).

The tests are fairly rough and ready involving a hammer (we winced at the hammering in a vice, but of course this piece isn’t forged steel!) and standing on a flat piece of print balanced between two blocks. As you’d expect, the reinforced piece appears the stronger, but these tests would benefit from a calibrated set-up to quantify the strength.

So if you’re of a mind to experiment, this certainly seems like an accessible if rather tedious way to make glass reinforced 3D prints. If you then want to characterize them, remember this can be done with a bit of farmyard engineering if you have nothing better.

Continue reading “Fiberglass Mesh For Stronger 3D Prints”

Mouse Enjoys Its Freedom

Although it took a little while to standardize on the two-button-with-scroll-wheel setup, most computers have used a mouse or mouse-like device to point at objects on the screen since the 80s. But beyond the standard “point and click” features of the mouse, there have been very few ground-breaking innovations beyond creature comforts. At least, until the “Space Mushroom” mouse from [Shinsaku Hiura] hit our tips line.

This mouse throws away most of the features a typical mouse might have in favor of a joystick-like interface that gives it six degrees of freedom instead of the usual two — while still being about mouse-sized and held in the hand. It doesn’t even have a way of mapping motion directly to movements on the screen. Instead, it maps each degree of freedom to a similar movement of the mouse itself using these three joystick sensors physically linked together, with some underlying programming to translate each movement into the expected movement on the screen.

While this might not replace a standard mouse for every use case anytime soon, it does seem to have tremendous benefit in 3D modeling software, CAD, or anything where orienting a virtual object is the primary goal. Plus, since there’s no limit to the number of mice that can be attached to a computer (beyond USB limitations) this mouse could easily be used in conjunction with a normal mouse much like macro keyboards being used alongside traditional ones.

Continue reading “Mouse Enjoys Its Freedom”

Giant Spinning POV Christmas Tree

Spinning Holographic POV Christmas Tree Of Death

[Sean Hodgins] really harnessed the holiday spirit to create his very own Giant Spinning Holographic Christmas Tree (of Death). It’s a three-dimensional persistence-of-vision (POV) masterpiece, but as a collection of rapidly spinning metal elements, it’s potentially quite dangerous as well. As [Sean] demonstrates, the system can display other images and animations well beyond the realm of mere holiday trees.

Initial experiments focused on refining the mechanical structure, bearings, and motor. A 1/2 horsepower A.C. motor was selected and then the dimensions of the tree were “trimmed” to optimize a triangular frame that could be rotated at the necessary POV speed by the beefy motor.  A six-wire electrical slip ring allows power and control signaling to be coupled to the tree through its spinning central shaft.

The RGB elements are SK9888 LEDs also know as DotStar LEDs. DotStar LEDs are series-chainable, individually-addressable RGB LEDs similar to NeoPixels. However, with around 50 times the pulse width modulation (PWM) rate, DotStars are more suitable for POV applications than NeoPixels.  The LED chain is driven by a Raspberry Pi 4 single board computer using a clever system for storing image frames.

If deadly rotational velocity is not your cup of tea, consider this slower spinning RGB Christmas tree featuring a DIY slip ring. Or for more POV, may we suggest this minimalist persistence-of-vision display requiring only a few LEDs and an ATtiny CPU.

Continue reading “Spinning Holographic POV Christmas Tree Of Death”

DietPi Releases 8.12 With Support For The Rockchip RK3588 SoC

This month DietPi released version 8.12 of this SBC-oriented Linux distribution. Most notable is the addition of support for the NanoPi R6S and the Radxa ROCK 5B SBCs. The ROCK 5B features the new flagship Rockchip RK3588 SoC with quad Cortex-A76 and quad Cortex-A55. What makes DietPi interesting as an operating system for not just higher end SBCs but also lower-end SBCs compared to options like Debian, Raspberry Pi OS and Armbian is that it has a strong focus on being the most optimized. This translates in a smaller binary size, lower RAM usage and more optimized performance.

The DietPi setup experience is as straightforward as with the aforementioned options, except that right from the bat you get provided with many more options to tweak. While the out of the box experience and hitting okay on the provided defaults is likely to be already more than satisfactory for most users – with something like the optional graphical interface easy to add – enterprising users can tweak details about the hardware, the filesystem and more.

When we set up DietPi on a Raspberry Pi Zero, it definitely feels like a much more light-weight experience than the current Debian Bullseye-based Raspberry Pi OS. Even though DietPi is also based on Debian, it leaves a lot more RAM and storage space free, which is a definite boon when running on a limited platform like a Raspberry Pi Zero. Whether it’s polite to state in public or not, DietPi definitely rubs in that many standard SBC images are rather pudgy these days.

Flexible, Thin-Film Biosensors

We like to keep a pulse on the latest biosensor research going on around the world. One class of biosensors that have really caught our attention is the so-called thin-film sensors, pioneered by the Rogers Research Group at Northwestern University.

We’re no strangers to the flexible PCB here at Hackaday. Flexible PCBs have become increasingly accessible to small-scale developers and hobbyists, explaining why we’re seeing them incorporated into many academic research projects. The benefit of these types of sensors lies in the similarity of their mechanical properties to those of human skin. Human skin is flexible, so matching the flexibility of skin allows these thin-film sensors to adhere more comfortably and naturally to a person’s body. Continue reading “Flexible, Thin-Film Biosensors”

A Christmas-themed LEGO train engine and coal car

ESPHome Powers Festive LEGO Train Set

While the basic concept of LEGO bricks might have changed little since the mid-20th century, some components such as motors and sensors are still affected by technological progress and end up obsolete and unsupported. [Roberts Retro] ran into this problem when he was building a festive train setup and realized he didn’t have the speed controller to match his train engine. Without that part, the engine would only run at full speed and derail as soon as it hit a curve. The official speed controller had been discontinued and was hard to find, so he had to build his own.

The basic components needed were an H-bridge driver to operate the motor and an ESP8266 to generate PWM signals. In order to keep the bricky appearance of the train engine intact, [Robert] hollowed out a few cheap imitation LEGO bricks to house the electronics. He also cut out slots for JST connectors, which are far more convenient to work with than LEGO’s brick-style connectors.

Two imitation LEGO bricks with electronics insideThe ESP8266 runs ESPHome, which enables [Robert] to control the entire setup using Home Assistant. The train is programmed to run a few laps at the top of the hour and play choo-choo sounds from a mini MP3 player hidden in the coal car. That car also holds a standard AA battery holder to power the system, which makes it easy to swap the batteries without having to partially disassemble the train.

There are various ways to control LEGO creations using standard computer platforms: we’ve seen the ESP32 powering a LEGO tank, for instance. If you need a bit more computing power, there’s even an official LEGO Raspberry Pi HAT.

Continue reading “ESPHome Powers Festive LEGO Train Set”