The BBC Micro:bit, while not quite as popular in our community as other microcontroller development boards, has a few quirks that can make it a much more interesting piece of hardware to build a project around than an Arduino. [Turi] took note of these unique features and decided that it was the perfect platform to build a synthesizer on.
The Micro:bit includes two important elements that make this project work: the LED matrix and a gyro sensor. [Turi] built a 5×5 button matrix for inputs and paired each to one of the diodes, which eliminates the problem of false inputs. The gyro sensor is used for detuning, which varies the pitch of any generated sound by a set amount according to the orientation of the device. It also includes a passive low-pass filter to make the sound more pleasant to the ear, especially for younger players of the machine. He’s released the source code on his GitHub page for anyone interested in recreating it.
While this was a one-off project for [Turi], he notes that using MicroPython to program it instead of C led to a lot of unnecessary complications, and the greater control allowed by C would enable some extra features with less hassle. Still, it’s a fun project that really showcases the unique features of this board, much like this tiny Sumo robot we covered over the summer.
For most hackers and makers, building a clock is a rite of passage. Few, though, will be as unusual and engaging as this design by [TerraG2].
By combining addressable LEDs, light pipes and 7-segment displays, [TerraG2] has built a timepiece that looks great and will surely be a great conversation starter as well. It’s packed full of features such as automatic brightness control, an accelerometer controlled user interface, and WiFi to make sure it’s always accurate.
The decision to leave the light pipes visible behind the main display really makes the project stand out from other clock builds, and the methods [TerraG2] has used to achieve this look will no doubt be transferable to a host of other projects.
The LEDs are courtesy of a standard 8×8 RGB matrix, with a custom 3D-printed shroud to hold the light pipes in place and a clever connector at the other end to illuminate the segments. With two LEDs per segment, seven segments per digit, and four digits, there’s even room for some extra features down the line if you can think of a use for those eight spare LEDs.
The brain of the project is an ESP8266 D1 with an MPU6050 inertial measurement unit (IMU) to detect when it’s flipped over to change the color scheme.
As you probably know, we love our clocks here at Hackaday. Odd display technologies are always interesting to see, as are unusual encoding techniques such as binary, ternary or higher-radix number systems. Still, clocks are typically meant to be human-readable, even if their encoding might be a little eccentric.
[Kitchi] however built an LED-based clock that is not human-readable, at least not without quite a bit of training. This is because it displays the time by generating a QR code, which only becomes readable to most humans through the use of a smartphone app. Of course, this negates the need for a clock since your smartphone will already have one anyway — but whoever said a clock needs to be useful?
To be fair, the display could conceivably be read by a determined human, since the QR format used is the tiny Micro QR M2 version that measures only 13×13 pixels. It’s capable of storing ten decimal digits, just enough to hold the date and time in mmddhhmmss format. The fixed part of the QR code is made of paper, while the variable part is formed through a grid of 90 white LEDs. The LEDs are mounted on a piece of prototype board along with a PIC 16F1504 microcontroller, two TM1637 LED drivers and a DS1307 real-time clock with battery backup.
If decoding QR codes is not your thing, or you simply haven’t got your smartphone on you, then the QR clock can also be set to a more human-readable format by adding a jumper. The time will then scroll across the LED screen in ordinary decimal format.
The video in the link is in Japanese, with no automatic translation available, but the build process is clearly shown and should be understandable even if you can’t follow the cheerful robotic narrator. We’ve seen a couple of QR-code based clocks before, some with an LCD screen and some with retro styling, but all of those use the larger standard QR code which definitely no human can decode visually. Or can you? Let us know in the comments!
Most makerspaces and hackerspaces have one night per week or month where the ‘space is open to the public in order to entice new people into joining up. Whereas most members just write their name in Sharpie on a piece of masking tape, [Madison] wanted to do something extra. And what better way to get people interested in your ‘space than by wearing something useful that came out of it?
The badge runs on an ATtiny45 and uses three 8×8 ultra-bright LED matrices for scrolling [Madison]’s name. It’s powered by a tiny LiPo battery that is boosted to 5 V. This build really shows off a number of skills, especially design. We love the look of this badge, from the pink silkscreen to the the typography. One of the hardest things about design is finding fonts that work well together, and we think [Madison] chose wisely. Be sure to check it out in action after the break.
[Fearless Night]’s slick dual hourglass doesn’t just simulate sand with LEDs, it also emulates the effects of gravity on those simulated particles and offers a few different mode options.
The unit uses an Arduino (with ATMEGA328P) and an MPU-6050 accelerometer breakout board to sense orientation and movement, and the rest is just a matter of software. Both the Arduino and the MPU-6050 board are readily available and not particularly expensive, and the LED matrix displays are just 8×8 arrays of red/green LEDs, each driven by a HT16K33 LED controller IC.
The enclosure and stand are both 3D-printed, and a PCB not only mounts the components but also serves as a top cover, with the silkscreen layer of the PCB making for some handy labels. It’s a clever way to make the PCB pull double-duty, which is a technique [Fearless Night] also used on their earlier optical theremin design.
Those looking to make one of their own will find all the design files and source code handily available from the project page. It might not be able to tell time in the classical sense, but seeing the hourglass displays react to the device’s orientation is a really neat effect.
Put together on a piece of perfboard, the handwired circuit also includes an Adafruit PowerBoost 500 Charger, a 3.7 V 2500 mAh LiPo battery, a IS31FL3731 Charlieplexed PWM LED driver, and a piezo buzzer. The top of the rotary encoder has been capped off with a sold metal knob, which combined with the enclosure made of stacked laser cut 3 mm acrylic sheets, really gives the device a very sleek and classy look.
While the hardware is quite nice, it’s the software that really pulls this whole project together. A game developer by trade, [Martin] went all in on the timer’s GPLv3 licensed firmware. From using the toneAC library to play melodies at the end of the countdown, to the custom fonts and the code that pauses the timer while the user is spinning the knob, there’s plenty of little touches that should make the timer a joy to use. We’ve seen some unique kitchen timers over the years, but the attention to detail put into this build really raises the bar.
[Martin] has provided everything you need to create your own version of his timer, including the SVG file for the laser cut case. While not strictly required, coming up with a custom PCB for this project would be a nice touch, should you want to put your own spin on it.
You would think the hard part about creating a spectrum analyzer using a pint-sized ATTiny85 would be the software. But for [tuenhidiy], we suspect the hard part was fabricating an array of 320 LEDs that the little processor can drive. The design does work though, as you can see in the video below.
The key is to use a TPIC6B595N which is an 8-bit shift register made to drive non-logic outputs. With all outputs on, the driving FETs can supply 150 mA per channel and the device can handle 500 mA per channel peak. At room temperature, the part can go over 1W of total power dissipation, although that goes down with temperature, of course. If you need higher power, there’s a DW-variant of the part that can handle a few hundred milliwatts more.