Stomping On Microcontrollers: Arduino Mega Guitar Effects Pedal

Effects pedals: for some an object of overwhelming addiction, but for many, an opportunity to hack. Anyone who plays guitar (or buys presents for someone who does) knows of the infinite choice of pedals available. There are so many pedals because nailing the tone you hear in your head is an addictive quest, an itch that must be scratched. Rising to meet this challenge are a generation of programmable pedals that can tweak effects in clever ways.

With this in mind, [ElectroSmash] are back at it with another open source offering: the pedalSHIELD MEGA. Aimed at musicians and hackers who want to learn more about audio, DSP and programming, this is an open-hardware/open-software shield for the Arduino MEGA which transforms it into an effects pedal.

The hardware consists of an analog input stage which amplifies and filters the incoming signal before passing it to the Arduino, as well as an output stage which does the DAC-ing from the Arduino’s PWM outputs, and some more filtering/amplifying. Two 8-bit PWM outputs are used simultaneously to make pseudo 16-bit resolution — a technique you can read more about in their handy forum guide.

The list of effects currently implemented covers all the basics you’d expect, and provides a good starting point for writing custom effects. Perhaps a library for some of the commonly used config/operations would be useful? Naturally, there are some computational constraints when using an Arduino for DSP, though it’s up to you whether this is a frustrating fact, or an opportunity to write some nicely optimised code.

[ElectroSmash] don’t just do pedals either: here’s their open source guitar amp.

Continue reading “Stomping On Microcontrollers: Arduino Mega Guitar Effects Pedal”

We Couldn’t Resist This CNC Batik Bot

Batik is an ancient form of dyeing textiles in which hot wax is applied to a piece of cloth in some design. When the cloth is submerged in a dye bath, the parts covered with wax resist the pigment. After dyeing, the wax is either boiled or scraped away to reveal the design.

[Eugenia Morpurgo] has created a portable, open-source batik bot that rolls along the floor and draws with wax, CNC-style, on a potentially infinite expanse of cloth. The hardware should be familiar: an Arduino Mega and a RAMPS 1.4 board driving NEMA 17 steppers up and down extruded aluminium.

Traditionally, batik wax is applied with a canting, a pen-like object that holds a small amount of hot wax and distributes it through a small opening. The batik bot’s pen combines parts from an electric canting tool with the thermistor, heater block, and heater cartridge from an E3D V6 hot end. [Eugenia] built the Z-axis from scrap and re-used the mechanical endstops from an old plotter. Check out the GitHub for step-by-step instructions with a ton of clear pictures and the project’s site for even more pictures and information. Oh, and don’t resist the chance to see it in action after the break.

We love a good art bot around here, even if the work disappears with the tide.

Continue reading “We Couldn’t Resist This CNC Batik Bot”

Waking Up To Classic Soundgarden Screaming

In a project that was really only slighly less creepy before the singer’s untimely death in 2017, this alarm clock built by [Rafael Mizrahi] awakens its user to a random selection of Chris Cornell’s signature screams. Not content to be limited to just the audio component of the experience, he contained all of the hardware within a styrofoam head complete with a printed out facsimile of the singer’s face.

An Arduino Uno coupled with a seven segment LED display provides the clock itself, which is located in the base. There’s no RTC module, so the Arduino is doing its best to keep time by counting milliseconds. This means the clock will drift around quite a bit, but given that there’s also no provision for setting the time or changing when the alarm goes off short of editing the source code, it seems like accurate timekeeping was not hugely important for this project.

Audio is provided by an Adafruit VS1053, which contains a microSD card full of MP3 samples of Cornell’s singing. This is connected to an X-Mini portable capsule speaker which has been installed in a hollowed out section of the foam.

Unconventional alarm clocks are something of a staple here at Hackaday. From ones which physically assault you to mimicking sunrise with OLEDs, we thought we had seen it all. We were wrong.

Continue reading “Waking Up To Classic Soundgarden Screaming”

Double The Resolution, From An Arduino ADC

Analog-to-digital converters, or ADCs, are somewhat monolithic devices for most users, a black box that you ask nicely for the value on its input, and receive a number in return. For most readers, they will be built into whatever microcontroller is their platform of choice, and their resolution will be immutable, set by whatever circuitry is included upon the die. There are a few tricks that can be employed to get a bit more from a stock ADC though, and [Neris] has taken a look at a couple of them.

