Burn Music On To Anything!

If at first you don’t succeed, try, try, and try again. This is especially true when your efforts involve a salvaged record player, a laser cutter, and He-Man. Taking that advice to heart, maniac maker extraordinaire [William Osman] managed to literally burn music onto a CD.

Considering the viability of laser-cut records is dubious — especially when jerry-built — it took a couple frustrating tests to finally see results, all the while risking his laser’s lens. Eventually, [Osman]’s perseverance paid off. The lens is loosely held by a piece of delrin, which is itself touching a speaker blaring music. The vibrations of the speaker cause the lens to oscillate the focal point of the laser into a wavelength that is able to be played on a record player. You don’t get much of the high-end on the audio and the static almost drowns out the music, but it is most definitely a really shoddy record of a song!

Vinyl aficionados are certainly pulling their hair out at this point. For the rest of us, if you read [Jenny’s] primer on record players you’ll recognize that a preamplifier (the ‘phono’ input on your amp) is what’s missing from this setup and would surely yield more audible results.

Continue reading “Burn Music On To Anything!”

[Homo Faciens] Builds A Winchbot

The trademark hacker style of Hessian YouTuber [Homo Faciens] is doing a lot with a little. Given a package of parts from a sponsor, he could have made something “normal” like a fancy robot arm. Instead, he decided to make a winchbot. (Video embedded below.)

What’s a winchbot? It’s a big frame that supports three relatively heavy motors that pull steerable gripping arms around. It’s a little bit like the hanging Hektor / wallbot / plotterbot and a little bit like a delta-style 3D printer. Although [Homo Faciens]’s build doesn’t showcase it, a winchbot is also a great way to lift heavy things because the parts that need to be beefy — the frame and the lifting motors — don’t have to move. We love the gimballed square rod that works in concert with the winches!

With five extra servos on hand, and the computing power of a Raspberry Pi, [Homo Faciens] couldn’t just stop with lifting a claw. Instead, the gripping-arms part of the bot is mounted with four degrees of freedom and is powered with software that makes it stay parallel with the table and rotate around the gripper to make programming easier. Watch it in action in the video to see what we mean.

The biggest unsolved problem that we can see is the jerkiness that it displays in moving things around. That doesn’t stop it from building up a tower and a domino knock-down. We suspect that there’s some combination of firmware and hardware tweaking that can solve this problem, or it could just be run slowly so that the wobbles damp themselves out. We’re also quite confident that [Homo Faciens] will come up with an elegant and cheap solution. Have you seen his CNC machine?

Continue reading “[Homo Faciens] Builds A Winchbot”

Putting Pi In Infrared Doohickies

The Raspberry Pi Zero W is a tiny, cheap Linux computer with WiFi. It’s perfect for Internet of Things things such as controlling ceiling fans, window blinds, LED strips, and judgmental toasters. This leads to an obvious question: how do you attach your ceiling fan and LED strips to a Pi Zero? A lot of these things already have infrared remotes, so why not build an infrared hat for the Pi? That’s what [Leon] did, and it’s Open Hardware with documentation.

[Leon]’s Anavi Infrared Pi Hat does exactly what you think it should do. There’s an IR receiver, two IR LEDs, and UART pins for debugging. That’s all you need to control infrared doohickies over the Internet, and [Leon] wrapped it up in a nice neat package that’s the same size as a Raspberry Pi Zero. Add on some documentation and you have something we rarely see: a project meant to be used by other people.

This focus on allowing people to actually use what [Leon] created can lead to only one cynical conclusion: he’s probably selling these things somewhere. The cynic is never surprised. [Leon] has a crowdfunding campaign going, that’s over 400% funded with a month to go. That’s okay, though: all the design files are available so if you want to build your own without supporting people who build useful devices, have at it.

Save ESP8266 RAM With PROGMEM

When [sticilface] started using the Arduino IDE to program an ESP8266, he found he was running out of RAM quickly. The culprit? Strings. That’s not surprising. Strings can be long and many strings like prompts and the like don’t ever change. There is a way to tell the compiler you’d like to store data that won’t change in program storage instead of RAM. They still eat up memory, of course, but you have a lot more program storage than you do RAM on a typical device. He posted his results on a Gist.

