Secret-Under-My-Skin is a performance that allows us to reflect on our natural necessity/desire to express our emotions, to share our innermost thoughts and to see them extended in the world. This project is sponsored by the Bundesamt fuer Kultur program Site/mapping. More information...

Monday, March 26, 2007

It must be my birthday today...



We're not in January but it must be my birthday today; I received two packages at the same time this evening! Here are the contents:

2 x 433MR Antenna
2 x Easy Radio Transceiver
1 x M32 Development Board
2 x 7.2V 3900mAh NiMH Battery Pack
1 x Battery Slow Charger

and

1 x The Art of Electronics (2nd Edition)

So many nice things to play with and a heavy book to study. Now it's time to work very hard.

Sunday, March 25, 2007

Morse Code 2



Okay, the same morse code program but now using skin contact to create the signals!

Morse Code



The morse code program works but as you can see in the video it takes a bit of time just to enter one word. The problem is that you have to wait each time before the letter appears...

Transferred Message: CHOCOLATE

Monday, March 19, 2007

Package contains: Chocolates and Toys



Came back home from a tiring day at work and I was greeted by a friendly package with the following contents!

35 x HCF4094 Shift Registers
50 x IC Sockets
1 x LCD Display
1 x Flat cable
1 x Cable connector male
5 x Cable connectors female
2 x Prototyping board
5 x Pin connectors
2 x Lindt Lindor chocolates
1 x Postcard from Barcelona

What more can one ask for in life?

Sunday, March 18, 2007

Progress Report 005



Made great progress this weekend!

I added the LCD display to the keyboard setup, now you can see what you are typing before you send it! I've also implemented the 'backspace' function so you can erase your mistakes. Something worth mentioning is that when you type, the characters appear from the right-side of the LCD display and shift to the left. It's set up this way because it made the program simpler: each key you type is added to the right-most position and everything is shifted to the left. Whereas if the characters start from the left-side I would have to move the 'cursor' to the right each time, until it is at the last position where additional characters would then start shifting everything to the left. Anyhow, if it really bothers you to have the characters start from the right, it can be changed; I just chose the fastest way for now.

In addition I've corrected the bug where if you press several keys quickly or at once it sends an unrecognisable character and blocks the keyboard. The problem was that I was reading the entire block of scan code for each character, including the break code. When several keys are pressed at once, their make codes are all sent before their corresponding break codes. This caused a problem in the original program (because I was reading both the make and break codes as a single unit), but now I simply ignore the break codes and it works fine.

See the videos below for the functioning LCD display and also the way the letters are shifted:


Transferred Message: LOOK IT IS WORKING NOW



Transferred Message: SO YOU SEE THE CHARACTERS SHIFT TO THE LEFT LIKE THIS

There's no greater sin than errors in the datasheet



Literally spent the entire evening just to make the LCD display turn on with a blank cursor! Why did it take so long? That's because there was an error in the datasheet! In the pin connection chart someone actually committed the sin of reversing the + and - pins! So no wonder the display wasn't powering up...thankfully reversing the polarity miraculously didn't fry anything. But I should have known to not trust the datasheet when I saw some handwritten comments scribbled on it...

Anyhow, the display is working now with a nice blank cursor waiting for a secret message to be written to it. To be continued tomorrow...

Sunday, March 11, 2007

Progress Report 004



As promised in the last post, this weekend I managed to implement the buffer and send function to the keyboard! So here's a breakdown of the process that is now working:

1. Type a message into the keyboard, each letter is sent to the first M32 where it is stored in a buffer.

2. Press 'Enter' and the first M32 sends the stored message to the second M32 using pwm (the connection between the two M32's is by touch [though in this video I physically wired them together for convenience]).

3. Second M32 sends each letter to the shift registers and then it is shown on the LED display.


The next step will be to add the LCD display to the keyboard so it's possible to see what you are typing before pressing send. I also have to implement the erase (backspace) key and the clear (stop sending) function. Finally I have to fix a bug where a letter can get 'lost' if two or more letters are pressed quickly (or almost at the same time).

Still a lot to do! And I'm running out of space on my desk!



Transferred Message: I HAVE A SECRET TO TELL

Thursday, March 8, 2007

Keyboard--->M32



Bought a 7€ keyboard and connected it to the M32. I programmed the Atmel with the old keyboard program and it works perfectly. The codes for the keys are exactly the same as the first keyboard that we used.

So I'll just have to GCC the code and optimise it. Then I'll add the keyboard buffer and the 'Send' command; it will send the key-codes to the other M32 using pulse-width modulation. By this weekend I'll be typing on the keyboard and transferring the letters by touch to the LED display!

Monday, March 5, 2007

Introduction

Hi! I just wanted to introduce myself into the history of this blog.

Valerie

Sunday, March 4, 2007

Progress Report 003



SUCCESS!

We can now transfer messages from one M32 to another using pulse-width modulation.

The sender M32 transmits a sequence of letters (each represented by an 8-bit code) using pwm. The receiver gets the sequence and immediately shifts the letters into the LED display. So I didn't do the Checksum, and in fact the sender doesn't even wait for a response from the receiver before sending. But all this can be added later.

The transfer occurs when I touch the two yellow wires and ceases when I let go (see photo/video).

Next step: the keyboard!



Transferred Message: I ATE ALL THE CAKES

Hello, it works!



I spent a lot of time today making the UART debugging terminal work. I was getting a lot of scrambled characters and so I tried changing the baud rate and tweaking the parameters. Nothing worked until I realised that the M32's were actually clocking at 8MHz instead of 16MHz! Apparently the default setting uses the internal 8MHz clock. Anyway, it works now.