The first circuit doubles the resolution of an ADC, in this case, that of the Atmel chip in an Arduino, by converting its output from an integer to a signed integer. It performs this task with a precision rectifier, rectifying around a zero-crossing point half-way through the range of the analog value to be read and supplying a sign bit to the Arduino. The Arduino measures the rectified analog value to an integer, and applies the appropriate sign from the supplied bit value.

The second circuit takes a variation on the same technique but with two ADCs instead of one. A pair of PIC chips are used with their voltage references stacked one above the other, by taking both readings in combination a result with double the resolution can be derived.

You might ask why bother with these techniques. After all, there are plenty of higher-resolution ADCs on the market. But they’re useful techniques to know, should you ever need to extract the proverbial quart from a pint pot.

If ADCs are a mystery to you, you’re in luck. [Bil Herd] gave us a comprehensive introduction to the subject.

Simple Home-built Projection Clock Projects Time

There are plenty of cheap projection clocks available, but as [Thomas Pototschnig] points out in this project, where’s the fun in just buying something? He set out to build a cheap projection clock using a small LCD screen, a cheap LED backlight, and a cheap lens. Cheap is the order of the day here, and [Thomas] succeeded admirably, creating a design that can be made with a couple of cheap PCBs, a 3D printer and the other parts mentioned above. He does a nice job of laying out his thinking in this design, showing how he calculated the projection path and made other decisions. His project has room to grow as well: it runs from an Arduino compatible STM32 that could handle many things other than showing the time if you were inclined to expand the project further.

Continue reading “Simple Home-built Projection Clock Projects Time”

A Mobile Terminal For Guerrilla Communications

We use the Internet to do everything from filing our taxes to finding good pizza, but most critically it fulfills nearly all of our communication needs. Unfortunately, this reliance can be exploited by those pulling the strings; if your government is trying to do something shady, the first step is likely to be effecting how you can communicate with the outside world. The Internet is heavily censored and monitored in China, and in North Korea the entire country is effectively running on an intranet that’s cutoff from the wider Internet. The need for decentralized information services and communication is very real.

While it might not solve all the world’s communication problems, [::vtol::] writes in to tell us about a very interesting communication device he’s been working on that he calls “Hot Ninja”. Operating on the principle that users might be searching for accessible Wi-Fi networks in a situation where the Internet has been taken down, Hot Ninja allows the user to send simple messages through Wi-Fi SSIDs.

We’ve all seen creatively named Wi-Fi networks before, and the idea here is very much the same. Hot Ninja creates a Wi-Fi network with the user’s message as the SSID in hopes that somebody on a mobile device will see it. The SSID alone could be enough depending on the situation, but Hot Ninja is also able to serve up a basic web page to devices which actually connect. In the video after the break, [::vtol::] even demonstrates some rudimentary BBS-style functionality by presenting the client devices with a text field, the contents of which are saved to a log file.

In terms of hardware, Hot Ninja is made up of an Arduino Mega coupled to three ESP8266 boards, and a battery to keep it all running for up to eight hours so you can subvert a dictatorship while on the move. The user interface is provided by a small OLED screen and a keyboard made entirely of through-hole tactile switches, further reinforcing the trope that touch-typing will be a must have skill in the dystopian future. It might not be the most ergonomic device we’ve ever seen, but the fact it looks like something out of a Neal Stephenson novel more than makes up for it in our book.

This is not the first time we’ve seen Wi-Fi SSIDs used as a method of communication, thanks largely to how easy the ESP8266 makes it. For his part, [::vtol::] has previously experimented with using them to culturally enrich the masses.

Continue reading “A Mobile Terminal For Guerrilla Communications”

Playing Jedi Mind-Tricks On Your TV

Gesture-enabled controls mean you get to live out your fantasy of wielding force powers. It does, however, take a bit of hacking to make that possible. Directly from the team at [circuito.io] comes a hand gesture controller for Jedi mind-trick manipulation of your devices!

The star of the show here is the APDS-9960 RGB and gesture sensor, with an Arduino Pro Mini 328 doing the thinking and an IR transmitter LED putting that to good use. The Arduino Sketch is a chimera of two code examples for IR LEDs and the gesture sensor — courtesy of the always estimable Ken Shirriff, and SparkFun respectively.

Of course, you can have the output trigger different devices, but since this particular build is meant to control a TV the team had to use a separate Arduino and IR receiver to discover the codes for the commands they wanted  to use. Once they were added to the Sketch, moving your hand above the sensor in X, Y or Z-axes executes the command. Voila! — Jedi powers.

Continue reading “Playing Jedi Mind-Tricks On Your TV”