On the face of it, it is simple enough to define a memory allocation with the PROGMEM keyword. There’s also macros that make things easier and a host of functions for dealing with strings in program space (basically, the standard C library calls with a _P suffix).

Continue reading “Save ESP8266 RAM With PROGMEM”

Closer Look At Everyone’s Favorite Blinky

Admit it, you love looking at silicon die shots, especially when you have help walking through the functionality of all the different sections. This one’s really easy for a couple of reasons. [electronupdate] pointed his microscope at the die on a WS2812.

The WS2812 is an addressible RGB LED that is often called a Neopixel (a brand name assigned to it by Adafruit). The part is packaged in a 5×5 mm housing with a clear window on the front. This lets you easily see the diodes as they are illuminated, but also makes it easy to get a look at the die for the logic circuit controlling the part.

This die is responsible for reading data as it is shifted in, shifting it out to the next LED in the chain, and setting each of the three diodes accordingly. The funcitonality is simple which makes it a lot easier to figure out what each part of the die contributes to the effort. The diode drivers are a dead giveaway because a bonding wire connected to part of their footprint. It’s quite interesting to hear that the fourth footprint was likely used in testing — sound off in the comments if you can speculate on what those tests included.

We had no trouble spotting logic circuitry. This exploration doesn’t drill down to the gate level like a lot of [Ken Shirriff’s] silicon reverse engineering but the process that [electronupdate] uses is equally fun. He grabs a tiny solar cell and scopes it while the diodes are running to pick up on the PWM pattern used to fade each LED. That’s a neat little trick to keep in your back pocket for use in confirming your theories about clock rate and implementation when reverse engineering someone else’s work.

Continue reading “Closer Look At Everyone’s Favorite Blinky”

Supersonic Speed Measurement With A Sound Card

You might think that if you have a need to measure the speed of a projectile that is too fast for your high-speed camera, you would have to invest in some significantly expensive equipment.

That was the problem facing [Nick Moore], and the solution he arrived at is extremely elegant in its simplicity. He’s arranged a pair of foil tapes in the path of the projectile, as it passes through them they break, and he measures the time between those breaks. The clever bit though lies not in the tapes, but in how he measures the timing. Instead of relying on a lab stuffed with equipment, he’s using his computer sound card. The outputs send a tone through each tape to the inputs, and using Audacity he can capture both tones and measure the time between the end of each one on left and right channels.

In the video below the break he demonstrates measuring the speed of a supersonic particle at 496.5 metres per second, which for such relatively simple equipment is rather an achievement. He could certainly improve his resolution by increasing the sampling frequency, but we are guessing that the choice of 48 kHz owes much to the quality of his sound card. Still, to achieve this with such a relatively basic piece of equipment is a neat achievement.

Continue reading “Supersonic Speed Measurement With A Sound Card”

Arduino Into NAND Reader

[James Tate] is starting up a project to make a “Super Reverse-Engineering Tool”. First on his list? A simple NAND flash reader, for exactly the same reason that Willie Sutton robbed banks: because that’s where the binaries are.

As it stands, [James]’s first version of this tool is probably not what you want to use if you’re dumping a lot of NAND flash modules. His Arduino code reads the NAND using the notoriously slow digital_read() and digital_write() commands and then dumps it over the serial port at 115,200 baud. We’re not sure which is the binding constraint, but neither of these methods are built for speed.

Instead, the code is built for hackability. It’s pretty modular, and if you’ve got a NAND flash that needs other low-level bit twiddling to give up its data, you should be able to get something up and working quickly, start it running, and then go have a coffee for a few days. When you come back, the data will be dumped and you will have only invested a few minutes of human time in the project.

With TSOP breakout boards selling for cheap, all that prevents you from reading out the sweet memory contents of a random device is a few bucks and some patience. If you haven’t ever done so, pull something out of your junk bin and give it a shot! If you’re feeling DIY, or need to read a flash in place, check out this crazy solder-on hack. Or if you can spring for an FTDI FT2233H breakout board, you can read a NAND flash fast using essentially the same techniques as those presented here.