Tiny ATtiny85 Game Console

[Ilya Titov] has made a game console. Not just any game console, but an extremely small ATtiny85-based console suitable for putting on a key ring and assembled into a very professional product with PCB and 3D printed case. This is a project that has been on the go since 2014, but the most recent update is a new version designed for tighter and more easy assembly.

All construction is through-hole rather than SMD, and aside from the ATtiny85 the console uses an OLED screen, piezo buzzer, tactile switches and a handful of passive components. Power comes from a single CR2032 coin cell which sits under the screen. Best of all the PCB design is available as a PDF and the 3D printed case can be found on Thingiverse.

There are two games for the console, as well as the Breakout clone whose code is in the 2014 piece linked above he’s written UFO Escape, an obstacle-avoiding side-scroller. You’ll have to burn both game and 8MHz internal clock bootloader to the ATtiny85 yourself. There are no cartridges with this console, though if the processor sits in a DIP socket the game can be changed over simply by swapping processors programmed with the appropriate game.

He’s produced a full assembly video with some UFO Escape gameplay thrown in, shown here below the break.

Continue reading “Tiny ATtiny85 Game Console”

EP Composes a New Chiptune Each Time

[Captain Credible] is a chiptune music artist. He wanted to release an EP, but a regular old em-pee-three was too lame for him, so he made a tiny board with a coin cell, an ATtiny85, and a 3.5mm socket on it.

Rather than just writing some code to generate the tones for a pre-composed song, his “Dead Cats” EP generates the music itself. Using the arduino-tiny library, which adds the tone() function to the ATtiny, he has the chip pick its own time signature, key, subdivisions, and tempo. The melody and drum beat is randomly generated into an array. In addition to that, there are some code “one-liners” which insert unique sounds. After that the code just loops through the music.

If you don’t like the song, simply unplug the audio cable and plug it back in. The 3.5mm jack he chose has a built-in micro-switch, so the board is only powered up if someone is listening. If you’d like to see the circuit diagram, purchase the EP, or take a look at the code, all of that is available on his site.

ATtiny Watch is Tiny

[陳亮] (Chen Liang) is in the middle of building the ultimate ring watch. This thing is way cooler than the cheap stretchy one I had in the early 1990s–it’s digital, see-through, and it probably won’t turn [陳]’s finger green.

watch-gutsThe current iteration is complete and builds upon his previous Arduino-driven watch building experiences. It runs on an ATtiny85 and displays the time, temperature, and battery status on an OLED. While this is a fairly a simple build on paper, it’s the Lilliputian implementation that makes it fantastic.

[陳] had to of course account for building along a continuous curve, which means that the modules of the watch must be on separate boards. They sit between the screw bosses of the horseshoe-shaped 3D-printed watch body, connected together with magnet wire. [陳] even rolled his own coin cell battery terminals by cutting and doubling over the thin metal bus from a length of bare DuPont connector.

If you’re into open source watches but prefer to wear them on your wrist, check out this PIC32 smart watch or the Microduino-based OSWatch.

A Power Switch for the Chromecast

Chromecasts are fantastic little products, they’re basically little HDMI sticks you can plug into any monitor or TV, and then stream content using your phone or computer as the controller. They are powered by a micro USB port in the back, and if you’re lucky, your TV has a port you can suck the juice off. But what if you want to turn it off while you use a different input on your TV so that your monitor will auto-sleep? You might have to build a power switch.

Now in all honesty, the Chromecast gets hot but the amount of power it draws when not in use is still pretty negligible compared to the draw of your TV. Every watt counts, and [Ilias] took this as an opportunity to refine his skills and combine a system using an Arduino, Bluetooth, and Android to create a robust power switch solution for the Chromecast.

The setup is rather simple. An HC-05 Bluetooth module is connected to an Attiny85, with some transistors to control a 5V power output. The Arduino takes care of a bluetooth connection and uses a serial input to control the transistor output. Finally, this is all controlled by a Tasker plugin on the Android phone, which sends serial messages via Bluetooth.

All the information you’ll need to make one yourself is available at [Ilias’] GitHub repository. For more information on the Chromecast, why not check out our review from almost three years ago — it’s getting old!

Father and Son Fix a Scale

