We have to modify / customize the Attiny44 Serial Echo Board.
The file I made is for the ATTINY2313, assembler, because ATTiny44 was not in the lab, you can find this avr project at the end of this blog.
This is my plan:
I see four free pins on PORTA: PA0, PA1, PA2, PA3
Two pins will be used “talking” to the board using buttons: INPUT. I’ll use not the tiny electronic buttons but the big artificial fur buttons I used earlier.
The two other pins will be OUTPUT and steer two sound speakers.
Sound is generated making the PIN HIGH and LOW in a certain (changing) frequency.
The user pushes the buttons and generates 2 BIT input. Two times 2BIT is a CHAR. This CHAR is stored in EEPROM.
After a while, with a bit of high beeps, the board transfers the stored user INPUT to the computer using Serial; starting the GOSSIP.
In the computer this can be made visual with for instance FLASH, using SerialProxy. Then FLASH will be modifying this input, making the 0 bits “wider” and send the modified DATA back, the computer also adds some DATA, looking if the so produced CHAR is nonsense, if it is nonsense, it will tell the board that the user in fact is talking nonsense. The computer and the board are “talking” about the user and modifying the DATA sent. The added DATA represent a comment on the user’s behavior, so creating real GOSSIP between two electronic devices about a human user!
Needed for subroutines:
- button activation and loop use.
- generating sound
- writing to EEPROM
- reading from EEPROM and sending to Serial
- FLASH receiving the data, visualizing and modifying, sending it back.
- somehow in the board visualizing the comment….
I have milled the board, I have to solder the components. I have to add the buttons and the speakers and to modify the ASSEMBLY code. The next step is to make the same script in C.
Milling the board was one thing. But the ATTINY44 was not in the lab. We have to buy new ones. So I switched my plan to use a ATTINY2313.
I had to read another datasheet, because the ATTINY2313 has a different set of PORTS and less EEPROM and other memory.
I installed the ATTINY2313 on a breadboard:
The idea I put in the script was: two buttons when pushed or released making a code, a sort of a CHAR. Put this CHAR in the EEPROM. When EEPROM is written 10 times we want to send these codes to the computer.
But first of all, using a relais a toy ventilator with LED’s is lighted.
This is the effect after the EEPROM is released:
Send the EEPROM to the serial PORT. Catch the serial port in Serial Proxy and send it to FLASH.
Do something in FLASH, I did a ripple effect.
FLASH sends, depending on the code a request to a dataBase on my server.
In Second Life an object is also checking this server, this object will rezz an umbrella or a counting clock when the dataBase is set in a certain way.
This going from one “environment” to the other seems to be language and talking. Gossip on the other hand is transforming the data, making it more nice or more bad.
Gossip is analog, what we do in going from one environment to the other is digital. There teh analogy with “Gossip” is broken.
Assembly went well eventually. But the copy in C was to big to fit into the ATTINY2313 (?).
To program the ATTINY2313 I used the AVRISSP mkII programmer. I have ordered the parts for making this programmer from http://www.fischl.de
The AVR project file I made in assembly
presentation situation in Amsterdam: