Skip to content

**** ****

Technological Surrealism / Alec Nerds Out

2.7-5.5VDC “FUCK”


I’ve made many projects with Arduino-like boards — the Dymaxion Auto-Matic Buckminster Fuller (a Duemilanove), Drum Lights (a handful of Trinkets) and others — and since the beginning have considered them a really revolutionary thing. Arduino is a superhero of the Open Hardware movement, the gateway drug for many aspiring electronics hobbyists, and a necessary forefather of all sorts of things we now take for granted.

At the heart of the Arduino, and sharing in my admiration for the platform, is the Atmel microcontroller. I have long intended to work with an Atmel chip directly, but have never had the need — Arduinos have just been too convenient and inexpensive.

However, the little Atmels like the ATTiny85 are especially fascinating; they are such huge, capable brains in such tiny, capable and unobtrusive bodies. If the best interface is no interface, then this chip is the closest realization of that ideal for a guy who knows primarily software but wants to tinker with hardware. Ground and power into pins 4 and 8, respectively, and pin 1 reserved for resetting the chip — but the rest is a playground for analog in, PWM out, GPIO, SPI, whatever. $3.00 — the price of a not-particularly-special coffee — for your own little piece of science fiction.

So after all these lofty words, here’s another: “Fuck.”

The concept: Electronic beepers are ubiquitous — in microwaves, cars, smoke alarms, etc. You can buy them for a few dollars. But since beeping also invokes censorship, I wanted to make an “un-censor”, that allows the electronic device to articulate itself properly.

This turned out to be a satisfyingly minimalist project.

Parts:

  • ATiny85 microcontroller
  • Small speaker
  • Electronic buzzer (for plastic chassis only)

In order to program the ATTiny85, I also used an Arduino board following these steps.

See if you can follow this labyrinth of a circuit:

Uncensor schematic

Source code: https://github.com/asmecher/uncensor
…based (very directly) on this code: http://www.technoblogy.com/show?QBB

To gut the electronic beeper, I had to run a razor blade around the underside to separate the base, which had been glued in. This wasn’t tricky as the plastic is flexible and thin.

I used a sound sample courtesy of Google Translate’s speech synthesizer, after experimenting with my own voice and the Festival speech synthesizer. I also experimented with randomly extending the length of the expletive, but found the result less satisfying.

Total cost to make one of these: approx. $7.
Capacity: a little under a second of speech.
Sound quality: Passably good.
Volume: Not loud but surprisingly good considering there’s no driver circuitry at all.

If you’ve had a little bit of experience with Arduinos and want to try moving to the bare Atmel chip, you can’t go wrong with the ATTiny85. It’s just shy of magic. There’s a little bit of poking around getting the Arduino to program the ATTiny85, but overall it was simple enough and I will definitely be doing more projects using this approach.


Categorized as: Uncategorized


16 Comments

  1. Enrico says:

    Hi i cannot upload the code… I get a lot of errors…

  2. CRImier says:

    This is hilarious. I need to build one for myself!

  3. […] Smecher] has taken this to heart, building a simple buzzer mechanism driven by an ATTiny 85 that swears repeatedly when you connect it. It is a rather simple project (or, as [Alec] himself says, it is “a satisfyingly minimalist […]

  4. Berrie says:

    It works if you clock the Attiny85 at 8MHz. It will not work at 16MHz

    • admin says:

      That’s correct, Berrie — I configured mine to run using an internal oscillator, which is only available at 6.4 or 8MHz, to reduce the parts count.

  5. killahxxx says:

    I’m guessing your own voice didn’t do as well because of the higher frequency content?

    • admin says:

      It sounded OK with my voice, I just preferred the “mechanical female voice repeating ‘fuck’ endlessly” element.

  6. fid says:

    I bought a few ATTiny85s to make this project. Speakers ripped from a “dead” laptop. Thanks.

  7. Taylor Hokanson says:

    I just tried this out with an Attiny85 and ran into problems. My speaker just buzzes very quietly; do you remember what the rating was of the speaker you used? Great simple project BTW.

    • admin says:

      Hi Taylor! I used a small (1-2″) 8 ohm speaker. You’re not supposed to be driving speakers off these pins directly so I’m already way out of spec 🙂
      An oscilloscope would probably help debug. Also check the clock frequency when burning the chip’s fuses.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.