It’s awesome when you can tag-team with your dad to fix stuff around the house. [Ilias Giechaskiel], with help from his dad, did a complete refurbishing of a broken bathroom weighing scale, but not before trying to fix it first. The voltage regulator looked bust. Powering the rest of the circuit directly didn’t seem to work, and none of the passives looked suspect. Most of the chips had their markings scratched off and the COB obviously couldn’t be replaced anyway.

Instead of reverse engineering the LCD display, they decided to retain just the sensor and the switches, and replace everything else. The ATtiny85 seemed to have enough IO pins to do the job. But the strain-gauge based load cell, connected in a bridge configuration, did not have a signal span large enough to be measured using the 10 bit ADC on the ATtiny. Instead, they decided to use the HX711 (PDF) – a 24 bit ADC with selectable gain, specifically meant for use in weighing scales. Using a library written for the HX711 allowed interfacing it to the Arduino easy. The display was built using a 4 digit 7 segment display driven by the MAX7219. A slightly modified LEDcontrol library made it easy to hook up the display to the ATtiny. The circuit was assembled on a prototyping board so that it could be plugged in to another Arduino for programming.

Since they were running out of pins, they had to pull out a trick to use a single pin from the ATtiny to act as clock for the display driver and the ADC chip. Implementing the power-on and auto-off feature needed another interesting analog circuit block. Dad did the assembly of the circuit on a prototype board. In hindsight, the lack of IO pins on the ATtiny limited the features they could implement, so the duo are planning to put in an Arduino Nano to improve the hack. If you’re ever stuck with a broken scale, he’s made the schematic (PNG) and code available for use.

The Smallest MIDI Synthesizer?

Dang. [Mixtela] has just managed a seriously cool hack: running an entire MIDI synthesizer on an ATTiny85 to create what he claims is the worlds smallest MIDI synthesizer. That’s it on the left, next to a standard MIDI cable plug. microMidi3-guts-thumbThe whole thing is so small it fits inside a MIDI plug and can run off the power supplied by the MIDI output, driving a small pizeo buzzer. Considering that the ATTiny85 has just 8Kb of memory and 512 bytes of RAM, this is no small feat (get it?). To create the sound, [Mixtela] simply drives the buzzer with PWMed square waves, creating the glorious early chiptunes sound that every retro gamer will recognize.

He even decided to implement some MIDI commands beyond just playing notes, including pitch bending, and is considering ways to add polyphony to his small miracle. Sure, it isn’t going to win any awards for sound quality, and without optoisolators it doesn’t really fit the MIDI spec. But it works, and remember that MIDI synthesizers used to be big, expensive devices that required a degree in sound engineering to program. Now, thanks to hackers like [Mixtela], you can build your own from parts that cost only a couple of dollars.

Continue reading “The Smallest MIDI Synthesizer?”

ATtiny Does 170×240 VGA With 8 Colors

The Arduino is a popular microcontroller platform for getting stuff done quickly: it’s widely available, there’s a wealth of online resources, and it’s a ready-to-use prototyping platform. On the opposite end of the spectrum, if you want to enjoy programming every bit of the microcontroller’s flash ROM, you can start with an arbitrarily tight resource constraint and see how far you can push it. [lucas][Radical Brad]’s demo that can output VGA and stereo audio on an eight-pin DIP microcontroller is a little bit more amazing than just blinking an LED.

[lucas][RB] is using an ATtiny85, the larger of the ATtiny series of microcontrollers. After connecting the required clock signal to the microcontroller to get the 25.175 Mhz signal required by VGA, he was left with only four pins to handle the four-colors and stereo audio. This is accomplished essentially by sending audio out at a time when the VGA monitor wouldn’t be expecting a signal (and [lucas][Rad Brad] does a great job explaining this process on his project page). He programmed the video core in assembly which helps to optimize the program, and only used passive components aside from the clock and the microcontroller.

Be sure to check out the video after the break to see how a processor with only 512 bytes of RAM can output an image that would require over 40 KB. It’s a true testament to how far you can push these processors if you’re determined. We’ve also seen these chips do over-the-air NTSC, bluetooth, and even Ethernet.

Continue reading “ATtiny Does 170×240 VGA With 8 Colors”