Electronic Mural: Charlieplexing with Paper Circuits

As I’ve mentioned, I’m working towards an electronic mural using Chibitronic circuit stickers and a Circuit Scribe pen. Today I prototyped the entire circuit on paper. The fun part was using the microcontroller circuit sticker–wicked easy. I used an Arduino UNO as a programmer (tutorial for setting up the board) and Arduino software to write my code. It took maybe 10 minutes to get up and running from zilch. Here are the connections:

ATTinyArduino
Pin 1 (MISO) — Pin 12 (MISO)
Pin 2 (VCC) — 5V
Pin 3 (SCK) — Pin 13 (SCK)
Pin 4 (MOSI) — Pin 11 (MOSI)
Pin 5 (RESET) — Pin 10 (RESET)
Pin 6 (GND) — GND

Arduino as Programmer
Arduino as Programmer

The microcontroller sticker (ATTiny85) has 5 pins — I used one as a sound sensor, three for LEDs (I used Charlieplexing to control 6 LEDs with 3 pins) and one as a power LED, though I should have put it straight into the power line. For the final version I’ll probably use four pins for up to 12 LEDs, but I didn’t want to waste too many stickers on a prototype.

Charlieplexing on Paper
Charlieplexing on Paper

And here it is responding to the sound of my voice:

Aaaaand here’s my code:


// LEDs are on pins 1, 2, and 3

int sig = A2;

void setup() {
   pinMode(0, OUTPUT);
   digitalWrite(0, HIGH);
   pinMode(sig, INPUT);
}

void lightled(int hi, int lo, int off) {
   pinMode(hi, OUTPUT);
   digitalWrite(hi, HIGH);
   pinMode(lo, OUTPUT);
   digitalWrite(lo, LOW);
   pinMode(off, INPUT);
}

void lightoff() {
   pinMode(1, OUTPUT);
   digitalWrite(1, LOW);
   pinMode(2, OUTPUT);
   digitalWrite(2, LOW);
   pinMode(3, OUTPUT);
   digitalWrite( 3, LOW);
}

void twinkle() {
   lightled(3, 2, 1);
   delay(1000);
   lightled(2, 3, 1);
   delay(1000);
   lightled(1, 2, 3);
   delay(1000);
   lightled(2, 1, 3);
   delay(1000);
   lightled(3, 1, 2);
   delay(1000);
   lightled(1, 3, 2);
   delay(1000);
   lightoff();
}

void loop() {
   while (analogRead(sig) > 300) {
      twinkle();
   }
}
Advertisements

6 thoughts on “Electronic Mural: Charlieplexing with Paper Circuits

  1. Thank you for sharing your code for the circuit sticker charlieplexing with paper circuits. I have also been experimenting with circuit stickers and ATtiny microcontrollers. I have a question for you regarding your sound sensor. Does your sound sensor sticker work when powered only by a coin cell battery? My sound sensor only works when the circuit sticker is plugged directly into a power source via my Arduino Uno. The lights twinkle beautifully on a coin cell battery, but the sound circuit sticker is not. I’d appreciate your insight.

  2. Katy, I discovered that my issue is a power issue. One coin cell battery isn’t enough to fully power the circuit, but two batteries does the trick. Once again, thank you for sharing your process and code.

    1. I’m glad you figured out your problem. I had similar problems with my mural: it worked fine when the microcontroller was powered through the Arduino I used to program it, but failed when I used an external power supply. For me, the solution was decreasing the resistance of the leads from the power supply to the circuit. The leads, in my case Bare Conductive paint, had such a high resistance that the circuit wasn’t getting any power. Moving the power supply closer to the circuit to decrease the length of the leads and making the leads wider decreased the resistance enough to get the circuit power. But the resistance of the painted leads was a constant struggle. What kind of ink are you using? Have you had this problem too?

      1. Thanks for the note about resistance. I have played with a Circuit Scribe pen (no conductive paint yet), but my preferred mediums are paper, copper tape, and conductive thread. I’ve been experimenting with these mediums in bookbinding projects, and I’m particularly interested in the idea of using paper circuits (programmed with ATtiny85) for “notebook hacking” (see nexmap.org). I love the sound sensor sticker. Thanks, again, for sharing your code and your model. Have you tried your hand at e-textiles yet? I’ve been doing a lot of experimenting with these as well.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s