When [::vtol::] wants to generate random numbers he doesn’t simply type rand() into his Arduino IDE, no, he builds a piece of art. It all starts with a knob, presumably connected to a potentiometer, which sets a frequency. An Arduino UNO takes the reading and generates a tone for an upward-facing speaker. A tiny ball bounces on that speaker where it occasionally collides with a piezoelectric element. The intervals between collisions become our sufficiently random number.
The generated number travels up the Rube Goldberg-esque machine to an LCD mounted at the top where a word, corresponding to our generated number, is displayed. As long as the button is held, a tone will continue to sound and words will be generated so poetry pours forth.
If this take on beat poetry doesn’t suit you, the construction of the Ball-O-Bol has an aesthetic quality that’s eye-catching, whereas projects like his Tape-Head Robot That Listens to the Floor and 8-Bit Digital Photo Gun showed the electronic guts front and center with their own appeal.
Continue reading “Follow the Bouncing Ball of Entropy”
The old saying is if your data isn’t backed up at least twice, it’s not backed up at all. For those not wise enough to heed this adage, there are a number of options available to you if you wish your data to be recovered. Assuming the drive itself is just corrupted somehow (maybe a malicious attack, maybe a user error) and not damaged beyond physical repair, the first step is to connect the drive to another computer. If that fails, it might be time to break out the computer forensics skills.
[Luis]’s guide is focused on Linux-specific drives and recovery tools, so this isn’t necessarily a general-purpose how-to. That being said, there is a lot of information in this guide such as how to mount the target drive’s partitions, how to set up various timelines, and which of the Linux system’s logs are important for the forensic analysis. This specific example in the guide also goes into detail about noticing which of the recent files had been accessed, what they might have done, and different approaches to piecing the mystery of this corrupted drive together.
[Luis] points out that the world of Linux forensics is much different from that of Windows, but for anyone looking to get started he suggests starting with a clean Linux install and going from there. There are many other avenues of digital forensics, as well; the field has as many avenues of exploration as there are different types of computers.
In a recent article, I lamented my distaste for carrying on the classic amateur radio conversation — calling CQ, having someone from far away or around the block call back, exchange call signs and signal reports and perhaps a few pleasantries. I think the idle chit-chat is a big turn-off to a lot of folks who would otherwise be interested in the World’s Greatest Hobby™, but thankfully there are plenty of ways for the mic-shy to get on the air. So as a public service I’d like to go over some of the many digital modes amateur radio offers as a way to avoid talking while still communicating.
Continue reading “Shut Up and Say Something: Amateur Radio Digital Modes”
Who doesn’t love a good robot? If you don’t — how dare you! — then this charming little scamp might just bring the hint of a smile to your face.
SDDSbot — built out of an old Sony Dynamic Digital Sound system’s reel cover — can’t do much other than turn left, right, or walk forwards on four D/C motor-controlled legs, but it does so using the power of a Pixy camera and an Arduino. The Pixy reads colour combinations that denote stop and go commands from sheets of paper, attempting to keep it in the center of its field of view as it toddles along. Once the robot gets close enough to the ‘go’ colour code, the paper’s orientation directs the robot to steer itself left or right — the goal being the capacity to navigate a maze. While not quite there yet, it’s certainly a handful as it is.
Continue reading “The Enchanting Power Of SDDSbot”
As much as we’d like to have the right tools for the right job all of the time, sometimes our parts drawers have other things in mind. After all, what’s better than buying a new tool than building one yourself from things you had lying around? That’s at least what [Saulius] must have been thinking when he needed a thermometer with a digital output, but only had a dumb, but feature-rich, thermometer on hand.
Luckily, [Saulius] had a webcam lying around as well as an old thermometer, and since the thermometer had a LCD display it was relatively straightforward to get the camera to recognize the digits in the thermometer’s display. This isn’t any old thermometer, either. It’s a four-channel thermometer with good resolution and a number of other useful features (with an obvious lack of communications abilities), so it’s not something that he could just overlook.
Once the camera was mounted to an arm and pointed at the thermometer’s screen, an algorithm running on a computer detects polygons and reports its information into a CSV file. This process is made simpler by the fact that LCD screens like this are very predictable. From there, the data is imported into LibreOffice and various charts and graphs can be made.
Although perhaps not the most elegant of hacks, sometimes you have to work with the supplies that are on hand at the time. Sometimes the tools you need are too expensive, politically dangerous, or too impractical to obtain. To that end [Saulius]’s hack is a great example of what hacks are possible with the right mindset.
We are all (hopefully) aware that we can be watched while we’re online. Our clicks are all trackable to some extent, whether it’s our country’s government or an advertiser. What isn’t as obvious, though, is that it’s just as easy to track our movements in real life. [Saulius] was able to prove this concept by using optical character recognition to track the license plate numbers of passing cars half a kilometer away.
To achieve such long distances (and still have clear and reliable data to work with) [Saulius] paired a 70-300 mm telephoto lens with a compact USB camera. All of the gear was set up on an overpass and the camera was aimed at cars coming around a corner of a highway. As soon as the cars enter the frame, the USB camera feeds the information to a laptop running openALPR which is able to process and record license plate data.
The build is pretty impressive, but [Saulius] notes that it isn’t the ideal setup for processing a large amount of information at once because of the demands made on the laptop. With this equipment, monitoring a parking lot would be a more feasible situation. Still, with even this level of capability available to anyone with the cash, imagine what someone could do with the resources of a national government. They might even have long distance laser night vision!
Bela is a cape for the BeagleBone Black that’s aimed at artists and musicians. Actually, the cape is much less than half of the story — the rest is in some clever software and a real-time Linux distribution. But we’re getting ahead of ourselves. Let’s talk hardware first.
First off, the cape has stereo input and output as well as two amplified speaker outs. It can do all of your audio stuff. It also has two banks of analogue inputs and outputs, each capable of handling eight signals. In our opinion, this is where the Bela is cool. In particular, the analog outputs are not Arduino-style “analog outputs” where it’s actually a digital output on which you can do PWM to fake an analog signal. These are eight 16-bit outputs from an AD5668 DAC which means that you can use the voltages directly, without filtering.
Then there’s the real trick. All of these input and output peripherals are hooked up to the BeagleBone’s Programmable Realtime Units (PRUs) — a hardware subsystem that’s independent of the CPU but can work along with it. The PRU is interfaced with the real-time Linux core to give you sub-microsecond response in your application. This is a big deal because a lot of other audio-processing systems have latencies that get into the tens of milliseconds or worse, where it starts to be perceptible as a slight lag by humans.
The downside of this custom analog and audio I/O is that it’s not yet supported by kernel drivers, and you’ll need to use their “Heavy Audio Tools” which compiles Pd programs into C code, which can then drive the PRUs. Of course, you can write directly for the PRUs yourself as well. If you just want to play MP3s, get something you have a bunch of simpler, better options. If you need to do responsive real-time audio installations, Bela is a way to go.
The project is open-source, but we had to do a bunch of digging to find what we were looking for. The hardware is in zip files here, and you’ll find the software here. The demo projects look/sound pretty cool and their Kickstarter is long over-funded, so we’re interested to see what folks make with these.